主题: 报错Helo command rejected: Host not found

==== 必填信息。没有填写将不予回复 ====
- iRedMail 版本:0.9.8
- 使用的 Linux/BSD 发行版名称及版本号:Ubuntu 18.04.1 LTS
- 与您的问题相关的日志信息:
====

求助,邮件服务器是从旧版刚升级到最新版,以前客户的邮件是可以正常发送过来的,升级后一直出现报错,邮件服务器一直拒收,导至无法接收客户邮件,部分日志如下:

Aug 22 21:27:15 mail postfix/smtpd[17093]: connect from unknown[218.24.167.29]
Aug 22 21:27:15 mail postfix/smtpd[17093]: Anonymous TLS connection established from unknown[218.24.167.29]: TLSv1 with cipher AES128-SHA (128/128 bits)
Aug 22 21:27:15 mail postfix/smtpd[17093]: NOQUEUE: reject: RCPT from unknown[218.24.167.29]: 450 4.7.1 <DLIDCHBSVR5.aeonlife.com.cn>: Helo command rejected: Host not found; from=<lichengjian@aeonlife.com.cn> to=<Shuanglu01@i-confluence.com> proto=ESMTP helo=<DLIDCHBSVR5.aeonlife.com.cn>
Aug 22 21:27:15 mail postfix/smtpd[17093]: NOQUEUE: reject: RCPT from unknown[218.24.167.29]: 450 4.7.1 <DLIDCHBSVR5.aeonlife.com.cn>: Helo command rejected: Host not found; from=<lichengjian@aeonlife.com.cn> to=<scottjiao@i-confluence.com> proto=ESMTP helo=<DLIDCHBSVR5.aeonlife.com.cn>
Aug 22 21:27:16 mail postfix/smtpd[17093]: disconnect from unknown[218.24.167.29] ehlo=2 starttls=1 mail=1 rcpt=0/2 quit=1 commands=5/7
Aug 22 21:27:16 mail postfix/postscreen[15775]: CONNECT from [181.214.206.123]:65062 to [192.168.202.40]:25
Aug 22 21:27:16 mail postfix/dnsblog[15777]: addr 181.214.206.123 listed by domain zen.spamhaus.org as 127.0.0.4
Aug 22 21:27:16 mail postfix/postscreen[15775]: DNSBL rank 3 for [181.214.206.123]:65062
Aug 22 21:27:16 mail postfix/postscreen[15775]: DISCONNECT [181.214.206.123]:65062

在官网上找到一个方法如下:

Helo command rejected: Host not found

Sample error message in Postfix log file:

    Aug 13 08:07:14 mail postfix/smtpd[8606]: NOQUEUE: reject: RCPT from mta02.globetel.com.ph[120.28.49.114]: 450 4.7.1 : Helo command rejected: Host not found; from=tcadd01@globetel.com.ph to=user@example.com proto=ESMTP helo=

Postfix does DNS query to verify whether A type of DNS record of HELO domain name mta02.globetel.com exists, if not, Postfix rejects the email.

As a temporary solution, you can whitelist this HELO hostname by adding a line like below at the top of file /etc/postfix/helo_access.pcre (Linux/OpenBSD) or /usr/local/etc/postfix/helo_access.pcre (FreeBSD):

/^mta02\.globetel\.com$/ OK

按照上面的提示,把客户地址加进去了,然后确实从日志上没看到报错了,但是问题来了,邮件没有收到,服务器又没有报错日志,这是什么原因呢?客户之前发的邮件去哪了呢?求大神帮帮忙,小弟先谢过了。

回复: 报错Helo command rejected: Host not found

之前拒收的邮件没有进入你的服务器的邮件队列,所以用户必须重新发送(用户应该已经收到他自己的邮件服务器的通知,告知邮件被拒收了)。

回复: 报错Helo command rejected: Host not found

问题解决了,除了按照官网上的做法,为了保险我还是增加了一步操作,
在 /etc/postfix/main.cf   注销了 reject_unknown_helo_hostname
测试邮件已通过,能正常接收邮件了。