1、安装mailx
2、vi /etc/mail.rc,追加一下内容:
set from=44XXX4902@qq.com
set smtp=smtps://smtp.qq.com:465
set smtp-auth-user=44XXX4902@qq.com
set smtp-auth-password=lmXXXsylsppwbgcf
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs
3、执行一下6句:
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne ‘/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p‘ > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.cert
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
4、写脚本
#!/bin/bash
MAIL="4450XX902@qq.com 5962XX917@qq.com"
for ip in $(cat ip_list|sed "/^#/d") #ip_list是当前目录下IP表
do
ping -c 1 $ip &>/dev/null #三个ping有一个能通,说明服务器正常
a=$?
sleep 2
ping -c 1 $ip &>/dev/null
b=$?
sleep 2
ping -c 1 $ip &>/dev/null
c=$?
sleep 2
DATE=$(date +%F" "%H:%M)
if [ $a -ne 0 -a $b -ne 0 -a $c -ne 0 ];then
echo -e "Date : $DATE\nHost : $ip\nProblem : Ping is failed\n@Mr.long." | mailx -s "Server port failed : $ip " $MAIL
#else
# echo "$ip ping is successful."
fi
done