状況
Azure Front Door 経由のサイトが HTTPS だけ 502 になり、HTTP は表示される。先週オリジンのサーバー証明書を更新した際、サーバー証明書のファイルだけを差し替えた。ブラウザでオリジンを直接 HTTPS で開くと警告は出ない。
原因を調べる順番として、最も適切なものは?
- Aオリジンが中間証明書まで含めて返しているか(openssl s_client)
- B証明書のサブジェクト名がオリジンのホスト名と一致するか
- Cカスタムドメインの DNS(CNAME)が Front Door を指しているか
- DFront Door の証明書の名前チェックを無効にする
正答
- B → A → C → D
- A → B → C → D
- C → B → A → D
- D → A → B → C
解説
502 は Front Door が返しており、HTTP では表示できるので、DNS(C)と Front Door までの経路、オリジンのアプリは正常と分かる。問題は Front Door とオリジンの間の TLS に絞られる。サーバー証明書のファイルだけを差し替えたなら、中間証明書が欠けている可能性が高い(A)。Front Door はオリジンが中間証明書まで返さないと 502 にする。ブラウザは手元で証明書の連鎖を補うため、直接開いても警告が出ないことがあり、確認には openssl s_client で実際に返る連鎖を見る。次に、新しい証明書の名前がオリジンのホスト名と一致するか(B)。直接開いて警告が出ないので名前は合っている見込みが高く、A より後。名前チェックの無効化(D)は検証を弱める変更なので最後で、根本の修正にもならない。
この問題を含む Azure のテストを制限時間つきで解く
Azureクイズへ