要求:
每分钟监测系统登陆用户的总数,如果超过3人,则发邮件给管理员报警;
操作流程:
第一步、查看当前登陆的用户数量;
who | wc -l
##译为:查看当前登陆系统的总数;
第二步、运用vim文本编辑器,创建一个shell脚本文件,进行条件判断,当登陆系统的用户数量超过3个时,则发送邮件给管理员;;
vim /user.sh
##译为:运用vim创建一个名为list.sh的脚本文件,放到根目录下;
x=`who | wc -l`
##译为:为 x 这个变量名赋值为:`who | wc -l` ;
[ $x -ge 3 ] && echo 警告,有外人入侵系统 | mail -s test root
##译为:当变量 $x (也就是当前登陆用户) 大于等于3时,则echo输出 “警告,有外人入侵系统” ,并把这句话用邮件发送给管理员;
第三步、配置周期性计划任务;
crontab -e -u root ( 编写周期性任务的命令 )
* * * * * bash /list.sh
##译为:每分,每时,每天,每月,每周都执行一次这 bash /list.sh 条命令;
crontab -l -u root ( 查看周期性任务命令)
* * * * * bash /list.sh
最后,验证脚本是否成功。
mail 查看邮件
当登陆用户等于或者超过3个时,5分钟后,输入 mail 应该会出现下面这种情况:
[root@server0 ~]# mail
Heirloom Mail version 12.5 7/5/10. Type ? for help.
"/var/spool/mail/root": 134 messages 131 unread
1 root Wed Mar 6 11:34 19/621 "test"
>U 2 root Wed Mar 6 11:39 19/620 "test"
U 3 root Wed Mar 6 11:40 19/620 "test"
U 4 root Wed Mar 6 11:41 19/620 "test"
U 5 root Wed Mar 6 11:42 19/620 "test"
以上.....
祝:开心!
罗贵
2019-03-06于深圳









网友评论