已qq为例
首先登录qq邮箱开启smtp服务并且拿到授权登录密码
然后编辑 /etc/mail.rc
添加配置
set from= #授权登录的邮箱账号
set smtp=smtps://smtp.qq.com:465 #邮箱服务商地址
set smtp-auth-user= #授权登录的邮箱账号
set smtp-auth-password= #授权密码
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs
背景:由遇到的问题1,和问题2可知阿里云服务器关闭了25端口,发送邮件才会显示链接超时,而且官方不允许打开该端口,而且大部分邮件都是通过25端口
详细的可以查看:常见邮箱端口
所以除了换邮箱之外(端口不是25的,要么是国外不好申请,要么收费,我们摸摸口袋…)
言归正传,我们以网易163邮箱为例,使用SSL下的465端口。
正文:具体操作如下
一、请求数字证书
依次完成以下命令
mkdir -p /root/.certs/ ####创建目录,用来存放证书
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt ####向163请求证书
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt ####添加一个SSL证书到证书数据库中
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt ####添加一个Global 证书到证书数据库中
certutil -L -d /root/.certs ####列出目录下证书
测试
echo “test” | mail -s “zabbix” xxxxxxx@qq.com
如果提示证书不被信任
按以下命令依次输入
cd /root/.certs/
ll
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt