检查登录用户数
当登录系统用户数超过3个报警,并发送邮件提示
首先,配置发送邮件功能。
1、安装mailx
[root@node1 ~]# yum install mailx
2、配置/etc/mail.rc
[root@node1 ~]# vim /etc/mail.rc
set from=xxx@163.com #发件人地址
set smtp=smtp.163.com #smtp服务器的地址
set smtp-auth-user=xxx #smtp服务器认证的用户名 也就是你开启smtp功能的邮箱的地址
set smtp-auth-password=123456 #外部smtp服务器认证的用户密码(注意是授权密码,不是登录密
码)
set smtp-auth=login
注意:等于号后面不能有空格,不然会一直发送不成功
3、测试发送邮件
[root@node1 ~]# echo 111 | mail -s "test" esen_monitor@tom.com
4、邮箱查看
5、判断当前登录用户数命令
[root@node1 ~]# who | wc -l
2
6、编写监控脚本
[root@node1 ~]# cat /server/scripts/check_users.sh
#!/bin/bash
total_user=`who | wc -l`
[ $total_user -gt 3 ] && echo "当前用户登录数: $total_user, 登录数大于3." | mail -s
"报警" esen_monitor@tom.com
7、添加计划任务
每隔5分钟检查一次。
[root@node1 ~]# crontab -l
*/5 * * * * sh /server/scripts/check_users.sh &> /dev/null