Thunderbird 在沒有使用者名稱的情況下使用 dovecot 進行身份驗證在 0 秒內失敗

Thunderbird 在沒有使用者名稱的情況下使用 dovecot 進行身份驗證在 0 秒內失敗

我已經使用有效的配置設定了 Dovecot(使用dovecot -n

# 2.3.7.2 (3c910f64b): /etc/dovecot/dovecot.conf
# OS: Linux 5.2.15-200.fc30.x86_64 x86_64 Fedora release 30 (Thirty)
# Hostname: <my hostname>
auth_debug = yes
auth_mechanisms = plain login
auth_verbose = yes
listen = 10.168.0.9,<my external IP>
mail_location = mbox:~/mail:INBOX=/var/mail/%u
mbox_write_locks = fcntl
namespace inbox {
    inbox = yes
    location =
    mailbox Drafts {
        special_use = \Drafts
    }
    mailbox Junk {
        special_use = \Junk
    }
    mailbox Sent {
        special_use = \Sent
    }
    mailbox "Sent Messages" {
        special_use = \Sent
    }
    mailbox Trash {
        special_use = \Trash
    }
    prefix =
}
passdb {
    driver = pam
}
protocols = imap
ssl_cert = </etc/letsencrypt/live/<my hostname>/cert.pem
ssl_cipher_list = PROFILE=SYSTEM
ssl_key = # hidden, use -P to show it
userdb {
    args = blocking=no
    driver = passwd
}
verbose_ssl = yes

我嘗試使用 Thunderbird 60.9.0 連接到此端口,但無論我使用端口 143 還是 993,身份驗證都不會發生。journalctl -efu dovecot.service輸出:

Sep 21 21:43:58 <myhostname> dovecot[31705]: auth: Debug: auth client connected (pid=2668)
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x10, ret=1: before SSL initialization
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: before SSL initialization
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=-1: before SSL initialization
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: before SSL initialization
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS read client hello
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write server hello
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write certificate
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write key exchange
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=-1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=-1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=-1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=-1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write server done
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS read client key exchange
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS read change cipher spec
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS read finished
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write session ticket
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write change cipher spec
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2001, ret=1: SSLv3/TLS write finished
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x20, ret=1: SSL negotiation finished successfully
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL: where=0x2002, ret=1: SSL negotiation finished successfully
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Aborted login (no auth attempts in 0 secs): user=<>, rip=10.168.0.53, lip=<myhostextip>, TLS, session=<OvtgaBWT5iUKqAA1>
Sep 21 21:43:58 <myhostname> dovecot[31705]: imap-login: Debug: SSL alert: close notify

該錯誤似乎顯示在倒數第二行:「0 秒內沒有嘗試進行身份驗證」。 將 Thunderbird 用戶端連接到 Ubuntu 上安裝的 dovecot 時出現問題表示證書異常有潛在問題。我刪除了Thunderbird(Windows版本)中儲存的證書,然後在管理證書下再次取得它並新增了安全例外。這沒有幫助。此外,上面的日誌檔案顯示證書對話方塊正常。

如果我新增cram-md5作為支援的身份驗證機制,我將另外進入auth: Fatal: CRAM-MD5 mechanism can't be supported with given passdbs日誌。

我沒有看到什麼,或者我誤解了什麼或做錯了什麼?我該如何讓它發揮作用?

編輯:使用 Thunderbird x64 進行測試,它將使用全新的設定檔。不起作用。嘗試將 Thunderbird 從 60 升級到 68。使用 Mozilla 的日誌功能來記錄驗證和 IMAP 流量。身分驗證中沒有記錄任何內容,IMAP 流量中也沒有記錄有關 dovecot 服務的內容。

答案1

問題出在證書上。雖然憑證是受信任的,但它被分配給伺服器的公開使用名稱。我使用內部 IP 位址從內部網路存取伺服器。因此,Thunderbird 拒絕與伺服器通訊。

在將連線安全性設定為「無」並將身分驗證方法設定為「普通密碼」之前,確認安全性異常對此事沒有幫助,這允許我退出初始帳戶設定設定視窗。之後,將帳戶設定更改回 SSL/TLS 和普通密碼使 Thunderbird 提示我安全例外,我確認了這一點,現在它可以工作了。

相關內容