API 連携している問い合わせ先サーバの中間証明書が壊れてたんだけど、「ブラウザアクセスすると問題ないもん!」と言われたのでお前……!となりつつ、問い合わせ元クライアントが参照している中間証明書に追加して対応するなど。
アップデート前に ca-bundle のバックアップを取得しておく
なんかあっても良いように。
cd /etc/pki/ca-trust/extracted/pem/ cp tls-ca-bundle.pem tls-ca-bundle.pem.org
ca-bundle を更新する
CentOS7 環境では openssl が利用する中間証明書を動的に更新できる仕組みがある模様。 以下のように、追加したいファイルを特定のディレクトリに設置し、アップデートコマンドを実行する。
cd /usr/share/pki/ca-trust-source/anchors vi add-ca_certificate.pem update-ca-trust extract
これで、 add-ca_certificate.pem
の内容が tls-ca-bundle.pem
に追加された。 前項で取得しておいた tls-ca-bundle.pem.org
と比べてファイルサイズが増えていれば大体オッケー。
目的の URL にアクセスしてみる
CertificateError が再発しなければヨシ。