linux 系统用户登录实时检测通知

  今天研究了一下rsync+inotify 进行实时备份的东西,想想也可以实现用户登录实时通知的。

  只用用户一登录成功,系统就会向系统管理发一份邮件进行提醒。由于没有找到,最后利用了在/etc/profile.d/目录的文件属性:只要用户登录,就会执行此目录下的所有shell脚本来初始化变量和用户环境。

  所以决定在这里做为突破口,写一个脚本,关于当前用户登录时,就自动记录当前用户信息,以及当前系统登录的用户数,并自动发邮件。

  脚本logincheck.sh如下:

  #!/bin/bash

  user=`whoami`

  logon="$(who)"

  #msg=`echo -e "#################### $user is login ok ##################
$logon"`

  #wall "${msg}"

  #echo  ${msg} | mail -s " login $(hostname) alter " root@long.com

  `echo -e "#################### $user is login at $(date) ##################

$logon" | mail -s "login on $(hostname) alter" administrator@long.com 2> /dev/null`

  现在,就见证奇迹发生的时候吧!

  用admin 用户登录, 立即收到了通知的邮件

  wKioL1MgYieRl5z4AAKwhqy5Ys4401.jpg

  我这里只有两个用户登录,所以结果是这样。

  当然,还有对用户的身份进行判断,不同用户处理有不同的通知方式等等。

 

上一篇:安卓防火墙 PS DroidWall

下一篇:对国内电影站入侵的各种手法