遠隔勤務の担当者が VPN に接続し、トンネルが上がると、時刻に言及する認証エラーでログインが失敗し始める。トンネル自体に故障はない——VPN はネットワーク間でパケットを運ぶが、二台のマシンに共通の時計を与えるものではなく、ドメイン認証、証明書の検証、監査ログの突き合わせはいずれも、十分に近い時刻を刻む時計に依存している。そこから三つの判断が導かれる。ドメインの時刻を誰が持つのか、端末が実際に何を使っているのか、端末が移動中に何が起きるのか、である。

経路は時計ではない

Kerberos 認証は時刻に敏感なデータを含み、Windows ドメインで既定五分の許容範囲を外れた要求を拒否する。証明書には有効期間があるため、時計が十分に進んだ端末は有効な証明書をまだ有効でないものとして扱う。複数のマシンの監査記録は時計が近い場合にのみ突き合わせられ、インシデントレビューが初めて「どちらが先に起きたか」を問うときに効いてくる。

これらの依存関係はいずれもトンネルとは独立している。VPN を上げると到達性が変わるが、到達性は端末が時刻源を見つけるための前提であって、時刻源そのものではない。

表示されるタイムゾーンと時計そのものは分けて考える。異なるローカル時刻を表示する二台のノート PC が完全に同期していることもあり、同じ時刻を表示する二台でもタイムゾーンの設定が違えば数分ずれることがある。タイムゾーンの変更は誤った時計の修理ではなく、期限切れの証明書を通すために日付を戻すと、そのマシンの他の時刻依存の検査がすべて壊れる。

ドメインの時刻の所有者を決める

ドメイン参加の Windows メンバーは通常、毎回公開サーバーに問い合わせるのではなく、Active Directory の時刻階層に従う。その連鎖はフォレストルートの PDC エミュレーターで終わり、その参照先が組織の権威ある時刻源となる。

参照先を決める条件は二つある——ポリシーが外部の時刻サービスを許すかどうか、そして各拠点から承認済みの内部時刻源に確実に到達できるかどうかである。どちらも不明なら、実務的な答えは階層を保ったまま到達性を直すことであり、クライアントを公開プールに向けることではない。三つ目の条件は障害時の経路を決める——どちらの時刻源にも到達できないとき、端末がどう振る舞うかである。これを事前に決めておけば、一台のノート PC に公開サーバーを固定する場当たり的な対処を避けられる。

この選択はドメインと時刻の管理者に属し、リモートアクセスの設計に属するものではない。自らを信頼できる時刻の権威として構成するノート PC は別のアーキテクチャであり、セキュリティレビューが承認したものになることはまれである。

端末が実際に何を使っているかを読む

管理された Windows 端末の現在の状態は、読み取り専用の二つのコマンドで記録できる——変更の前後で取得しておく価値がある。

w32tm /query /source
w32tm /query /status
w32tm /query /configuration

選択された時刻源、最後に成功した同期、そして stratum または参照識別子を、端末の管理ポリシーと並べて記録する。手動同期が一度成功したことはコマンドが動く証拠であって、ポリシーが再起動や役割の変更を越えて生き残る証拠ではない。

時刻源がローカルの CMOS 時計を示すなら、端末はまったく同期していない——これは通常、起動時にドメインコントローラーへ到達できなかったか、時刻サービスがポリシーで無効化されたことを意味する。公開サーバーを示すなら、ドメイン階層の外にある何かが勝っており、それはネットワークではなくポリシーの問題である。

移動中に何が起きるかを決める

切断中、端末はローカルの時計と、到達できる時刻プロバイダーに頼る。ノート PC はドリフトし、何週間もオフラインだった端末は、再接続後の最初の Kerberos 要求が失敗するほどずれることがある。

再接続時、端末に必要なのはドメインの検出と意図した時刻サービスの経路であり、ファイル共有への経路だけではない。ネットワーク外で再起動し、VPN に接続して時刻源をもう一度読むことで確認し、階層がひとりでに戻ったと決めつけない。

仮想マシンはさらに別のプロバイダーを加える。ハイパーバイザーの時刻統合は多くの設計で正当な時刻源だが、その役割は意図して選び、ドメインポリシーと調整すべきである。二つのプロバイダーが食い違うと、安定して見えるのに誤った時計ができる。

メンバーのポリシーと権威を分けておく

通常のメンバー構成と権威あるサーバーの構成は、変更管理も異なる別の問題である。これを混ぜると、日常的なノート PC のポリシー変更がフォレスト全体の参照先を変えてしまう。

判断の記録は四行で書く——権威ある時刻源、それを運ぶ階層、移動中の挙動、そして端末上の状態を証明するコマンドである。最初の三つが文書化され、四つ目が再現可能なら、時刻に関わるログイン失敗は VPN ログを漁る作業ではなく五分の確認になる。

関連記事