オフィスの Wi-Fi で証明書の警告が表示され、VPN に接続した瞬間に消える。これは実際の観察だが、診断ではない。わかるのは、二つのネットワーク条件で検証結果が違ったということであり、その原因になり得るものは数多い。これを管理された比較として扱い、ルーターが侵害された証拠とはみなさないこと。

同じ警告が逆の向きで現れることもある。ローカルネットワークでは正常、トンネル経由では壊れる。どちらの向きでも、得られるのは二つのデータ点だけで、説明はない。

比較は一度に一つの変数に絞る

同じホスト名、同じブラウザープロファイル、確認済みの端末時計を使う。各条件で正確なエラー文言と時刻を記録する。VPN オンと VPN オフは二つの条件のラベルであり、違いの説明ではない。

一度に一つだけ変える。同じ試行で DNS サーバー、ブラウザー、ネットワークを変えてしまえば、その集合のどこかが重要だということがわかるだけで、ほぼ何も学べていない。

ノートに小さな表を用意する。条件、リゾルバー、宛先アドレス、エラー、証明書のフィンガープリント。この表の五行は、たいてい一時間の推測より役に立つ。

証明書より先にエラーの種類を読む

名前の不一致、信頼できない発行者、期限切れの証明書は、それぞれ別の所見だ。 Chrome の接続エラーに関するガイド はそれらを区別しており、エラーページの正確なコードがどれに当たるかを示す。そのコードが次に何を比べるかを決める。

エラーが名前の不一致なら、提示された証明書は要求したホスト名をカバーしていない。信頼できない発行者なら、連鎖はブラウザーが信頼するルートに至っていない。期限切れなら日付が誤っており、端末の時計が誤っている可能性もある。

警告を通り抜けたり、ページを読み込ませるために未知のルートをインストールしたりしないこと。それは所見を隠れた変更に変えてしまう。

リーフ、連鎖、文脈を比べる

別の証明書が現れたら、それぞれが意図したサービスに属するかを確かめる。承認済みの更新や別のサービス端点は、正当な変更を説明し得る。予期しない名前や発行者は、サービスの所有者に尋ねる理由であって、判定ではない。フィンガープリントだけでは、どのケースを見ているかはわからない。

同じリーフが両方の条件で現れる場合は、一致するフィンガープリントで止まらず、提示された連鎖と検証の文脈を比べる。エラーはリーフ自体ではなく、中間証明書や信頼設定に関わるものかもしれない。正確なエラーを比較のそばに残しておく。

VPN はリゾルバーの経路、選択される宛先、プロキシ経路、あるいは送信元ベースのサービスの応答を変え得る。トンネル経由で読み込まれるページは、どの変数が効いたかを特定しない。公開リゾルバーに切り替えてページが読み込めたとしても、サイトの身元の独立した確認にはならない。

所有者が行動できる引き継ぎを書く

有用な報告には、意図したホスト名、二回の試行時刻、正確なエラー、証明書の公開情報(サブジェクト、発行者、有効期間、フィンガープリント、連鎖)を含める。報告が承認された範囲の外に出る場合は、内部名を伏せる。

所有者が検証済みの修正を提供したら、通常の検証を保ったまま元の要求を繰り返す。その後、結果を書き留めて比較を閉じる。

証拠が依然として、一方の経路は成功し他方は失敗する、ということだけを示しているなら、そのとおりに言う。限定的で正確な所見は、広範なルーターのリセット、信頼ストアの変更、症状を取り除いて原因を隠すセキュリティ例外よりも有用だ。

関連記事