最近失敗し始めたgithubからmodセキュリティをダウンロードするスクリプトがあります。サーバーは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.
これを修正または回避する方法に関するアイデアはありますか?
curl
コマンドを使用してダウンロードできます。
curl -LO https://github.com/downloads/SpiderLabs/ModSecurity/modsecurity-Apache_2.7.1.tar.gz
SSLv3の深刻なセキュリティ問題のため、サーバー側でSSLv3暗号化ハンドシェイクが無効になっています。さらに、あなたのwgetクライアントは古いバージョンであり、デフォルトでこのSSLv3暗号化を使用しています。次の2つのオプションがあります。
wget --secure-protocol=TLSv1
Wgetのバージョンを確認してください。
古いバージョンのwget
(<1.15)でも同じ問題が発生しました。
回避策として、ホストが信頼できる場合は、--no-check-certificate
を指定するか、以下を追加してください。
check_certificate = off
~/.wgetrc
に挿入します(非推奨)。
まれなケースとして、システム時刻が同期していない可能性があり、以前は機能していた証明書が無効になることがあります。