阿里云屏蔽25端口通过465端口发送邮件(zabbix邮件配置)

买了一台阿里云ECS 准备做nagios监控邮件报警,发现25号端口被屏蔽了,申请开通也失败,然后只能绕过25号端口,走465 ssl端口发邮件了。
步骤如下:

原文连接地址:https://www.cnblogs.com/harlanzhang/p/9109840.html

注意点:如果你们用的是企业邮箱,请改正一下你的邮箱smtp的地址;
如:我的企业邮箱的smtp是:mxhichina
阿里云屏蔽25端口通过465端口发送邮件(zabbix邮件配置)
首先请求数字证书
root@PLAY ~]# mkdir -p /root/.certs/ ####创建目录,用来存放证书
[root@PLAY ~]# echo -n | openssl s_client -connect smtp.126.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/126.crt ####向126请求证书

depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA
verify return:1
depth=1 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = GeoTrust RSA CA 2018
verify return:1
depth=0 C = CN, L = Hangzhou, O = "NetEase (Hangzhou) Network Co., Ltd", OU = Mail Dept., CN = *.126.com
verify return:1
DONE

[root@PLAY ~]# certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt ####添加一个证书到证书数据库中
[root@PLAY ~]# certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/126.crt ####添加一个证书到证书数据库中
[root@PLAY ~]# certutil -L -d /root/.certs ####列出目录下证书

Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI

GeoTrust SSL CA C,,

我的   vim /etc/mail.rc    文件中的配置:

阿里云屏蔽25端口通过465端口发送邮件(zabbix邮件配置)

然后前往126邮箱打开smtp并获取客户端授权码

网页正上方:设置→POP3/SMTP/IMAP

网页左侧:客户端授权密码

最后配置/etc/mail.rc
set bsdcompat
set from=test_wly@126.com
set smtp=smtps://smtp.126.com:465
set smtp-auth-user=test_wly@126.com
set smtp-auth-password=*****
set smtp-auth=login
set ssl-verify=ignore
set nss-config-dir=/root/.certs

现在发送测试邮件

echo "test mail" | mail -s "nagios report" test_wly@126.com
此时test_wly@126.com收件箱就收到一封刚刚发的邮件了

看起来已经成功了,但是发送完邮件还有报错:证书不被信任,且命令行就此卡住,需要按键才能出现命令提示符

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

于是
[root@PLAY ~]# cd /root/.certs/
[root@PLAY .certs]# ll
total 80
-rw-r--r-- 1 root root 1793 Jul 6 14:36 126.crt
-rw------- 1 root root 65536 Jul 6 14:37 cert8.db
-rw------- 1 root root 16384 Jul 6 14:37 key3.db
-rw------- 1 root root 16384 Jul 6 14:37 secmod.db
[root@PLAY .certs]#certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 126.crt
Notice: Trust flag u is set automatically if the private key is present.

问题解决

当你可以发邮件的时候,我又遇到了一个坑,下面直接上截图:
明明显示已送达,但是我的邮箱就是收不到邮件。
阿里云屏蔽25端口通过465端口发送邮件(zabbix邮件配置)
最后查看日志,发现报错;

 Error initializing NSS: Unknown error -8015.
. . . message not sent.

找了一下度娘; 原文连接地址:https://www.blogxiaoming.com/2018/05/09/206/
使用465端口发送邮件和相关报错解决
2018年5月9日
如何使用465端口发送邮件
今年阿里云的VPC网络无法使用25号端口进行邮件发送,解封以后如果发现还是会被封堵并且无法再解封。 所以各种邮件报警走要走smtps465端口。
这篇文章详细说明了如何使用465端口和mailx发送邮件。

https://www.cnblogs.com/yunweis/p/8149242.html
465发送邮件报错解决
使用465发送邮件的时候,脚本报错了。 报错如下

Error initializing NSS Unknown error -8015.
但是手动发送就不报异常,并且可以收到邮件。如:

echo 123 | mail -s "123123" 18710112635@163.com
后来发现以root用户就可以发送,其他用户不行。 (由于上面的文章介绍,生成的证书目录放在了root下,这样会导致其他用户没有可读和执行权限)
解决办法是 将证书文件目录:certs/ 移动到一个755权限的地方即可。如/etc下 一定要保证其他用户有读取和执行的权限,否则其他用户无法发送邮件。
上边已经说的非常详细了,是权限问题:

cp  -a  /root/.certs   /tmp 
chmod 777 -R /tmp

再次测试发送邮件,我去,可以了。
阿里云屏蔽25端口通过465端口发送邮件(zabbix邮件配置)

转载于:https://blog.51cto.com/11520242/2166728

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值