Postfix
通過終端中的 openssl 連接到郵件伺服器的身份驗證錯誤
我已經使用 Postfix 和 Dovecot 設置了一個電子郵件伺服器,並且我能夠使用各種郵件客戶端發送和接收郵件,但由於某種原因,當我嘗試
openssl
在終端中連接時出現身份驗證錯誤。這幾乎是它下降的方式:
openssl s_client -connect mail.example.com:587 -starttls smtp
$$ a connection to the server is established $$
EHLO mail.example.com AUTH PLAIN cGFzc3dvcmQ= 535 5.7.8 Error: authentication failed:
我使用以下每一項來生成我的
AUTH PLAIN
消息,但沒有一個對我進行身份驗證:echo -en '\0username\0password!'|base64 echo -en '\000username\000password!'|base64 echo -e '\0username\0password!'|base64 echo -e '\000username\000password!'|base64
我用來設置郵件伺服器的教程建議我使用:
echo -en '\000username\000password!'|base64
但這對我從來沒有用過。
我的使用者名是格式
user@example.com
,這在使用郵件客戶端連接到伺服器時有效。有誰知道為什麼我可能會收到錯誤?我假設這是因為我沒有正確生成 base64 身份驗證消息,但我對 Linux 還很陌生,所以我可能會忽略一些簡單的事情。
我已經嚴格按照教程進行操作,並且多次仔細檢查了我的設置。除了一個問題,其他一切都按預期工作。
伺服器正在執行 Debian 7(64 位),教程在這裡:https ://www.howtoforge.com/tutorial/build-your-own-cloud-on-debian-wheezy/
謝謝。
大多數設置都在使用者名中包含域。(至少我的大部分人。)嘗試:
echo -ne '\0username@domain.com\0password!'|base64
您也可以嘗試 PERL 方法:
perl -MMIME::Base64 -e 'print encode_base64("\000user\@domain.com\000password")'