我使用兩個進出口的發送和中繼主機,發送主機似乎提供:如何解決「501句法無效的HELO參數」?
HELO foo_bar.example.com
響應:
501 Syntactically invalid HELO argument(s)
我使用兩個進出口的發送和中繼主機,發送主機似乎提供:如何解決「501句法無效的HELO參數」?
HELO foo_bar.example.com
響應:
501 Syntactically invalid HELO argument(s)
下劃線在互聯網主機名中並不實際有效,儘管有人仍在使用它們。一個理智的DNS服務器不應該允許你爲它們記錄。
更改您系統的主機名稱,使其有效,希望這可以解決它。
HELO
的參數應該是主機名或IP地址。 foo_bar.example.com既不是IP地址也不是主機名(下劃線在主機名中是非法的),所以錯誤信息是正確的,沒有什麼可解決的。
使用qmail我碰到過這個問題。我意識到這是因爲以前未完成的安裝。
1)當發送電子郵件的qmail宣佈自己與其他SMTP服務器「HELO ...」,然後在增加什麼是文件:/var/qmail/control/me
(有時文件位於/var/qmail/control/helohost
)
2)這個文件應該有一個有效的DNS條目的主機名。
礦沒有它有(none)
這就是爲什麼郵件都無法發送。
花了這麼多小時試圖解決這個問題後,在我的情況下,從無到有,我最終提出了一個解決方案。就我而言,只有部署到Suse OS的系統突然停止發送電子郵件,但不會運行在Ubuntu上的那些(相同)。在耗盡並消除了所有建議的possibilities這個問題,甚至考慮改變這些機器的操作系統後,我發現發送郵件服務對於主機的主機名是明智的。在Ubuntu機器的文件/ etc/hosts中只有以下行:
127.0.0.1 localhost
等人的Suse的機器,停止發送電子郵件。從編輯的Suse機/ etc/hosts來
127.0.0.1 localhost proplad
其中proplad是機器的主機名後,錯誤是消失了。似乎某些安全策略(可能來自smtp服務)使用通過API傳遞的主機名信息,在Ubuntu機器中忽略這些信息,但在Suse機器中則不會。希望這可以幫助其他人,避免在互聯網上進行大量的研究。
Diago的回答幫助我解決了我一直在想的問題。
我們的Suse OS也停止了工作。嘗試了我在這裏和谷歌上找到的每一條建議。沒有工作。試圖添加我們的域名到etc/hosts但是沒有幫助。
通過hostname命令獲取服務器的主機名。就像Digao建議的那樣將該主機名添加到etc/hosts文件中。
127.0.0.1 localhost susetest
保存更改。後綴停止,後綴開始。現在就像一種魅力。
謝謝您的建議。對不起,我沒有足夠的聲望投票或評論你的帖子。
在smtp中繼服務器上運行並重啓exim4 echo'helo_allow_chars = _'> /etc/exim4/conf.d/main/04_exim4-helo_hack – Ranguard 2008-09-17 20:37:54