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
相关文章
相关标签/搜索