障害シナリオ③ 証明書更新後に一部だけ失敗
Pro会員限定上級約39分6レッスン
証明書を更新した翌朝、取引先の API 連携だけが「unable to get local issuer certificate」で失敗します。ブラウザでは正常に見えます。curl の ssl_verify_result で失敗を数字にし、正常なサイトとチェーンを比べて中間証明書の欠落を突き止め、ファイル・設定・鍵の対応を確かめてから fullchain に直し、再発防止までを通しで行います。
対象者: 証明書の更新作業を担当し、「ブラウザでは開けるのに一部のクライアントだけ失敗する」を確実に見抜きたい方
前提知識: TLS① 証明書を読む / TLS② 期限切れ・名前不一致・社内 CA 修了程度
この教材を終えると、できるようになること
- 取引先と同じ道具で失敗を再現し、TLS の検証結果を番号とメッセージで取り出して、番号から失敗の種類を判断できるようになる。
- 正常なサイトと問題のサイトで、サーバーが送ってくる証明書の一覧を並べて比べ、中間証明書が送られていないことと、ブラウザでは平気に見える理由を説明できるようになる。
- 証明書ディレクトリのファイルの役割を説明し、それぞれのファイルに入っている証明書の枚数を数えて、nginx がどのファイルを指しているかを確かめられるようになる。
- 証明書と秘密鍵の両方から公開鍵の modulus を取り出し、ハッシュで短くして比べ、対になっていることを確かめられるようになる。
- ssl_certificate を中間証明書を含むファイルに直して検査・反映し、取引先と同じ方法で検証結果が 0 になることを確かめ、再発防止策を説明できるようになる。
修了後の姿: プロトコルの中身とネットワーク設計を理解し、複雑な障害の根本原因の特定から再発防止の設計まで任せられるエンジニアへ。
Chapter 1障害対応: 証明書更新の翌朝
失敗を数字にし、正常な例と比べ、ファイルと設定を確かめ、安全に直して確認します。
Chapter 2確認クイズ
中間証明書の欠落の見つけ方と直し方の理解度をチェックします。