Ubuntuサーバーバージョン14.04.1の新規インストールがあります。SSLを有効にしたApache2があります。 SSLv3を無効にしたい
(これはよくある質問ですが、他のすべての回答を複数のサイトでトロールしており、彼らが提案するすべての手順を実行したと思います。)
コマンドを使用する場合:
nmap --script ssl-enum-ciphers -p 443 MYDOMAIN.com
暗号の2つのセットを見ることができます。 1つのSSLv3と1つのTLSV1.0
SSLモジュールを有効にしており、その構成ファイルは/etc/Apache2/mods-enabled/ssl.confです
行を変更して変更しました
SSLProtocol all
に
SSLProtocol All -SSLv2 -SSLv3
すべてのドキュメントおよびWebチュートリアルから、これによりSSLv3が無効になります。
コマンドでApacheを再起動します
Sudo service Apache2 restart
しかし、変化はありません。 SSLv3は引き続きリストされます。
サーバーを停止してコマンドを再実行し、間違ったサーバーを誤ってチェックしないようにしました。予想通り、結果は変わります。
誰が私が犯している間違いを提案できますか?.
ロバート
私の正確なubuntuバージョン:
root@xxxx:/etc/Apache2/mods-enabled# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
私の正確なApache2バージョン:
root@xxxx:~# Apache2 -v
Server version: Apache/2.4.7 (Ubuntu)
Server built: Jul 22 2014 14:36:38
私の正確なopensslバージョン:
root@xxxx:~# openssl version
OpenSSL 1.0.1f 6 Jan 2014
参照:
http://httpd.Apache.org/docs/current/mod/mod_ssl.html#sslprotocol
オプションを無効にする他の設定ファイルがあることがわかりました。
以下を実行することでファイルを見つけることができました:
cd /etc/Apache2
grep -r "SSLProto" .
SSLv2はサポートされなくなりました。
だから
SSLProtocol All -SSLv2 -SSLv3
動作しません
SSLProtocol All -SSLv3
意志
apache設定ファイルで以下の設定を使用します。
SSLProtocol ALL -SSLv2 -SSLv3
SSLHonorCipherOrder On
SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
次に、Apacheを再起動して、サイトを確認します
https://www.ssllabs.com/ssltest/analyze.html?d=www.yourfancysite.com
それは私にグレードAを与えました(2017年7月現在)が、以前の設定ではFしかありませんでした:)
クレジット:
https://hynek.me/articles/hardening-your-web-servers-ssl-ciphers/