AD に参加している PC にログインしようとすると、「このワークステーションとプライマリドメインとの信頼関係に失敗しました」という表示が出て、どうやってもログインできないことがあります。
そもそもの日本語がちょっと変なので、何を言っているのかわかり辛いですが、これは "The trust relationship between this workstation and the primary domain failed." を直訳したもののようです。
なんとなく AD の問題であって、こういうのはドメインからの一度該当のマシンを外して、ドメインに再参加すれば修正できるだろうというは分かります。実際に MS の公式な解説でもそのようなページも見つかります*1が、さらにいろいろと調べてみたらPowerShell を使うと意外と簡単に修復できることが分かりました。
† 確認方法
一番面倒なのは、何らかの方法で該当のマシンにログインする必要があることでしょうか。
ログインができたらコマンドプロンプトを起動して以下のコマンドを打ち込みます。
nltest /sc_query:example.jp
問題が発生している場合 0x5 ERROR_ACCESS_DENIED という戻り値が返ってくることが確認できます。
問題が解消している場合の戻り値は 0x0 NERR_Success です。
† 修正方法
修正は PowerShell を管理者権限で起動して実施します。
使うコマンドレットはTest-ComputerSecureChannel*2です。
具体的には以下のようなコマンドになります(DOMAIN_NAME, DOMAIN_ADMIN は自分のドメイン名とドメイン管理ユーザーに読み替えてください。)。
Test-ComputerSecureChannel -Repair -Credential DOMAIN_NAME\DOMAIN_ADMIN
上記の作業が完了したら、確認方法に記載してある nltest を使って、コマンドが 0x0 NERR_Success を返すことを確認します。
† エラーの発生はセキュアチャネルの破損
この現象の発生メカニズムについては「ドメインにログオンできない ~ セキュア チャネルの破損
~」に公式の詳細な解説があります。
普段、あまり意識することがない AD に登録されているコンピューターアカウントのパスワードが影響しているようです。
会社などで"ドメイン"方式でネットワークを管理していると、このエラーに直面することがあります。
今回は貸出用途のノートパソコンで起こったエラーとなります。ちなみに、このノートパソコンのスペックは以下の通り。
- Windows10 Pro
- corei5 8GBメモリ 512GBのHDD
- 有線LANのみ。無線LAN非対応
- 社外持ち出しや会議での使用時くらいしか出番はない
ログインしようとすると「このワークステーションとプライマリドメインの信頼関係に失敗しました」と表示されてログインできないエラーを対処します。
【忙しい人向け】結論、これやっとけ!
今回のエラーは複合的な要素が絡まってこじらせた面もあるので説明が長いです。
「説明はいいから対策法教えろ!」な方は、以下の項目を確認して下さい。各見出しトップにリンクします。
- ネットワークと接続されているか確認する(大型アップデート後は特に注意する)
- 前回ログイン時からパスワードの有効期限を跨いでいないか確認する
- セキュアチャネルの修復
- それでもダメならドメインへ再参加
信頼関係に失敗しました。
なんか心理に引っかかる、メンタルに刺さる物言いですよね。なんか人生こじらせた感じにきこえるんでやめてもらえませんかねいじめですかこれそうですよね。
この「信頼関係」という意味深な機能名、英語表記では"Trust"と表記されています。
Trustの意味・使い方・読み方 | Weblio英和辞書
1000万語収録!Weblio辞書 - Trust とは【意味】信頼,信任... 【例文】have trust in a person... 「Trust」の意味・例文・用例ならWeblio英和・和英辞書
直訳すると確かに“信頼”になります。けど意味合いとしてはMicrosoftの「セキュリティセンター」が「トラストセンター」と名前が変わっていたり、他の会社でもサポートセンターのことを「トラストセンター」と読んだりするところもあります。
「信用できるもの、委託(されること)、保護、(信頼・委託に対する)責任」という意味も含んでるのでしょうね。
このエラーが出た場合の一般的な対応法として「セキュアチャネルが破損しているのでドメインに入り直す」というものがあります。
実際、このエラー文章で検索すると、ほぼ「ドメインの入り直し方」が解説されています。
ドメインの入り直し方についてはその諸先輩方のサイトにお譲りするとして、うちの会社だとこの方法を取る為にコンピュータ名を変える必要が出てきます。
うちでは私がActiveDirectoryの管理者であった時は、サーバー側から該当のコンピュータ名を探して削除してもう一度ドメインに入り直し、とかやってたのですが、現在は会社の事情で親会社様が管理しています。そうなると、古いコンピュータ名をわざわざ消す手間なんかやってらんないとか、コンピュータ名変えるなら手続き踏めとか事務的な方向でいろいろめんどくさいのですよぐちぐちぐち。。。
ということで、出来るだけ自前で解決したいと思います。
エラーその1 IPアドレス設定が消えた
よく見ると、画面右下のネットワークアイコンが「ザ・ワールド」な状態になっていました。
LANケーブルがつながっているのにこの状態です。となればネットワークアダプタが怪しそうです。
しかしこのままではログインもできないので、先ずはローカル管理者でログインします。
ローカル管理者でログイン
ユーザー名:.¥[管理者権限のあるID]
Password:[初期に設定したもの]
".¥"(ドット、円マーク)で「このコンピュータの」という意味になります。コンピュータ名をわざわざ打つ必要はありません。
管理者権限は特に何も設定していなければ"administrator"かと思います。
念のためトラブルシューティングも掛けてみますが毎度ながら何の役にも立ちません。
一度ローカル管理者でログインして「ネットワークと共有センター」からIPv4の設定を確認してみたところ、IPアドレスが全て消えてました。そりゃ繋がらないわ。
【参考】IPアドレス設定画面までの道のり
- コントロールパネル(Winキー→”cont”まで打てば出てくる)
- ネットワークと共有センター
- 「接続:〇×」という青文字をクリック
- プロパティ(管理者権限を聞かれます)
- インターネットプロトコルバージョン4(TCP/IPv4)を選択して「プロパティ」を選択
再設定してOKを押すと
「このネットワークアダプタ用に入力したIPアドレス???.???.???.???は、既にこのコンピューターの別のアダプター'[現在使っているネットワークアダプタ名]'に割り当てられています。同じアドレスが2つのアダプターに割り当てられた場合は、両方ともアクティブになりますが1つのみがこのアドレスと使用します。これによりシステム構成が無効になることがあります。」
「詳細設定ダイアログボックスのIPアドレス一覧にこのアダプターに別のIPアドレスを入力して問題を解決しますか?」
- 「はい」を押してOKを押してもまた同じことを聞かれる。
- 「いいえ」を押しても設定は残っている。けどOKを押して再度開くと設定は消えている
結局このままでは詰んでますので別の対策を取る必要があります。
対応1:重複したネットワークアダプタを削除
Microsoft本家のドキュメントにこのエラー解説があります。
IP アドレスを設定するとエラー メッセージが表示される - Windows Server
ネットワーク アダプターで IP アドレスを設定しようとするときに発生するエラーの解決策を提供します。
[TCP/IP プロパティ] ダイアログ ボックスに既定の IP アドレスが表示される - Windows Server
サーバーで静的 IP アドレスを手動で構成した後で、TCP/IP プロパティが既定の設定に戻Windows説明します。
エラー本文と調べた結果からの推測ですが
- 何かしらの原因で元々のネットワークアダプタが無効になってしまった
- 新たにIPアドレス設定をしようとしたら、「元のネットワークアダプタに振ってるIPと被るよ!」と怒られた。
- 「はい」を押すと、別のIPを振る為に入力画面に戻る。
- 「いいえ」を押すと今の設定を活かす。元のネットワークアダプタは無効になってデバイスマネージャーから隠れてしまう
- 結局隠れてるだけなので競合を起こしたりして設定がリセットされる?
という状態になっていると思われます。
デバイスマネージャーから非表示のデバイスを表示させる設定をして灰色になっているデバイスを削除すればよい、という感じのことが書いていたのでやってみます。
重複するデバイスの削除方法
- コマンドプロンプトを起動する。
- 無効になって見えなくなったデバイスを表示させる設定を入れる
set devmgr_show_nonpresent_devices=1 - デバイスマネージャを起動する(必ず下記のコマンドで起動する!)
start devmgmt.msc - 上のメニュー「表示」→「非表示デバイスの表示」 をクリックする
- ネットワーク アダプタ を展開してグレー表示になっているネットワークアダプタを削除する
デバイスマネージャーの起動は必ずコマンドプロンプトから続けて起動してください。setで設定した内容は、このコマンドプロンプトの中でのみ有効となります。コントロールパネルから潜っていく、いつもの起動法では無効になったデバイスは出てきません。
・・・しかし、この環境では灰色のアイコンは出てきませんでした。
デバイスマネージャーで[現在使っているネットワークアダプタ名]#2を確認してみても「正常に動作しています。」の表示です。
ただ、どっちにしろ今のネットワークアダプタの挙動がおかしいので入れ直すこととします。
対応2:ネットワークアダプタの再インストール
デバイスマネージャーから消したいネットワークアダプタを右クリックして「アンインストール」を押しますが、注意点があります。
「このデバイスのドライバーソフトウェアを削除します。」にはチェックを入れません!
今回はデバイスのみを削除します。ドライバを消すとドライバの入手と再インストールが必要になり手間が掛かりますが、デバイスのみ削除であれば再起動することで勝手に復活します。
パソコン再起動後にデバイスマネージャーを起動するとネットワークアダプタが復活しています。
その後、再度IPアドレスの設定を行ったところ、エラーは出なくなりました。
※こちらのサイト様を参考にさせていただきました。
存在しないが情報として残っているネットワークアダプタを削除する方法
Windows 10でネットワークアダプターのドライバーを再インストールする方法 - Lenovo Support JP
しかし、ネットワークはつながるようになったが、信頼関係のエラーは直っていませんでした。まだ心を開いてくれないご様子。相当こじらせちゃったようです。
セキュアチャネルの修復
ネットワークが復活しても信頼関係に溝があるならいよいよセキュアチャネルの破損か?と思い、何とか直す方法はないか調べてみたらありました!
今度はコマンドプロンプトではなく「PowerShell」を使います。管理者権限で起動しましょう。
セキュアチャネルの状態確認の為に以下を入力します。
nltest /sc_verify:[ドメイン名]
「信頼の確認」欄が"Status = 0 0x0 NERR_Success"となっていればセキュアチャネルは正常です。
破損している場合は「信頼の確認」欄がErrorとなります。
破損していた場合は以下のコマンドで修復が可能です。
Test-ComputerSecureChannel -Repair成功すれば「True」,失敗すれば「False」と表示されます。
※こちらのサイト様を参考にさせていただきました。
セキュアチャネル破損の真相と衝撃
昨日の投稿 にて紹介しました、Viewデスクトップをスナップショットから復元した場合に仮想デスクトップのステータスが『プロトコル障害』となる問題については、セキュアチャネルの破損が原因だったのですが、どうにも気になって、、調べてみました。 セキュアチャネルについて纏めると・・...
セキュアチャネルが破損した際にコマンドで修復する方法
セキュアチャネルが破損した際にコマンドで修復する方法のご紹介です。セキュアチャネルが破損していると「このワークステーションとプライマリドメインとの信頼関係に失敗しました」とエラーメッセージが表示されWindowsへログインする事ができません。その時はPowerShellで次の修復コマンドを実施願います。
今回の環境でチェックをしてみたところ、セキュアチャネルは正常のようです。
念のため修復も走らせて「True」となりました。
しかしそれでも状況は変わらず。
キャッシュログイン
Windowsではドメインユーザーのログインがオフラインでもできるように「キャッシュログイン」というログイン方法があります。
パソコン内にログイン情報を持っていて、ネットに繋がっていないときはその情報を使ってログインします。
一度ユーザープロファイルを消したらログイン情報が消えるのでは、と思い、やってみましたが症状は変わらずです。
そこで、当時使用していたパスワードでログインできるかを試してみましたが、エラーのまま。更にLANケーブルを抜いて、再度当時使用していたのパスワードでログインを試してみたらログインできました。
恐らくLANケーブルが刺さっている状態ではオンラインとみなされ、ドメインサーバーと照合しに行くので、ノートパソコンで持っている情報と合致しないことから信頼関係のエラーが発生しますが、LANケーブルを抜くことでオフラインと認識されてキャッシュログインに切り替わるので、昔の情報を覚えていればログインができる、という仕組みだと思います。
ちなみに、キャッシュログインの時に使う「ドメインログオン情報」はレジストリに書かれているようです。ユーザープロファイルは関係ないので消し損でした。
ネットワークはつながっている、キャッシュログオンとはいえドメインユーザーでログオンできた。ならばここでLANケーブルを繋いだらADサーバーと通信が始まってドメインログオン情報が更新されるのでは!?と思い。1時間程そのままにしてから再起動、再度ログインしたら問題なくログイン出来るようになりました。
時系列で整理してみる
うちではパソコンのログインパスワードを半年に1回強制的に替えなければならないグループポリシーが設定されています。
このパソコンは最初に書いたように出番が少ないパソコンなので、前回ログイン時と現在までの間にログインしようとしたユーザーのパスワードが変更されていました。
パスワードの有効期限が切れた状態でログインしようとした場合でも信頼関係のエラーが発生するそうです。
そこで、今回の流れを図で書いてみました。
このように、別のパソコンでパスワードが変更されたことで、久々に使ったパソコンのドメインログオン情報とサーバーの情報に食い違いが出てしまい、エラーとなったものと思われます。
擬人化すると、半年前の話を蒸し返して家に入ろうとしたので「何よ!いまさらそんな昔の話!」って言われた、というところですかね。
ADパスワード有効期限の際、オフライン時キャッシュログオンアカウントでパスワード変更し、オンライン後ADログオンするとADパスワード有効期限となってしまう。
まとめ
ネットワークアダプタの件は大型アップデートの時に何件か食らっているので、アップデート後は特に注意が必要です。
信頼関係のエラーはパスワード変更が強制された環境下では特に起こりやすいエラーかと思います。長期間にわたってログインしていないパソコンでは尚更起こりやすいかと思います。
やはり、PCでも人でも信頼関係を保つ秘訣は密に連絡を取り合うことなんですね。86-eighty
six-のミリーゼ少佐の気持ちが少しわかったような気がします。
ということで、そのミリーゼ少佐が最悪な主従関係から信頼関係を築き上げていくストーリーのこちらをお勧めします。
作者の想いである「他人を自分と同じ人間として尊重すること。その上で後悔しないように生きること」を心に留めて、親豚様にあまりぐちぐち言わないように心改めたいと思います。