Mozilla Thunderbird を使用して、 goo メールの smtp サーバーから数か月ぶりにメールを送信しようとしたところ、“Peer using unsupported version of security protocol.”のエラーでメールが送信できなくなっていることに気づいた。
なお、メールの受信の際には、件のエラーは発生しない。
さっそく調べたところ、 Thunderbird 78 以降、デフォルトでは TLS 1.0 や TLS 1.1 を使用した接続を行わなくなったのが、手元の環境で件のエラーが発生した原因だとわかった。
Thunderbird 78 は、デフォルト では最新の TLS 1.2 接続セキュリティプロトコル をサポートしない (10 年以上前の) サーバーとは接続しません。メールプロバイダーが、古いセキュリティプロトコルの TLS 1.0 や TLS 1.1 のみをサポートする場合、デフォルト では、メールのダウンロード (受信) や送信が動作しません。
引用元 : Thunderbird 78 にアップグレード後、メールを送受信できなくなりました – Thunderbird 78 FAQ – Thunderbird ヘルプ
openssl s_client コマンドの実行結果
openssl s_client コマンドの実行結果から、 goo メールの
- smtp サーバー smtp.mail.goo.jp (ポート番号 465) は TLS 1.0 に対応, TLS 1.1 と TLS 1.2 には非対応
- imap サーバー imap.mail.goo.jp (ポート番号 993) は TLS 1.2 に対応 (TLS 1.0 と TLS 1.1 にも対応)
- pop サーバー pop.mail.goo.jp (ポート番号 995) は TLS 1.2 に対応 (TLS 1.0 と TLS 1.1 にも対応)
だとわかった。
つまり、 goo メールにおいて、メールの受信については pop, imap とも TLS 1.2 がサポートされていることから、 Thunderbird での受信の際には件のエラーが発生しない。ところが、メールの送信については TLS 1.0 のみのサポートとなっているため、 Thunderbird での送信の際には件のエラーが発生してしまう状況になっている。
一応、そういった環境向けに「古いセキュリティプロトコルの TLS 1.0 と TLS 1.0 を有効化する方法 – Thunderbird 78 FAQ – Thunderbird ヘルプ」として、制限を回避する方法が紹介されていて、実際に手元の環境でも security.tls.version.min の値を変更することで制限を回避できることを確認したが、仕様変更の趣旨を考えるとデフォルトの設定のままにしておくべきだと判断し、確認後はすぐに元に戻した。
幸い、当該 smtp サーバーを使用してメールを送信する機会はそれほどないため、当面は、送信する必要が発生したときだけ設定を変更→送信後は元に戻す運用でしのぐことにした。
ちなみに、 security.tls.version.min で設定可能な値は以下の通り。
security.tls.version.min で設定できる数値には以下の意味があり、セキュリティのレベルを表しています。
0 ⇒ SSL 3.0 以降を許可する
1 ⇒ TLS 1.0 以降を許可する
2 ⇒ TLS 1.1 以降を許可する
3 ⇒ TLS 1.2 以降を許可する
4 ⇒ TLS 1.3 以降を許可するお使いのサーバが対応していない場合、送受信ができません。
引用元 : メールソフト Thunderbird 78.4.0で受信ができなくなった – MRSミライレンタルサーバ
smtp サーバーに TLS 1.2 でアクセス – 失敗
SSL/TLS 接続確立に失敗。
f7u@peach ~ % openssl s_client -connect smtp.mail.goo.jp:465 -tls1_2 CONNECTED(00000006) 4781637292:error:1400510A:SSL routines:CONNECT_CR_SRVR_HELLO:wrong ssl version:/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-56.60.2/libressl-2.8/ssl/ssl_clnt.c:849: --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 58 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: Start Time: 1610342043 Timeout : 7200 (sec) Verify return code: 0 (ok) --- f7u@peach ~ %
smtp サーバーに TLS 1.1 でアクセス – 失敗
SSL/TSL 接続の確立に失敗。
f7u@peach ~ % openssl s_client -connect smtp.mail.goo.jp:465 -tls1_1 CONNECTED(00000006) 4621389484:error:1400510A:SSL routines:CONNECT_CR_SRVR_HELLO:wrong ssl version:/AppleInternal/BuildRoot/Library/Caches/com.apple.xbs/Sources/libressl/libressl-56.60.2/libressl-2.8/ssl/ssl_clnt.c:849: --- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 58 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.1 Cipher : 0000 Session-ID: Session-ID-ctx: Master-Key: Start Time: 1610342064 Timeout : 7200 (sec) Verify return code: 0 (ok) --- f7u@peach ~ %
smtp サーバーに TLS 1.0 でアクセス – 成功
SSL/TLS 接続の確立に成功。
f7u@peach ~ % openssl s_client -connect smtp.mail.goo.jp:465 -tls1 CONNECTED(00000006) depth=3 C = IE, O = Baltimore, OU = CyberTrust, CN = Baltimore CyberTrust Root verify return:1 depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA verify return:1 depth=1 C = US, O = DigiCert Inc, CN = DigiCert SHA2 Secure Server CA verify return:1 depth=0 C = JP, ST = Tokyo, L = Minato-Ku, O = NTT Resonant Inc., OU = Portal Service, CN = smtp.mail.goo.jp verify return:1 --- Certificate chain 0 s:/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./OU=Portal Service/CN=smtp.mail.goo.jp i:/C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA 1 s:/C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root CA 2 s:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root CA i:/C=IE/O=Baltimore/OU=CyberTrust/CN=Baltimore CyberTrust Root --- Server certificate -----BEGIN CERTIFICATE----- (略) -----END CERTIFICATE----- subject=/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./OU=Portal Service/CN=smtp.mail.goo.jp issuer=/C=US/O=DigiCert Inc/CN=DigiCert SHA2 Secure Server CA --- No client certificate CA names sent Server Temp Key: DH, 1024 bits --- SSL handshake has read 4749 bytes and written 316 bytes --- New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1 Cipher : DHE-RSA-AES256-SHA Session-ID: (略) Session-ID-ctx: Master-Key: (略) TLS session ticket lifetime hint: 7200 (seconds) TLS session ticket: (略) Start Time: 1610342088 Timeout : 7200 (sec) Verify return code: 0 (ok) --- 220 smtp.mail.goo.jp ESMTP Postfix QUIT DONE f7u@peach ~ %
imap サーバーに TLS 1.2 でアクセス – 成功
SSL/TLS 接続確立に成功。
f7u@peach ~ % openssl s_client -connect imap.mail.goo.jp:993 -tls1_2 CONNECTED(00000006) depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA verify return:1 depth=1 C = US, O = DigiCert Inc, CN = DigiCert TLS RSA SHA256 2020 CA1 verify return:1 depth=0 C = JP, ST = Tokyo, L = Minato-Ku, O = NTT Resonant Inc., CN = imap.mail.goo.jp verify return:1 --- Certificate chain 0 s:/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./CN=imap.mail.goo.jp i:/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 1 s:/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root CA --- Server certificate -----BEGIN CERTIFICATE----- (略) -----END CERTIFICATE----- subject=/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./CN=imap.mail.goo.jp issuer=/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 --- No client certificate CA names sent Server Temp Key: ECDH, P-256, 256 bits --- SSL handshake has read 3381 bytes and written 322 bytes --- New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384 Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES256-GCM-SHA384 Session-ID: (略) Session-ID-ctx: Master-Key: (略) Start Time: 1610341246 Timeout : 7200 (sec) Verify return code: 0 (ok) --- * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE AUTH=PLAIN AUTH=LOGIN] IMAP4 ready QUIT DONE f7u@peach ~ %
pop サーバーに TLS 1.2 でアクセス – 成功
SSL/TLS 接続確立に成功。
f7u@peach ~ % openssl s_client -connect pop.mail.goo.jp:995 -tls1_2 CONNECTED(00000006) depth=2 C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA verify return:1 depth=1 C = US, O = DigiCert Inc, CN = DigiCert TLS RSA SHA256 2020 CA1 verify return:1 depth=0 C = JP, ST = Tokyo, L = Minato-Ku, O = NTT Resonant Inc., CN = pop.mail.goo.jp verify return:1 --- Certificate chain 0 s:/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./CN=pop.mail.goo.jp i:/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 1 s:/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 i:/C=US/O=DigiCert Inc/OU=www.digicert.com/CN=DigiCert Global Root CA --- Server certificate -----BEGIN CERTIFICATE----- (略) -----END CERTIFICATE----- subject=/C=JP/ST=Tokyo/L=Minato-Ku/O=NTT Resonant Inc./CN=pop.mail.goo.jp issuer=/C=US/O=DigiCert Inc/CN=DigiCert TLS RSA SHA256 2020 CA1 --- No client certificate CA names sent Server Temp Key: ECDH, P-256, 256 bits --- SSL handshake has read 3377 bytes and written 322 bytes --- New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384 Server public key is 2048 bit Secure Renegotiation IS supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES256-GCM-SHA384 Session-ID: (略) Session-ID-ctx: Master-Key: (略) Start Time: 1610341315 Timeout : 7200 (sec) Verify return code: 0 (ok) --- +OK POP3 ready QUIT DONE f7u@peach ~ %