Email

Courier IMAP、TLS 和可信 IP

  • November 8, 2020

我執行帶有 STARTTLS 支持的 Courier IMAP。目前,IMAP_TLS_REQUIRED設置為 0 (false),表示完全允許客戶端在不安全的通道上使用明文登錄。將其設置為 1 (true) 不是一個選項,因為它會破壞 SquirrelMail(它不能使用 STARTTLS);但是,我知道只有某些 IP 地址會合法地使用未加密的傳輸。

在最簡單的情況下,理論上應該可以在不加密的情況下允許來自 127.0.0.1 的連接,同時在所有其他連接上要求 STARTTLS 之前進行身份驗證。但是,我一直無法做到這一點。另外,如果我想要更複雜的東西怎麼辦——也許 203.0.113.147 上有一個 Web 伺服器與 203.0.113.148 上的 IMAP 伺服器通信,中間有一個安全的 LAN。(暫時忽略證明 LAN 真正安全的挑戰。)有沒有辦法IMAP_TLS_REQUIRED為不同的連接進行不同的設置?

我認為沒有辦法設置IMAP_TLS_REQUIRED為 true 並使用不支持STARTTLS.

但是,如果您完全控製網路,您還有其他可能性。對於 SquirrelMail 連接,您可以為每個 IP 地址使用一個防火牆規則,這樣至少只有那些人可以在沒有 TLS 的情況下連接到該服務。如果 MiTM 仍然存在於網路上,它並不會真正讓它變得更安全。

但是,這並不強制其他使用者(例如 Thunderbird 使用者)使用加密。所以它並不像可能的那樣安全。

另一種方法是在兩個不同的埠上執行兩個 courier 實例。您可以為不安全的埠選擇一個不同的埠(它不會真正將其隱藏在可以隨時檢查您所有開放埠的黑客面前)。這樣一來,帶有加密的版本就可以使用該IMAP_TLS_REQUIRED標誌,並且至少這些使用者永遠不會最終不使用加密。

綜上所述,TLS v1.2 似乎無法正常工作(至少在 Ubuntu 18.04 上),因此 courier 可能必須更改為其他內容……

引用自:https://unix.stackexchange.com/questions/347197