githubからモードセキュリティをダウンロードするスクリプトがあり、最近失敗し始めました。サーバーはCentOS 6を実行していますが、RHEL 6にも同じ問題がある可能性があります。出力は次のとおりです
# wget https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
--2014-07-22 18:49:46-- https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
Resolving github.com... 192.30.252.129
Connecting to github.com|192.30.252.129|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://cloud.github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz [following]
--2014-07-22 18:49:47-- https://cloud.github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
Resolving cloud.github.com... 54.230.99.219, 205.251.219.190, 54.230.97.212, ...
Connecting to cloud.github.com|54.230.99.219|:443... connected.
OpenSSL: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Unable to establish SSL connection.
この問題を解決する方法についてのアイデアはありますか?
答え1
curl
次のコマンドを使用してダウンロードできます。
curl -LO https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-apache_2.7.1.tar.gz
答え2
SSLv3の重大なセキュリティ問題により、SSLv3暗号化ハンドシェイクがサーバー側で無効になりました。また、wgetクライアントは古いバージョンであり、デフォルトではまだSSLv3暗号化を使用します。 2つのオプションがあります。
- wgetの前に--secure-protocol = TLSv1フラグを使用してください。
wget --secure-protocol=TLSv1
- デフォルトのTLSv1プロトコルを使用する更新されたバージョンのwgetをインストールします。
答え3
wgetのバージョンを確認する必要があります。
wget
以前のバージョン(< 1.15)でも同じ問題が発生しました。
答え4
回避策は、ホストを信頼する場合は、次のように指定または追加してみ--no-check-certificate
てください。
check_certificate = off
(推奨~/.wgetrc
しない)
まれに、これはシステム時間が同期されず、以前に有効な証明書が無効になって発生する場合です。