Ubuntu
幫助調試 Exim4 SMTP AUTH 535 驗證數據不正確
我按照本指南設置 TLS 和身份驗證。我設置了使用者名(usr)和密碼(pwd),
/etc/exim4/passwd
並且文件具有正確的權限:-rw-r----- 1 root Debian-exim 51 Oct 16 13:11 passwd
如果我刪除該文件中該行的純文字部分並執行:
htpasswd -vb passwd usr pwd
然後我得到一個不錯的
Password for user usr correct.
但是,嘗試
openssl s_client -connect $HOST:25 -starttls smtp
並粘貼:ehlo test 250-example.org Hello example.org [1.2.3.4] ← Clearly, redacted… 250-SIZE 52428800 250-8BITMIME 250-PIPELINING 250-AUTH PLAIN LOGIN 250-CHUNKING 250-PRDR 250 HELP auth plain AHVzcgBwd2Q= 535 Incorrect authentication data
base64 取自:
echo -ne '\0usr\0pwd' | base64 AHVzcgBwd2Q=
我已經跑
systemctl restart exim4.service
了update-exim4.conf
好幾次了。如何調試這個?
文件是謊言,所以不要聽它。
您需要的是取消註釋
plain_server
驅動程序conf.d/auth/30_exim4-config_examples
並註釋掉plain_saslauthd_server
和login_saslauthd_server
垃圾。saslauth 驅動程序不起作用。從那裡開始,它將按預期工作。
來源。
這對我來說很好:
login_saslauthd_server: driver = plaintext public_name = LOGIN server_prompts = "Username:: : Password::" # don't send system passwords over unencrypted connections server_condition = ${if saslauthd{{${local_part:$auth1}}{$auth2}{}{${domain:$auth1}}}{1}{0}} server_set_id = $auth1 # .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS server_advertise_condition = ${if eq{$tls_in_cipher}{}{}{*}} # .endif