我可以成功向 Gmail 或 Hotmail 帐户发送电子邮件,但无法发送类似 mail@specialdomain.com 的电子邮件地址。我在 CentOs 服务器上使用 exim。当我发送电子邮件时,我收到此错误:
SMTP error from remote mail server after MAIL FROM:<my@mail.com> SIZE=5598:
host example.com [XX.XXX.X.63]: 550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
我使用 587 端口进行 smtp。我应该在我的服务器或邮件配置上更改什么?
最佳答案
接收服务器对 HELO 字符串(以及其他发送服务器的设置)或多或少会严格 - 主要目的是打击垃圾邮件。一些措施可能包括:
- 拒绝 HELO 和 EHLO 提供的域已存在的连接 DNS 中既不是“A”记录也不是“MX”记录
- 当 HELO 或 EHLO 主机名未采用 RFC 要求的完全限定域或地址文字形式时,拒绝请求
- 检查主机是否具有与 EHLO 匹配的有效 RDNS
- 根据与 ISP 动态分配的各种名称相匹配的正则表达式列表检查主机名,例如 xxxx.dynamic.yyy.com 或 12-34-56-78.dsl.zzz.com
考虑到这一点,您的服务器很可能配置错误。错误消息非常准确:您的服务器提供的 HELO 名称不符合 RFC2821,因此接收服务器不会接受电子邮件。
首先检查您的服务器主机名,然后检查 EXIM 配置(可能是 /etc/exim/exim.conf
)并查看是否配置了 Primary_hostname 或 helo_data 值。
关于linux - SMTP(500 Access Denied) 错误,但我可以将邮件发送到 gmail 或 hotmail,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30450174/