「DirectAccess」は、Windows 7およびWindows Server 2008 R2から利用できる企業ネットワークへの安全なリモートアクセス手段の一つです。しかし、現在のWindows 10とWindows 11では、DirectAccessは非推奨になりました。その代替として、「Always on VPN」が推奨されています。その導入手順を検証してみました。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
「DirectAccess」は、デバイスのネットワーク状態に応じてIPv4/IPv6移行テクノロジー(IPv6ネイティブ、6to4、Teredoなど)を利用して、IPsec(Security Architecture for Internet Protocol)またはHTTPSトンネルを自動接続し、企業ネットワーク内の企業リソースへの安全なアクセスと、企業ネットワーク側からのクライアントデバイスのリモート管理を可能にするテクノロジーです。DirectAccessは、「Windows Server 2008 R2」と「Windows 7 Enterprise/Ultimate」で初めて導入されました。
しかし、以下の公式ドキュメントに記載されているように、DirectAccessが大きく依存するIPv4/v6移行テクノロジーの多くは「Windows 10」で段階的に“既定で無効”にされており、利用は推奨されなくなっています。
また、以下の公式ドキュメントでは、“Windows 10以降の場合は、Always On VPNを使って接続することをお勧めします。DirectAccessは、Windows 10より前のクライアントにのみ使う必要があります。”と書いてあります。Windows 10/11は現状、DirectAccessクライアントとして機能するようですが、将来的には削除される可能性があるため、もし導入済みであるとしたら、「Always On VPN」や他のソリューションに移行を進める必要があります。
DirectAccessは複雑な機能ですが、ネットワークトポロジーの選択から始まるセットアップウィザードを使用して、比較的簡単に導入できます。「Windows Server 2012」以降は、証明書ベースの認証に使用するエンタープライズPKI(公開キー基盤)の導入や、2つの連続したパブリックなIPv4アドレス要件がなくなり、NAT(ネットワークアドレス変換)デバイスの背後への設置も可能になったため、小規模な環境でも簡単にセットアップできました。
一方、Always on VPNには、DirectAccessのような構成の全体をカバーするセットアップウィザードはありません。「Windows Server 2016」以降で「サーバーの役割」を適切に構成し、VPNプロトコル「IKEv2」を使用したRADIUS認証ベースのVPNサーバ環境を構築して、Windows 10以降のVPNクライアントを適切にセットアップする必要があります(図1)。
インフラストラクチャとしては、RADIUSサーバ機能を提供する「ネットワークポリシーサーバー」(画面2)と、VPNサーバ機能を提供する「リモートアクセス」(「RRAS」とも呼ばれます、画面3)の「サーバーの役割」の他、「Active Directoryドメインサービス」のActive Directoryドメインと「Active Directory証明書サービス」のエンタープライズ公開キー基盤(PKI)環境が必要です。
Always on VPNの必要最小限のインフラストラクチャを導入する手順について、ここで細かく説明はしません。その手順は複雑で、証明書テンプレートの設定など細かい構成が必要ですが、以下のチュートリアルから始まる3つのステップに従って操作すれば完了します。
ただし、日本語のドキュメントやWindowsの日本語UIには翻訳が誤っている部分が幾つかあるため(グループ名やグループ作成先のコンテナの間違い、「設定」アプリでIKEv2「モビリティ」がIKEv2「運動」と日本語化されているなど)、英語のオリジナルドキュメントも参考にしながら、慎重に作業してください。筆者の場合、チュートリアル通りに操作しても、VPNサーバやRADIUSサーバ用の証明書の登録がエラーになりました。このエラーは、証明書テンプレートの「セキュリティ」タブで「Authenticated Users」に「登録」を許可することで回避できました。
チュートリアルで説明されているWindowsのVPNクライアント設定は、Windows 10とWindows 11ではUIが異なるため、少し苦労するかもしれません。Windows 11の場合は、「設定」アプリの「ネットワークとインターネット」からVPN接続を作成した後、コントロールパネルの「ネットワーク共有センター」を開いて、作成されたVPN接続のプロパティを開き、認証プロトコルなどを詳細に設定する必要があります(画面4、画面5)。
これらの設定は、Active Directoryドメインに参加したデバイスで、企業内ネットワークで行います。このデバイスを社外のパブリックなネットワークに接続し、VPN接続の「接続」をクリックすれば、証明書ベースなので認証や通知のプロンプトが表示されることなく、素早く企業内ネットワークへの接続が確立します(画面6)。
Always on VPNといっても、ここまでの設定とエクスペリエンスは、どこをどう見ても「Always on(常にオン)」なVPN接続ではありません。認証を求められることはありませんが、手動での接続であり、「ネットワークとインターネット|VPN」からはワンクリックの操作、タスクバーからは数クリックの操作が必要です。
実は、Always on VPNのクライアントの設定は、「Microsoft Intune」や「Microsoft Configuration Manager」のVPNプロファイルを使用することで、詳細に構成することができます(画面7)。
これらのツールを使用してVPNプロファイルを作成すると、ユーザーまたはデバイス(デバイストンネル)の証明書で認証されたアプリやドメイン名、常にオン(Always on)の自動トリガー、条件付きアクセスなどの詳細設定を、ウィザードで比較的簡単に実装することができるのです。
つまり、Always on VPNとは、Windows ServerのVPNおよびRADIUSサーバをはじめとするインフラストラクチャと、Microsoft IntuneまたはMicrosoft Configuration ManagerのVPNプロファイルとの組み合わせで実現されるのです。または、Always on VPN対応のVPNプロファイルの詳細設定をPowerShellで展開する方法もあります(チュートリアルで説明されています)。
「Windows 8.1」では「自動トリガーVPN(Auto-triggerd VPN)」が標準機能として組み込まれており、Always on VPNのVPNプロファイルが実現する機能の一部はそれを利用しているものと思われます(画面8)。
PowerShellを使用して構成できる自動トリガーVPNを手動で構成すれば、VPNプロファイルで実現できる機能の一部(特定のアプリの起動やネットワークの状態変化による自動接続、既定では存在しない「自動的に接続」オプションの表示)を機能させることができました(画面9)。ただし、公式ドキュメントで説明されている方法ではないため、詳細は省略します。
岩手県花巻市在住。Microsoft MVP 2008 to 2024(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.