第一步解决办法
参照 https://blog.csdn.net/m0_37897662/article/details/118307025
添加完之后试一下看看能不能解决你的问题,如果可以,那恭喜你,不需要继续往下看了。
第二步解决办法
如果上面那一步没有给你解决问题,那你很可能去网上找了一圈,你可能看到了下面这些文章:
1. http://azuredummies.com/2016/06/21/451-5-7-3-starttls-is-required-to-send-mail-office-365/
2. https://www.blackforce.co.uk/2014/04/16/office-365-451-4-4-0-primary-target-ip-address-responded-with-451-5-7-3-starttls-is-required-to-send-mail
emmmm....好像也没有答案,不过,等等
后来我按照第二个链接,手动执行了一下命令,然后就发现可以了,就是这么的神奇
操作步骤如下:
1. 在服务器上安装 telnet,然后执行 telnet xxxxxxxx xxx --前面一个是 smtp服务器,后面一个是端口,然后会进入到命令行模式
2. 然后执行 mail from: xxx@xxx.com --此处蓝色的应该为你的发件邮箱,不出意外你还能看到如下提示:
451 5.7.3 STARTTLS is required to send mail
3. 然后你再执行一下 rcpt to: xxx@xxx.com --此处蓝色的应该为你的发件邮箱,尽然出现如下:503 5.5.2 Send hello first ,你快要成功了
4. 继续输入第 2 步的命令,发现打印出:
503 5.5.2 Send hello first
现在就可以了
第三步解决办法
试来试去还是不行,可以重新建立 ssh 连接看看
如果实在解决不了,换个邮箱吧,qq 邮箱就挺好使.
不要问我原因,我不知道为什么,我猜测是O365服务的问题,如果你成功了,麻烦留个评论,让我知道我不是一个人在踩坑