役割のインストールは一般的なエラーで止まり、イベントログには手がかりがほとんど残りません。これが起きるサーバーでは、足りない部品はウィザードの中にはなく、Remote Access サービスが Starting の状態から抜け出しません。自らの初期化を完了できない役割は再試行のたびにまた失敗するので、サービスが先でウィザードは後です。ログオンの権利を直すのに数分かかり、役割を何度も再インストールしても直りません。

役割のウィザードではなくサービスから始める

管理者としてコマンドプロンプトを開き、役割に触る前にサービスの構成を読みます。重要な値は二つで、開始の種類とサービスが動くアカウントです。既定のインストールでは、サービスは Network Service の下で自動の遅延開始として登録されます。

状態が Running ではなく Starting で止まっているなら、サービスは手に入らない何かを待っており、ログオンの権利がいつもの候補です。長く待っても、開始はすでに失敗しており Service Control Manager がそれを保留中として報告するので助かりません。サービスをきれいに停止して構成をもう一度読み、イベントログでサービスの開始の試みを見てください。失敗の横にアカウント名が出るのはそこです。

役割のウィザードは初期化に失敗したとしか報告しないので、サービスの診断が先なのです。

再インストールの前にログオンの権利を読む

Network Service は開始するためにサービスとしてログオンする権利を必要とします。組み込みのアカウントは通常グループのメンバーシップでこれを得ますが、強化されたベースラインやポリシーの更新が奪うことがあります。グループポリシーは次の更新で勝つので、手動の付与は警告もなくまた消えることがあります。

ローカルセキュリティポリシーをエクスポートし、 GUI を信じるのではなくエントリを読みます。そうすれば更新の後に比較するファイルが残るので、変更が残ったかを知る唯一の方法になります。エントリが空か、アカウントが抜けていれば、不具合は見つかりました。恒久的な修正が必要なのはそのオブジェクトなので、どのポリシーオブジェクトが設定しているかを記録してください。

secedit /export /cfg C:\Windows\Temp\secpol-export.inf
Select-String -Path C:\Windows\Temp\secpol-export.inf -Pattern SeServiceLogonRight
sc.exe qc RemoteAccess
Get-Service RemoteAccess | Format-List Name, Status, StartType

ローカルで適用され、次の更新でポリシーに上書きされる付与は、効かなくなった修正のように見え、同じようにまた失敗します。

構成を書き直すアカウントの往復

近道は、ポリシーを手で編集せずにアカウントを変えて適用し、パスワード欄を空のまま元に戻すことでサービスのログオン構成を修復します。

この往復はサービスのレコードを書き直し、アカウントに必要な権利を再び与えます。根本原因の修正ではなく回避策なので、日付を添えて変更記録に入れるべきです。ベースラインがサーバーを管理している場合は、そのベースラインのサービスとしてログオンの割り当てにアカウントを追加するのが正しい修復です。できるときはまずそれをやり、往復は行き詰まったインストールを解くときだけ使ってください。

sc.exe config RemoteAccess obj= "NT AUTHORITY\LocalService" start= demand
Start-Service RemoteAccess
sc.exe config RemoteAccess obj= "NT AUTHORITY\NetworkService" start= delayed-auto
Start-Service RemoteAccess

一方のアカウントでは起動してもう一方では起動しないサービスが、各コマンドの後に見る状態からどの権利が欠けているかを教えてくれます。

役割をインストールし、インストールされたことを証明する

サービスが動いた状態で、役割をもう一度追加し、実際に使う予定の VPN サブ機能を含めます。汎用の役割だけでは、動く VPN エンドポイントは得られません。

Install-WindowsFeature DirectAccess-VPN -IncludeManagementTools
Get-WindowsFeature RemoteAccess, DirectAccess-VPN, Routing
Get-Service RemoteAccess

サブ機能が Available ではなく Installed と報告することを確認し、コンソールを開いて、他の誰かが機械に触る前に初期構成を終えます。コンソールがまだサービスが動いていないと主張するなら、役割を削除するのではなくサービスの確認に戻ってください。

何を変えたかを書き留める

ウィザードの最初の選択は、ファイアウォールの規則、アドレスの割り当て、サーバーが DHCP リレーを期待するかどうかを決めます。少数のポイントツーサイトのクライアントに、サイトツーサイトのエンドポイントの形は要りません。クリックする前に、役割、アドレスプール、認証方式、証明書の入手元を決めてください。ここで当てずっぽうをすると、きれいにインストールされ、決して接続を受け付けないサーバーができます。

サービスアカウントの逸脱は同じメモに残します。既定のアカウントを戻す強化の工程は、診断した人が去って何か月も後に、次の再起動で不具合を復活させることがあります。

関連記事