俄罗斯服务器上无法通过 SMTP 服务发送邮件

更新日期: 2019-11-12 阅读次数: 413 字数: 490 分类: 服务器

在部署俄罗斯服务器时,发现无法连接国内的邮件服务器 smtp.mxhichina.com 发送邮件。报错信息为:

SMTP connect() failed.

smtp.mxhichina.com 使用的端口

参考阿里的文档:http://mailhelp.mxhichina.com/smartmail/detail.vm?knoId=5871700

SMTP smtp.mxhichina.com 25 465

测试邮件端口连通性

telnet smtp.mxhichina.com 25
telnet smtp.mxhichina.com 465

测试结果:

$ telnet smtp.mxhichina.com 25
Trying 205.204.101.152...
telnet: connect to address 205.204.101.152: Connection refused

果然无法联通。而在其他服务器上正常:

# telnet smtp.mxhichina.com 25
Trying 42.120.226.4...
Connected to smtp.mxhichina.com.
Escape character is '^]'.

跟服务器提供商扯皮

俄罗斯服务器提供商,以俄罗斯跟国内网络不稳定为由不建议使用国内的邮件服务。。。

这明显是端口没有开放的问题。我 top 了一下,居然发现这是个 32 核的机器,显然是一个多人共用的服务器。。。这就难怪了怎么说他也不给开放邮件服务端口。

不靠谱的 Mailgun

不得以要改用基于 http 的邮件发送 API,于是注册了 Mailgun。注册完之后,直接被禁用账号。。。

{
  "message": "Account disabled"
}

Your account is temporarily disabled. ( Account disabled ) Please contact support to resolve.

得了,惹不起,换服务。

阿里云 API 发送邮件

https://help.aliyun.com/document_detail/29460.html?spm=a2c4g.11186623.6.633.14c935f2BmDFkd

费用 1000 封,2 元。

费用很合理,但是我用 PHP 愣是没有调用成功官方的 SDK 。。。

Class 'DefaultProfile' not found

还是使用转发方案吧

不得已,我换了个方案,将俄罗斯服务器的邮件,转发到美国,然后再发送到自己邮箱。

太折腾了。。。

俄罗斯服务器替代方案

经过这件事,我感觉目前使用的俄罗斯服务器提供商非常不靠谱,得找个替代方案。

暂时看,阿里云,亚马逊都没有俄罗斯境内的机房,抽空再调研一下。

爱评论不评论

近期节日

2019年12月09日 "一二九"运动纪念日
2019年12月09日 世界足球日
2019年12月10日 世界人权日
2019年12月12日 西安事变纪念日
2019年12月13日 南京大屠杀
2019年12月20日 澳门回归日
2019年12月21日 国际篮球日
2019年12月22日 冬至
2019年12月24日 平安夜
2019年12月25日 圣诞节
查看更多节日