先来看看博主的演示
邮件的:
短信的:
1、首先来配置发件环境,这里介绍CentOS
yum install perl-IO-Socket-SSL perl-Net-SSLeay -y wget http://www.dwhd.org/wp-content/uploads/2015/07/sendEmail-v1.56.tar.gz -O /tmp/sendEmail-v1.56.tar.gz cd /tmp tar xf sendEmail-v1.56.tar.gz mv sendEmail-v1.56/sendEmail /usr/local/bin/ chmod +x /usr/local/bin/sendEmail && cd wget http://stedolan.github.io/jq/download/linux64/jq -O /usr/local/bin/jq chmod +x /usr/local/bin/jq
2、然后配置报警邮件
wget http://www.dwhd.org/script/WarringLoging.sh -O /etc/WarringLoging.sh chmod +x /etc/WarringLoging.sh #echo "screen -fa -d -m -S WL /etc/WarringLoging.sh" >> /etc/profile #第一种方法,新开终端复制终端都会报警 #echo -e "#!/bin/bash\nbash /etc/WarringLoging.sh" >> /etc/ssh/sshrc #第二种方法,只有ssh登录才会报警 #上面两种方法任选一个都可以
3、最后编辑收发邮件的信息
vi /etc/WarringLoging.sh
4、下面是报警邮件脚本
#!/bin/bash ######################################################################### # File Name: WarringLoging.sh # Author: LookBack # Email: admin#dwhd.org # Version: # Created Time: Wed 22 Jul 2015 01:41:09 AM CST ######################################################################### eval `curl -s "http://ip.taobao.com/service/getIpInfo.php?ip=${SSH_CLIENT%% *}" | jq . | awk -F':|[ ]+|"' '$3~/^(country|area|region|city|isp)$/{print $3"="$7}'` EMAIL=`which sendEmail` FEMAIL="admin#dwhd.org" #发件邮箱 MAILP="MzU0ODZjOWI0MWU3" #发件邮箱密码 MAILSMTP="smtp.dwhd.org" #发件邮箱的SMTP MAILT="393411264#qq.com" #收件邮箱 MAILmessage="登入者IP地址:${SSH_CLIENT%% *}\n\ IP归属地:${country}_${area}_${region}_${city}_${isp}\n\ 被登录服务器IP:$(curl -s ip.cn| grep -Eo '([0-9]{1,3}[\.]){3}[0-9]{1,3}')" $EMAIL -q -f $FEMAIL -t $MAILT -u "您服务器有人登录SSH" -m "$MAILmessage" -s $MAILSMTP -o message-charset=utf-8 -xu $FEMAIL -xp $MAILP
2015年7月23日 上午11:28 1F
真不错 又长见识了
2015年7月23日 下午4:24 1B
@ 武奎 常回家看看
2015年8月31日 下午11:08 2F
受教了!