You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

OVH企业邮箱自动发送邮件遇SMTPAuthenticationError(535)问题排查求助

解决OVH企业邮箱SMTP认证失败(535错误)的问题

我来帮你排查这个困扰你的问题——你遇到的smtplib.SMTPAuthenticationError: (535, b'5.7.3 Authentication unsuccessful')本质是OVH的SMTP服务器拒绝了你的登录请求,虽然你确认账号密码正确,但OVH企业邮箱有几个特殊的配置要求,咱们一步步来解决:

1. 先修正代码里的两个明显错误

首先看你的代码里sendmail的调用:

mailserver.sendmail(people, people, msg.as_string())

这里第一个参数应该是发件人邮箱(也就是你的mymail),而不是收件人!正确写法是:

mailserver.sendmail(mymail, people, msg.as_string())

Gmail可能对这个参数校验比较宽松,但OVH的SMTP服务器很可能因为发件人参数不匹配拒绝认证,先把这个改过来。

另外,你的发件人邮箱地址写的是"name.@watchelp-app.com",多了一个多余的点,应该是"name@watchelp-app.com",这个笔误也会直接导致认证失败,一定要修正!

2. 核对OVH的SMTP服务器配置细节

你当前用的pro2.mail.ovh.net和587端口是OVH企业邮箱的标准配置,但还是建议你登录OVH管理后台,找到对应邮箱账户的SMTP设置页面,确认以下信息:

  • 确认SMTP服务器地址是否匹配你的套餐(部分特殊套餐可能用ssl0.ovh.net
  • 端口是否正确:587是STARTTLS端口(对应你代码里的starttls()调用),如果换成465端口则需要用smtplib.SMTP_SSL()初始化服务器,不能再调用starttls()
  • 确保你的账户没有被禁用POP/IMAP/SMTP服务(有些企业账户默认会关闭这些服务,需要手动开启)

3. 检查OVH的安全限制规则

OVH企业邮箱为了安全,有几个常见限制会导致认证失败:

  • 应用专用密码:如果你的邮箱开启了两步验证,必须使用应用专用密码代替主密码登录SMTP;即使没开两步验证,部分OVH套餐也要求自动化工具使用应用密码。你可以在OVH后台的账户安全设置里生成一个应用密码,替换脚本里的password试试。
  • IP白名单:很多企业邮箱会只允许指定IP地址登录SMTP服务,如果你的脚本运行机器的公网IP不在白名单里,服务器会直接拒绝认证。需要登录OVH后台,把当前机器的公网IP添加到邮箱账户的IP白名单中。
  • 登录方式限制:有些企业账户会禁止“非浏览器”的登录请求,你需要在后台调整安全设置,允许SMTP客户端登录。

4. 手动测试SMTP连接(可选)

如果以上方法都没解决,你可以用openssl手动测试SMTP连接,定位具体失败环节:
在终端运行:

openssl s_client -connect pro2.mail.ovh.net:587 -starttls smtp

然后按照提示输入以下命令(替换成你的邮箱和密码,密码需要Base64编码):

EHLO yourdomain.com
AUTH LOGIN
# 输入你的邮箱的Base64编码
# 输入你的密码的Base64编码

如果这一步也报错,就能直接看到OVH服务器返回的具体错误信息,帮你更快定位问题。

内容的提问来源于stack exchange,提问作者pgmendormi

火山引擎 最新活动