您的位置:首页 > 运维架构 > Shell

使用邮件监控ssh登陆用户shell脚本

2011-12-13 12:35 736 查看
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar xvf sendEmail-v1.56.tar.gz

mv sendEmail-v1.56 sendEmail

vi /etc/ssh/sshrc

#!/bin/sh

user=$USER

ip=${SSH_CLIENT%% *}

if [ "$user" != "root" ] || [ "$ip" != "192.168.2.88" ]

then

/home/shell/sendEmail/sendEmail -f XXX@XXX -t XXX@XXX -s smtp.XXX -u "查看谁登陆###192.168.2.4###" -xu USER -xp PASSWD -m "###time:`date +%Y-%m-%d`###.###user:$USER@`hostname`###.###ClientIP:${SSH_CLIENT%% *}###"

fi

chmod +x /etc/ssh/sshrc

###############简单讲解####################

$USER获取到系统登陆通过ssh的用户名

${SSH_CLIENT%% *}取到系统登陆通过ssh的用户名的IP

if [ "$user" != "root" ] || [ "$ip" != "192.168.2.88" ]使用或来判断来源,是否发邮件报警

###########################################

测试:

1 使用root并且IP为192.168.2.88,看是否发邮件报警





测试结果是:没有邮件报警

2 使用root并且IP为192.168.2.87,看是否报警





测试结果是:邮件发送报警

查看邮箱:





这个脚本对于ssh安全监控非常有用,系统非法登陆都可以时时了解情况,及时保护服务器安全
本文出自 “游造技术博客” 博客,转载请与作者联系!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: