2011年9月2日金曜日

bundle install 時に SSL 関係でエラーになってしまう

bundle install をすると以下のように証明書でエラーになってしまう。
CentOS 5.6 を対象とています。


$ bundle install --path vendor/bundler
Fetching https://github.com/mislav/will_paginate.git
error: SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed while accessing https://github.com/mislav/will_paginate.git/info/refs

fatal: HTTP request failed
Git error: command `git clone 'https://github.com/mislav/will_paginate.git' "/opt/xxx/vendor/bundler/ruby/1.9.1/cache/bundler/git/will_paginate-bfaeaccc8af94c369b0e2f1626f08b0c9a3a03f1" --bare --no-hardlinks` in directory /opt/xxx has failed.

あんまりよく無い気がするが以下のコマンドで無視するように設定。
$ git config --global http.sslVerify false

2011/9/12 追記
『2011年5月末以降、github.comにはEV SSL証明書(DigiCert HighAssurance EV CA-1)が使われるようになった。』ということらしく証明書の追加をします。

まず、『DigiCert Trusted Root Authority Certificates』から、『DigiCert High Assurance EV Root CA』をダウンロードします。ダウンロードしたファイル名は『DigiCertHighAssuranceEVRootCA.crt』。これをcurl-ca-bundle.crtに追加します。

# wget -P /tmp https://www.digicert.com/testroot/DigiCertHighAssuranceEVRootCA.crt

# cat /tmp/DigiCertHighAssuranceEVRootCA.crt >> /etc/pki/tls/certs/ca-bundle.crt

証明書の場所はOSやディストリビューションによって違うので、こんな感じで探します。
$ locate libcurl.so
...
$ strings /usr/lib/libcurl.so.3 | grep bundle
/etc/pki/tls/certs/ca-bundle.crt


0 件のコメント:

コメントを投稿