We are running more than 600 Ubuntu systems in our company. It is a data centre so we have certain policies. We have disabled the usage of storage devices in all the Ubuntu systems. However we would like to configure email alerts. If someone inserts storage devices, we should get an email Alert with subject as below,
Email Alert:
STORAGE DEVICE FOUND on IP: 172.29.35.18
Note:
- Where as for Windows system, we have certain policies applied in our DC. So there is no problem with Windows system.
- We need to receive alerts for Ubuntu system also. Any way to accomplish the above task would be great.
Update:
- Few things i would like to clarify, If the user disconnects the network cable and if the user uses usb for data transfer? I know that i wont get any intimations but later if they connect network is it possible to get those pending notifications??
- Some uses usb for charging their mobile phones, is it possible get email notifications for that also??
The way to do this is to use a udev rule which will apply to all USB storage devices from any manufacturer. For the email part, note that Ubuntu Desktop does NOT include any command-line email client, so unless you wish to install one, the notification script should communicate directly via raw SMTP commands to your local mail server.
You can use Cuttlefish ( https://apps.ubuntu.com/cat/applications/cuttlefish/ )!
Cuttlefish is a program that can perform actions when events occur. For example, you can run a command when a USB is plugged in:
How to work with Cuttlefish:
Activated by stimulus
, and click onNone
so as to select a stimulus:Hardware
and on the rightUSB device plugged in
. Then click OK.I assume that you know a command which you can use in order to send your email. If not, please post it as a comment so as to include it into my answer.
As per this answer, add this code to
/etc/udev/rules.d/90-local.rules
and in the
usb.sh
file , add this codesource
Now i am gonna try to automate it, so you can add this rule/script in 600 Ubuntu systems.
This script is not tested, and the automating process will be improved.
As soon as I set up some test PC's.
You'll be able to see any new usb device that does not only grab the power of the server (witch normally includes the phones)
For the USB part : How can I listen for 'usb device inserted' events in Linux, in Python?
Sending an e-mail in python : email - Python - How to send utf-8 e-mail?
For the ethernet use netplugd and use the up or down statements :
Ubuntu Manpage: netplugd -- network cable hotplug management daemon