Could not connect to SMTP host:smtp.exmail.qq.com,port:25) 报错解决

首次是网易邮箱本地能发送邮件 部署在服务器上后就不能发送Could not connect to SMTP host:smtp.exmail.qq.com,port:25) 报错信息

头次分析本地qq邮箱发送邮件默认端口为587给网易邮箱设置的端口为25

这就导致了报错以上信息

经过盘查问题 是因为阿里云也不限于阿里云 很多云服务器都禁止了25端口

1.再将网易邮箱端口设置为465加密端口 报错信息

Could not connect to SMTP host:smtp.exmail.qq.com,port:465)

2.将邮箱发送器注释掉重新编写以Properties类来发送邮件

3.经测试还是报错465端口 将linux服务器上按照mailx、sendmail、dos2unix

yum -y install mailx sendmail dos2unix

4.修改mail.rc文件

vim /etc/mail.rc

5.创建证书目录

# mkdir -p /root/.certs/ # 创建目录

6.请求证书

# echo -n | openssl s_client -connect smtp.163.com:465 | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/163.crt

7.添加证书到数据库

# certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt

# certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/163.crt

# certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 163.crt

8.查看证书

# certutil -L -d /root/.certs

9.测试邮件 第一个test内容 第二个test标题

# echo "test" | mail -s "test" xxxxxxxx@qq.com

10.经测试后Linux服务器上可以发送邮件

部署上服务器的服务还是不行 报错信息还是和以前一样,这是为什么?

重新盘查问题 465是加密端口 但是代码properties并没有写加密

加入加密后:

还是报一样的错 排查服务器、端口、是否加密后还是没解决

最后通过指定协议 如果是在jdk中删除此协议应该也能解决问题加入此行代码 成功解决问题

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

秋风揽清河

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值