認証局から送られてくる証明書が間違ってた話
証明書を更新したら、API Callできなくなった
状況
証明書を更新したら、
ブラウザでチェックしても特にエラーは無いのに、今まで動いてたAPIで、
SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed,OpenSSL::SSL::SSLError
や、opensslコマンドで
verify error:num=27:certificate not trusted
verify error:num=21:unable to verify the first certificate
等が出る症状が発生。
調査
openssl s_client -connect {hostname}:443 -servername {hostname} < /dev/null
したら
depth=0 /C=JP/ST=****/L=****/O=******,Inc./CN=******.co.jp
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 /C=JP/ST=****/L=****/O=******,Inc./CN=******.co.jp
verify error:num=27:certificate not trusted
verify return:1
depth=0 /C=JP/ST=****/L=****/O=******,Inc./CN=******.co.jp
verify error:num=21:unable to verify the first certificate
verify return:1
CONNECTED(00000003)
---
Certificate chain
0 s:/C=JP/ST=****/L=****/O=******,Inc./CN=******.co.jp
i:/C=BE/O=GlobalSign nv-sa/CN=GlobalSign Organization Validation CA - SHA256 - G2
1 s:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
i:/C=BE/O=GlobalSign nv-sa/OU=Root CA/CN=GlobalSign Root CA
---
Server certificate
-----BEGIN CERTIFICATE-----
:
:
あれれ?
chain繋がってないぞっと・・・
問い合わせ
とりあえずサポートに問い合わせたら、下記のような回答が。
>《中間証明書》
>Issuer: C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA
>Subject: C=BE, O=GlobalSign nv-sa, OU=Root CA, CN=GlobalSign Root CA
上記中間証明書としてご教示いただいております内容は、
弊社ルート証明書の内容となります。
中間証明書が異なっている可能性がございますので、
下記ページより当該の中間証明書を取得いただき、
再度、設定を行っていただければと存じます。
<リポジトリ・利用約款>
https://jp.globalsign.com/repository/
まさか、送られてきた中間CA証明書が間違ってるだと!!!
解決
正しい中間CA証明書をダウンロードして入れ替えたら無事解決♪
こんな事ってあるんですねぇ・・・(((((( ;゚Д゚))))))ガクガクブルブル
グローバルサインで2016/10/14前後に企業認証SSL(SHA256)を取得した人は、
チェックした方がいいかも。
対策
まぁ、とりあえず送られてきた証明書を信用せずにチェックするしかないかな。
設定を読み込む前に、証明書と中間CA証明書を
openssl x509 -text -noout -in {filename}
して、証明書のIssuerと中間CA証明書のSubjectが同じになってるか確認するしか・・・
Author And Source
この問題について(認証局から送られてくる証明書が間違ってた話), 我々は、より多くの情報をここで見つけました https://qiita.com/HiR/items/39930f4fe44cdaa60dc6著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .