UserLock OTP認証エラー「ClsdException(ID=11/1398)」の原因と対処法|Active Directoryログオン失敗を解決

Active Directory環境でUserLockのログオン時にOTPを入力した直後、”ClsdException”…と表示されログインできない場合は、端末がUserLockサーバーへ到達できない(VPN未接続・SMB/445遮断・DNS不良)など通信要因が多いです。本記事は最短復旧の手順と恒久対策を解説します。

目次

UserLockでOTP入力後に認証エラーが出るときに起きていること

問い合わせでよく挙がる症状は、Windowsのサインイン画面でワンタイムパスワード(OTP)を入力した直後に、次のような例外メッセージが表示され、そのままログオンが失敗するケースです。

“ClsdException” caught, ID = 11(“(NULL)”), last error = 1398(“(NULL)”)

このタイプのエラーは、UserLockの認証(MFA/OTP)そのものが「必ず」壊れているというより、OTP入力後にUserLockエージェントがUserLockサーバーへ到達できず、ポリシー照合やMFA判定が完了しない状況で発生しやすいとされます。特に、端末が社内ネットワークに未接続(VPN未接続含む)である、あるいは必要な通信(ICMP/SMB等)が遮断されている場合は最優先で疑います。

最短で復旧させるためのチェックリスト

まずは「原因究明」より先に、現場で最短復旧につながりやすい確認順で潰していきます。下表の上から順にチェックすると、遠回りになりにくいです。

優先確認ポイント具体的な確認方法ダメだった場合の方向性
高社内ネットワーク/VPN接続VPNが接続済みか、社内DNSが引けるかVPNのプリログオン対応、ネットワーク経路/DNSを修正
高UserLockサーバーに到達できるping、共有(\\server)、TCP445疎通FWでSMB(445)やICMPが遮断、名前解決不良を疑う
中UserLockサービス稼働UserLockサーバーでサービス稼働、イベントログ確認サービス停止/異常、サーバー負荷、再起動やログ解析
中AD側の異常(ロックアウト等)ロックアウト/無効/期限切れ、イベントID確認アカウント復旧、認証経路(DC/DNS)修正
中端末時刻/サーバー時刻w32tm、スマホ時刻自動設定TOTP不一致の可能性、NTP/ドメイン時刻階層を整備
低特定ユーザーのみ再現別ユーザーで試すユーザーのMFA状態・所属グループ・ポリシー衝突の疑い

通信の全体像を把握して切り分けを早くする

UserLockは、ログオン時に端末側(Desktop Agent / Credential Provider)がUserLockサーバーへ問い合わせ、サーバー側は必要に応じてActive Directory(DC/GC)やデータベース等と連携します。つまり、OTP入力後に失敗する場合でも、ボトルネックは「OTP」以外(ネットワーク、サーバー到達性、AD参照)であることが少なくありません。

特に重要なのが、UserLock Desktop AgentとUserLockサーバー間で必要になる通信です。公式ドキュメントでは、少なくともICMP(疎通確認)と、SMB(TCP 445)による通信が必要である旨が整理されています。

通信元 → 通信先目的プロトコル/ポート例詰まったときの典型症状
端末 → UserLockサーバーログオン可否判定、MFA/ポリシー照合ICMP、SMB TCP 445OTP後に例外、ログオン失敗
UserLockサーバー → DC/GCユーザー認証、グループ参照LDAP TCP 389、GC TCP 3268、SMB TCP 445認証遅延、ユーザー照合失敗
UserLockサーバー ↔ 端末エージェント管理、リモート操作/状態確認SMB、Remote Registry、RPC等エージェント配布/状態確認が失敗

※環境の構成(バックアップサーバー、UserLock Anywhere、SQLの置き場所等)によって、必要な通信は増えます。通信要件の整理は「いま必要な範囲」に絞って考えるのがコツです。

原因で最も多い:端末が社内ネットワークにいない(VPN未接続含む)

このエラーに関しては、端末が社内ネットワークに接続できていない(VPNが切れている/ログオン前にVPNを張れない/社内DNSに到達できない)ケースがまず疑われます。Microsoft Q&Aの回答でも、当該エラーはUserLockサービスへの接続性に起因する可能性が示唆され、端末が社内ネットワークに接続されていない状況で発生し得るとされています。

疎通確認は「pingだけ」で終わらせない

pingが通っても、SMB(445)が塞がれていればUserLockの通信が成立しないことがあります。次の3点をセットで確認してください。

  • 名前解決:FQDNでUserLockサーバーが引けるか(UserLockはFQDN利用が前提になりやすい)
  • ICMP:UserLockサーバーにpingが届くか
  • SMB:\\UserLockServerFQDN が開けるか、TCP 445が到達できるか
# DNS/FQDN確認
nslookup userlockserver.example.local

# ICMP疎通
ping userlockserver.example.local

# SMB疎通(共有一覧が開けるか)
explorer \\userlockserver.example.local

# TCP 445疎通(PowerShell)
Test-NetConnection userlockserver.example.local -Port 445

UserLockエージェントは、通信前にpingを行い、その後SMB(TCP 445)でUserLockサーバーと通信する流れが説明されています。したがって、VPN越し・拠点間越し・端末FW越しのいずれでも、TCP 445が通らない設計だとOTP入力後に失敗しやすい、という見立てが立ちます。

Windows Defender Firewall / 社内FWで塞がれやすいポイント

セキュリティ強化(ハードニング)で「ファイル共有は不要だから閉じる」としてSMBを塞いだ結果、UserLockの動作要件に当たってしまうのは現場でよくある落とし穴です。公式のガイドでは、UserLockサーバーと保護対象端末間の通信のために、Windows FirewallでFile and Printer Sharing(ICMP/SMB)関連のルールを有効化する手順が示されています。

ルール例方向意図実務のポイント
File and Printer Sharing (Echo Request – ICMPv4-In / ICMPv6-In)受信疎通確認「許可する送信元」をUserLockサーバーのIPに限定して安全性を上げる
File and Printer Sharing (SMB-In)受信SMB通信445を全開放せず、サーバー↔端末の範囲だけ通す設計にする

大規模環境では、端末ごとの手作業よりもGPO(グループポリシー)でFWルールを配布・統制したほうが「いつの間にか塞がっていた」を防げます。ガイドでもGPO配布が推奨されています。

リモート端末は「ログオン前にVPNが張れるか」が勝負

OTP入力が必要なログオンで失敗する端末がリモートワーク中心の場合、Windowsログオン画面の時点でVPNに接続できないことが原因になることがあります。UserLockの設定ガイドでは、LAN/VPNがない状況でもエージェントがUserLockサービスへ到達できる仕組み(UserLock Anywhere)や、ログオン画面からVPN接続できるようにする考え方が整理されています。

運用としては、次のいずれかの方針に寄せると安定します。

  • プリログオンVPN(ログオン画面VPN)を採用:ログオン前に社内へ入れるようにする
  • UserLock Anywhereの利用を検討:社内LAN/VPNに依存しにくい認証設計にする(クラウド/オンプレのモードがある)

特にUserLock Anywhereでは、端末が一度LAN/VPN経由でUserLockサービスに接触して“準備完了”状態になっていないと、リモート認証が成立しない端末が出る点が注意事項として説明されています。

UserLockサービスやエージェントの状態を確認する

UserLockコンソールで「エージェントが生きているか」を見る

端末側の問題か、サーバー側の問題かを分ける最短ルートは、「UserLockコンソールで当該端末が活動(セッション)として見えているか」を確認することです。公式の“Verify your setup”では、アクティブセッションが見えない場合にエージェント側の問題の可能性を示し、端末ダッシュボードからエージェント状態を確認する手順が案内されています。

  • UserLockコンソール → Environment ▸ Machines
  • 対象端末を選択 → Actions → Check the agent status

端末側のサービス(ULAgentService)の確認

UserLock Desktop Agentには「UserLock agent service(ULAgentService)」が含まれることが明記されています。端末側でこのサービスが停止している、もしくは破損していると、ログオンフローに影響が出る可能性があります。

# 端末で実行(管理者)
Get-Service -Name ULAgentService -ErrorAction SilentlyContinue
# 見つからない/停止なら、インストール状態やサービス起動を確認

公式のリモートアクセステストで「必要条件」を一気に洗い出す

「pingは通るのに直らない」「端末が多くて個別に追えない」場合は、公式ガイドにある“通信要件の実地テスト”が強力です。ここで躓く箇所が、そのまま原因候補になります。

テストどこで実施目的失敗時に疑うこと
explorer \\COMPUTERFQDN\ADMIN$UserLockサーバー(サービスの偽装/impersonationアカウントで)admin$共有+権限+SMB疎通SMB遮断、権限不足、admin$無効
リモートレジストリ接続(regedit → Connect Network Registry)UserLockサーバーRemote Registry / RPC疎通Remote Registry停止、RPC遮断、FW
UlTermの REMOTEACCESSTESTUserLockコンソール詳細診断出力をそのまま保全し、設計/ルールを修正
UlAgentExe.exe /REMOTEACCESSTEST端末側エージェント目線の通信診断端末FW、名前解決、VPN経路

また、要件として「保護対象端末でRemote Registryサービスが有効・起動していること」や、「admin$共有が無効化されている場合のレジストリ設定(AutoShareWks/AutoShareServer)」が挙げられています。端末側でこれらが無効化されていると、エージェント管理や診断が詰まり、復旧が遅れやすくなります。

Active Directory側の確認:ロックアウトやDC到達性を潰す

OTP入力後に失敗して見えても、裏ではAD側の制御(ロックアウト、無効化、期限切れ、DC到達不可)が絡んでいることがあります。特に、VPN越しでDNSが不安定だと「UserLockには届くがDCに届かない」などの歪な状態になりやすいので、ADの基本チェックも同時に実施します。

アカウントロックアウトの確認(PowerShell)

# 管理端末/サーバーで実行(RSAT/ADモジュールが必要)
Get-ADUser -Identity <ユーザー名> -Properties LockedOut | Select-Object LockedOut

# 併用すると一覧確認に便利

Search-ADAccount -LockedOut | Select-Object Name,SamAccountName

イベントログで「何が拒否したか」を見える化する

原因切り分けでは、端末・UserLockサーバー・DCのイベントログを“同じ時刻帯”で突き合わせるのが効果的です。最低限、次のイベントを押さえておくと会話が早くなります。

ログ代表的なイベントID見るべき内容
Windowsログ > セキュリティ(DC)4740アカウントロックアウト発生の有無
Windowsログ > セキュリティ(端末/サーバー)4625ログオン失敗の理由(ユーザー名/ログオン種別/失敗理由)
Windowsログ > アプリケーション(UserLockサーバー)(環境依存)UserLock関連エラー、サービス停止、通信失敗

ポイントは、「OTPを打った瞬間」に端末側で何が起き、サーバー/DC側で何が起きたかを時系列で並べることです。ログを取らずに対症療法だけを繰り返すと、再発時にまたゼロからになります。

OTP(ワンタイムパスワード)の落とし穴:時刻ずれとオフライン動作

TOTP系のOTPは時刻に依存するため、スマホの時刻ずれ・端末時刻ずれ・サーバー時刻ずれが大きいと失敗します。特に在宅端末で「手動で時刻を変えていた」「休止復帰後に時計がずれた」「NTPが社内に向かず同期できていない」などが重なると、入力自体は正しくても判定が通りません。

スマホ側:自動時刻を有効化する

  • スマホの「日付と時刻」設定を自動にする
  • タイムゾーンも自動にする(海外出張・VPN利用時のズレ対策)

Windows端末/サーバー側:時刻同期を確認する

# 状態確認
w32tm /query /status

# 同期の再実行(権限が必要)

w32tm /resync

加えて、UserLock側には「社内ネットワークに接続できずUserLockサービスへ到達できないログオン(Logons without UserLock connection)」に対する動作方針が用意されています。つまり、オフライン/到達不可時に、常に許可するのか、MFAを求めるのか、拒否するのかを設計できます。リモートワークが前提の組織では、この設定が曖昧だと“ある日突然ログオンできない”が起きやすいです。

設定方針挙動のイメージ向いている環境
Always allow logins到達不可でもログオン自体は通るオフライン作業が多く、可用性優先
Ask for MFA / Force MFA条件によりMFA要求、満たせない場合は拒否在宅でもMFAを維持したいが運用は柔軟にしたい
Always deny logins到達不可なら必ず拒否機密端末・ゼロトラスト寄りで“社外は許可しない”方針

なお、Windowsにはドメインコントローラーが利用できない場合でもキャッシュ資格情報でログオンできる仕組みがあり、これはUserLockとは独立した挙動になり得ます。オフライン時の許容/拒否は、UserLock側の設計とWindows側の仕様の両方を踏まえて決める必要があります。

切り分けのコツ:別ユーザー・別端末で再現性を取る

「この端末だけ?このユーザーだけ?」を早めに切り分けると、調査の当たりが付けやすくなります。

再現パターン疑う順番次の一手
すべてのユーザーで同じ端末だけ失敗端末のFW/ネットワーク/VPN、エージェントTCP445疎通、エージェント状態、REMOTEACCESSTEST
特定ユーザーだけ複数端末で失敗ユーザーのMFA状態、ポリシー衝突、ロックアウトADロックアウト確認、UserLockポリシー適用状況確認
社外(在宅/出張)だけ失敗プリログオンVPN、UserLock Anywhere、DNSログオン画面VPN、UserLock Anywhere設計へ

再発防止:運用と設計で“たまに失敗”をなくす

ファイアウォールルールはGPOで統制し、範囲はIPで絞る

「一度直ったのに再発する」は、端末のFWプロファイル変更、別のセキュリティ製品、ベースライン適用、Windowsアップデート後の設定戻りなどで起きます。公式ガイドの通り、GPOで必要ルールを配布し、ScopeでUserLockサーバーと端末の範囲に絞ると、セキュリティと可用性のバランスが取りやすくなります。

リモートワーク前提ならUserLock Anywhereを検討する

「社内にいないと動かない」設計のままリモートワークを増やすと、VPN・回線品質・拠点FWの影響を受け続けます。UserLockは、LAN/VPNがない状況でもエージェントがUserLockサービスへ到達できる仕組み(UserLock Anywhere)を提供しており、一般設定にも項目として整理されています。要件や端末の“Cloud-ready”条件もあるため、導入前に対象端末の状態を洗い出すのが重要です。

障害時のエスカレーション用に「取るべき情報」をテンプレ化する

ベンダー/社内運用へエスカレーションする際に、次の情報が揃っていると解決までの往復が減ります。

  • 発生日時(タイムゾーン含む)
  • 対象ユーザー(SamAccountName)
  • 対象端末名(FQDN/NetBIOS)
  • 端末が社内/VPN/社外のどこにいたか
  • ping、Test-NetConnection -Port 445の結果
  • UserLockコンソールのエージェントステータス結果
  • REMOTEACCESSTESTの出力(可能なら)
  • イベントログ(4740/4625/UserLock関連)の該当時刻帯

よくある質問

SMB(445)を開けるのが不安です。回避できますか?

UserLock Desktop Agentは、UserLockサーバーとの通信にSMB(TCP 445)を用いる旨が公式ドキュメントに説明されています。従って「完全に閉じたまま」での安定運用は難しく、代替策としては開放範囲をIPで絞る、拠点間はVPN/専用線で閉域にする、社外はUserLock Anywhereへ寄せる、といった設計が現実的です。

エラー表示そのものをユーザーに見せたくありません

UserLockには、エージェントとサーバーの通信問題(ネットワーク障害やサーバー問題)でログオン/ログオフ時に出るエラーを非表示にする設定が用意されています。ユーザー体験の改善には有効ですが、根本原因(到達性やFW)は残るため、恒久対策とセットで使うのがおすすめです。

まとめ

“ClsdException”(ID=11 / last error=1398)でOTP入力後にログオンできない場合、最初に疑うべきは端末→UserLockサーバーの到達性です。特にリモートワークでは「VPNがログオン前に張れない」「SMB(445)が塞がっている」「DNS/FQDNで引けない」の3つが原因になりやすいです。次に、UserLockサービス/エージェントの状態、ADのロックアウトや到達性、時刻同期を順に潰していけば、原因へ最短で到達できます。公式のREMOTEACCESSTESTやエージェントステータス確認を併用し、再発しない“運用設計”まで落とし込むのがゴールです。

この記事を書いた人

実務の現場で詰まりがちなポイントを地図にするITブログ「IT trip」を運営。Windows/Office(Teams・Excel)からSQL、サーバ運用、ガジェットまで、再現性のある手順と“なぜそうなるか”を丁寧に解説します。読んだらすぐ試せること、そして迷った人の次の一歩が見えることを大切にしています。

コメント

コメントする

目次