centos 6.8配置qq smtp邮件发送

没有域名严重的邮箱容易被服务器认为是垃圾邮件,所以在服务器中配置了qq邮件

yum install mailx

vi /etc/mail.rc

添加

set from=****@qq.com
set smtp=smtps://smtp.qq.com:465
set smtp-auth-user=***@qq.com
set smtp-auth-password=******
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/etc/pki/nssdb/

/etc/pki/nssdb/是服务器默认的证书位置,如果找不到的可以试试

locate -b "cert*.db"

发送一个测试邮件试试(可以自己给自己发邮件)

echo -e "test"|mail -s "title" ***@qq.com

然后你会发现邮件发送成功了,但是提示错误信息

Error in certificate: Peer's certificate issuer is not recognized

可以在在mail 后面加参数-v ,可以看到更详细参数
从字面意思就是qq的证书不被认可,折腾了半天,最后的解决办法如下

mdfind "kMDItemDisplayName=cert*.db"

找到证书数据库(其他系统使用各自的系统方法,此为mac)
复制该路径下db结尾的文件到服务器/root/.certs目录下,

/Users/ht/Library/Application Support/Firefox/Profiles/mskbf7dx.default/*.db

certutil -L -d /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
cd ..
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu"  -d ./ -i qq.crt 
echo -e "test"|mail -s "title" ***@qq.com

大功告成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值