暗号化通信の設定
過去のSSL関連の記事「SSL化完了」や「証明書の更新」では「StartSSL」の導入・設定の話を、「StartSLLが無効に」と「Let’s EncryptをAmazon Linuxで使う」では証明書の発行元を変更する話などを書きました。
導入したSSLの「強度」は、Qualys SSL Labsの「SSL Server Test」を使ってチェックします。Qualysは商用では有名なセキュリティベンダーですが普通の個人には知名度は低いと思います。
SSLによるサーバー強化後の動作テストは手持ちのiPhone(iOS 11上のSafari/FireFox)やMacBook Pro(macOS Sierra上のSafari/FireFox)を使って行います。Windows 10上のFireFoxとIE11では簡易テストのみでAndroid端末ではテストを行っていません。このサイトへのアクセス解析では70%以上がiPhoneからのアクセスなのでまぁこれで良しとしますw
Android端末から「いいね!」ボタンが押せないとの問い合わせがありましたが、もしかしたらこの辺のセキュリティ強化策が影響しているのかもしれません。今回の強化は以下の通りです。解消するかどうかはわかりませんが一時的に一部を強化前の状態に戻しています。
SSLEngine on #SSLProtocol all -SSLv2 -SSLv3 <-- 以前はこれだった SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1 <-- 強化後 #SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5 #SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5!DES-CBC-SHA:!EDH-RSA-DES-CBC-SHA:!RC4 SSLCipherSuite <-- 現在はこの設定(以前の設定)に戻す ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS #SSLCipherSuite <-- 強化用設定:現在は使用せず ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS:!RC4:!ADH:!SHA1 SSLHonorCipherOrder On
Android 2.3.7 Protocol mismatch (not simulated) Android 4.0.4 Protocol mismatch (not simulated) Android 4.1.1 Protocol mismatch (not simulated) Android 4.2.2 Protocol mismatch (not simulated) Android 4.3 Protocol mismatch (not simulated) Baidu Jan 2015 Protocol mismatch (not simulated) IE 6 / XP Protocol mismatch (not simulated) IE 7 / Vista Protocol mismatch (not simulated) IE 8 / XP Protocol mismatch (not simulated) IE 8-10 / Win 7 Protocol mismatch (not simulated) IE 10 / Win Phone 8.0 Protocol mismatch (not simulated) Java 6u45 Protocol mismatch (not simulated) Java 7u25 Protocol mismatch (not simulated) OpenSSL 0.9.8y Protocol mismatch (not simulated) Safari 5.1.9 / OS X 10.6.8 Protocol mismatch (not simulated) Safari 6.0.4 / OS X 10.8.4 Protocol mismatch (not simulated)