由于阿里云默认将目的端口为TCP25的出现流量屏蔽了,因此改用465 ssl端口发送邮件mysql
下面步骤注意更更名字,密码,目录等,不须要增长安全组任何端口。大体步骤复制粘贴必定成功sql
[root@db ~]# yum install -y mailx
[root@db ~]# vim /etc/mail.rc
设置发件人信息shell
..... set from=wushuting@kting.cn set smtp=smtps://smtp.exmail.qq.com:465 set smtp-auth-user=***ting@kting.cn set smtp-auth-password=*** set smtp-auth=login set ssl-verify=ignore set nss-config-dir=/root/.certs
set smtp=smtps:设置发送邮件的服务器端口,若是非企业邮箱去掉exmail
set smtp-auth-password:设置qq企业邮箱受权密码
set ssl-verify:忽略ssl检查
set nss-config-dir:指定证书所在的目录vim
[root@db ~]# mkdir .certs安全
向qq企业邮箱申请证书
[root@db ~]# echo -n | openssl s_client -connect smtp.exmail.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > .certs/qq.crt
[root@db ~]# certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
[root@db ~]# certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crtbash
列出目录下的证书
[root@db ~]# certutil -L -d ~/.certs/
[root@db ~]# cd .certs/服务器
标记证书
[root@db .certs]# certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt网络
[root@db ~]# echo "test" | mail -s 'test' ***ting@kting.com工具
我写了一个简单的mysql全备shell脚本,经过mailx调用通知阿里云
#!/bin/bash PWD="***" LOG_FILE=/root/crontab/backup.log BAKDIR=/store/backup MAIL_USER=***ting@kting.cn DATE=`date '+%Y%m%d_%H-%M-%S'` #清空输出日志 > $LOG_FILE function bakstart { #开始备份 local DATE DATE=`date '+%Y%m%d_%H-%M-%S'` echo "$DATE backup database start!" >> $LOG_FILE /data/server/mysql/bin/mysqldump -uroot -p${PWD} --opt --default-character-set=utf8 --all-databases > $BAKDIR/mysql_all_$DATE.sql if [ $? == 0 ];then echo "size:`du -sh $BAKDIR/mysql_all_$DATE.sql | awk '{print $1}'`" >> $LOG_FILE #结束备份,压缩备份 cd $BAKDIR gzip $BAKDIR/mysql_all_$DATE.sql if [ $? == 0 ];then return 0 else return 1 fi else return 2 fi } #返回值输出信息 bakstart case $? in 0) echo "`date '+%Y%m%d_%H-%M-%S'` backup database stop!" >> $LOG_FILE ;; 1) echo "gzip faile!" >> $LOG_FILE ;; 2) echo "database backup faile! check $BAKDIR" >> $LOG_FILE ;; esac #拷贝日志,邮件发送日志 cp $LOG_FILE{,-$DATE} mail -s 'database mail' $MAIL_USER < $LOG_FILE
转载于网络进行整理,望采纳