Thunderbird 78 が宅配サーバー (IMAP) に接続しようとしません。宅配サーバーが TLS 1.2 で応答するようにするにはどうすればよいですか?

Thunderbird 78 が宅配サーバー (IMAP) に接続しようとしません。宅配サーバーが TLS 1.2 で応答するようにするにはどうすればよいですか?

私の顧客の一人が Thunderbird をバージョン 78 にアップグレードしたところ、IMAP 接続が TLS 1.2 ではないと判断され、メールを受信できなくなりました。しかし、インターネット上のツールで確認すると、v1.2 であることがわかりました。

再び動作させるにはどうすればよいですか?

以下は、imapd-ssl 設定の一部です。

IMAP_TLS_REQUIRED=1
TLS_PROTOCOL="TLS1_1:TLS1"
TLS_PRIORITY="SECURE128:+SECURE192:-VERS-ALL:+VERS-TLS1.2"
TLS_STARTTLS_PROTOCOL=TLS1
TLS_CIPHER_LIST=HIGH:MEDIUM:!ADH:!MD5:!aNULL:!eNULL:!LOW:!EXP:!RC4

これらの設定に明らかに問題があるのでしょうか?


私がこの投稿を見たことに注意してください:Thunderbird 78 は Exchange ベースの IMAP アカウントに接続できませんしかし、私はハッキングには興味がありません。サーバーが少なくとも TLS 1.2 を使用することを望んでいます。


openssl でテストしたところ、出力は次のようになりました。

openssl s_client -connect mail.example.com:143 -tls1_2
CONNECTED(00000003)
140310946449048:error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number:s3_pkt.c:362:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 5 bytes and written 7 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1604626110
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
---

バージョン 1.2 がサポートされていることが明確に示されています。ピア/クライアント証明書メッセージの意味がよくわかりません。これが原因でしょうか?


正しいopensslコマンドで出力を更新

@ が指摘したように、上記のテストは正しくありません。openssl にメッセージを送信させる必要がありますSTARTTLS。そうしないと、暗号化が開始されません。ただし、上記の TLS 1.2 と表示されている理由を知りたいです...

$ openssl s_client -connect mail.example.com:143 -starttls imap
CONNECTED(00000003)
depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify return:1
depth=0 CN = *.example.com
verify return:1
---
Certificate chain
 0 s:/CN=*.example.com
   i:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
 1 s:/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
   i:/O=Digital Signature Trust Co./CN=DST Root CA X3
---
Server certificate
-----BEGIN CERTIFICATE-----
...snip...
-----END CERTIFICATE-----
subject=/CN=*.example.com
issuer=/C=US/O=Let's Encrypt/CN=Let's Encrypt Authority X3
---
No client certificate CA names sent
---
SSL handshake has read 3307 bytes and written 617 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1
    Cipher    : AES256-SHA
    Session-ID: B2...FA
    Session-ID-ctx: 
    Master-Key: FB...AB
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    TLS session ticket lifetime hint: 7200 (seconds)
    TLS session ticket:
    0000 - a9 ... 6f   ...}.,.........o
    0010 - 17 ... 2f   .....&..YX.M.8n/
    0020 - a9 ... 7f   ......Q....Y..*.
    0030 - c9 ... a9   .!'f>06Q...z../.
    0040 - ff ... 1f   .SZ...Z...;X....
    0050 - 94 ... f0   .Se[[email protected]...
    0060 - c9 ... 44   [email protected]
    0070 - b3 ... 3d   .......`.'.....=
    0080 - a2 ... bf   ..=2.Z....^.):..
    0090 - 64 ... 42   d.>B....&.+.!..B

    Start Time: 1604637492
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)
---
. OK CAPABILITY completed

これで見た目はかなり良くなりました...ただし、TLSv1 と表示されている点が異なります。代わりに TLSv1.2 と表示したいので、設定が間違っています。


解決

何度も試してみましたが、TLS v1.2をCourierで動作させることはできませんでした。これは奇妙なことです。ただOpenSSL を設定するので、なぜそのバージョンが阻止されるのかはよくわかりません。ただし、設定がどうであれ、TLS v1 を超えることはありませんでした。

コメントで提案されたように、私はdovecotにはcourier専用の移行スクリプトも備わっているうまくいきました。Thunderbird はすべてのメールを一度再読み込みしましたが、今は期待通りに動作しており、フォルダーは失われていません。

関連情報