linux用戶登陸檢測發送郵件提醒

       只要用戶一登陸成功,系統就會向系統管理髮一份郵件進行提醒。因爲沒有找到,最後利用了在/etc/profile.d/目錄的文件屬性:只要用戶登陸,就會執行此目錄下的全部shell腳原本初始化變量和用戶環境。
shell


       因此決定在這裏作爲突破口,寫一個腳本,關於當前用戶登陸時,就自動記錄當前用戶信息,以及當前系統登陸的用戶數,並自動發郵件,簡而言之,就是在/etc/profile.d/目錄里加上一個腳本,我命名爲logincheck.sh,下面就是內容:bash

#!/bin/bash
user=`whoami`
logon="$(who)"
#msg=`echo -e "#################### $user is login ok ##################\n$logon"`
#wall "${msg}"
#echo  ${msg} | mail -s " login $(hostname) alter " admin@qq.com
`echo -e "#################### $user is login at $(date) ##################\n\n\n$logon" | mail -s "someone want login your service: login on $(hostname) alter" admin@qq.com  2> /dev/null`


若是想在用戶退出的時候也發送郵件提醒就用vi ~/.bash_logout 來在這個文件裏添加下面的腳本內容就行:ide

# ~/.bash_logout
#!/bin/bash
user=`whoami`
logon="$(who)"
#msg=`echo -e "#################### $user is login ok ##################\n$logon"`
#wall "${msg}"
#echo  ${msg} | mail -s " login $(hostname) alter " admin@qq.com
`echo -e "#################### $user is login at $(date) ##################\n\n\n$logon" | mail -s "someone want loginout your service: login on $(hostname) alter" admin@qq.com  2> /dev/null
相關文章
相關標籤/搜索