SSL3.0仕様上の脆弱性(POODLE)(CVE-2014-3566)の対応内容の一部を紹介します。
この記事では、メールサーバ(postfixとdovecot)のPOODLE脆弱性対応内容をまとめる。
postfixについては、設定ファイルの変更により対処できるが、dovecotについては、設定ファイルの変更で対応できない。
※下記の内容は、検証中の内容も含まれております。
あくまで参考例となりますので、実際の環境にあった対応をお願いします。
「環境の説明」
O S:Centos6.5(64bit)
Postfix:postfix-2.6.6
Dovecot:dovecot-2.0.9
■検証内容
1.postfixでSSL3.0を無効にする。
main.cfに以下の内容を追記する必要があります。
smtpd_tls_security_levelを使っている人も使っていない人も追記しましょう。
1 2 |
# cd /etc/postfix/ |
1 2 3 4 5 6 |
# vi main.cf smtp_tls_protocols = !SSLv2, !SSLv3 smtp_tls_mandatory_protocols = !SSLv2, !SSLv3 smtpd_tls_protocols = !SSLv2, !SSLv3 smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3 |
2.main.cfの変更が出来ましたらpostfixを再起動してください。
reloadでは正しく反映されない場合がありますので必ず、再起動してください。
1 2 |
# service postfix restart |
3.SSL3.0が使えないか確かめる。
※postfixの設定でSSLを有効にすること。
1 2 3 4 |
# openssl s_client -connect localhost:465 -ssl3 # openssl s_client -connect localhost:587 -starttls smtp -ssl3 # openssl s_client -connect localhost:25 -starttls smtp -ssl3 |
「ssl handshake failure」の文字が表示されると成功となります。
※しかし、証明書の内容が表示された場合は、SSL3.0が無効化されていません。
4.続いてdovecotですが、dovecot2系の最新パッケージをインストールしているのであれば設定ファイルに追記で無効化できます。
◆2016/09/25更新
最新のdovecotであれば設定ファイルへの追記のみでSSL3を無効化できることが判明したのでソースからビルドする方法は削除させて頂きました。
1 2 |
# cd /etc/dovecot/conf.d/ |
1 2 3 |
# vi 10-ssl.conf ssl_protocols = !SSLv2 !SSLv3 |
1 2 |
# service dovecot restart |
5.SSL3.0が使えないか確かめる。
※dovecotの設定でSSLを有効にすること。
1 2 3 4 5 |
# openssl s_client -connect localhost:993 -ssl3 # openssl s_client -connect localhost:995 -ssl3 # openssl s_client -connect localhost:110 -starttls pop3 -ssl3 # openssl s_client -connect localhost:143 -starttls imap -ssl3 |
「ssl handshake failure」の文字が表示されると成功となります。
※しかし、証明書の内容が表示された場合は、SSL3.0が無効化されていません。
元々暗号化通信の必要がないのであれば、上記のような対応は不要となります。
■SSL3.0確認コマンド
証明書?ssl handshake failure?なにそれという方のためにSSL3.0に対応しているか
簡易的に確認するコマンドを例に挙げておきます。
以下は、465(SMTPS)の確認例です。
1 2 |
# echo "Q" | openssl s_client -connect localhost:465 -ssl3 > /dev/null 2>&1 && echo "SSL3.0 enabled" || echo "SSL3.0 disabled" |
「SSL3.0 enabled」と表示された場合、そのままです、SSL3.0が有効となっています。
「SSL3.0 disabled」と表示された場合、そのままです、SSL3.0が無効となっています。
※注意※
25(SMTP)、587(SUBMISSION)、143(IMAP4)、110(POP3)にてstarttlsが有効な場合があります。
その際は、-starttls pop3やimapやsmtpとオプションを付けて確認しましょう。
■参考サイト
https://access.redhat.com/ja/node/1232403
https://access.redhat.com/articles/1232123
http://jvn.jp/vu/JVNVU98283300/
http://www.forest.impress.co.jp/docs/news/20141016_671684.html
https://linode.com/docs/security/security-patches/disabling-sslv3-for-poodle
http://www.mail-archive.com/dovecot@dovecot.org/msg59945.html