前言
博主从好多年前开始用阿里云的邮件推送产品,本意是想绕过服务器使用SMTP发送邮件而暴露IP的问题。不过,前几天才发现部分访客的邮箱会导致系统推送邮件失败。
查看控制台
进入阿里云控制台-邮件推送控制台,找到数据统计-发送详情,右上角筛选出投递结果为失败的记录。

可以观察到只要是@outlook.com的邮箱就会产生报错日志:
错误描述:永久错误。请不要重试,根据对方返回信息确认具体的错误原因。
错误原因:550 5.7.1 Unfortunately, messages from [47.90.196.18] weren't sent.
Please contact your Internet service provider since part of their network is on our block list (S3140).
You can also refer your provider to http://mail.live.com/mail/troubleshooting.aspx#errors.
进过我的一番搜索,得出结论:阿里云的发信IP被微软屏蔽了。
查看帖子
于是我继续查找,翻到一条将近6年前的帖子:
这位老哥后来在帖子下面更新了情况,我注意到他说了使用了差不多10种免费邮箱也都出现了相同的问题。
焦虑不安
我似乎陷入了一种迷茫的状态,想着要换一款邮件推送。
腾讯云ESE邮件推送
我有想过更换到腾讯云的SES邮件推送服务,只不过他家不支持个人用户使用SMTP的方式发信。

阿里云邮件推送独立IP
这价格,我得不吃不喝多久才能攒够,关键是他还是按月卖的。
SendCloud
似乎风评很好,单日免费额度能来到200封,只不过是要发邮件申请。
发起工单
思虑再三,决定创建工单。经过《阿里云DNS解析的免费套餐要限速?快跑!》的事情后,我对阿里云的客服不是很抱希望,怕是这次又要敷衍了事。出乎意料,这次的相应速度很快,给出的解决方案也很到位。

很显然,问题出在了service@mail.imcry.vip采用的是批量邮件的类型,很有可能在发信的时候用到了垃圾的IP。
新增地址
再创建一个新的发信地址,类型选择触发邮件,其名为comments@mail.imcry.vip,配置SMTP密码。
设置Twikoo
进入邮件通知的配置页面,修改3个地方:
- SENDER_EMAIL
- SMTP_USER
- SMTP_PASS

点击保存,刷新页面。
验证效果
为了知道阿里云客服是不是在骗我,直接现场创建一个新的微软邮箱。
发送邮件
使用邮件通知测试功能,填入邮箱后点击按钮。
收到邮件
看这样子,像是真的。