NPS拡張機能とAzure ADを利用して、RD GatewayのMFAを実現する

2023年1月16日掲載

キービジュアル

こんにちは、クラウドエンジニアの劉です。

今回はRD GatewayとAzure ADを連携し、MFAを実現する方法のポイントについて解説していきたいと思います。

目次

1.RD Gateway+NPS+Azure AD構成について

良くあるRD Gatewayを踏み台にした構成

まずはRD Gatewayを利用した一般的な構成を見てみましょう。

① ユーザーはLoad Balancerを経由して、RD Gatewayと認証を行います。

② RD Gatewayにてユーザー名とパスワードの認証を行います。

③ RD GatewayにてCAPとRAPのポリシールールの確認を行い、問題なければ対象のデスクトップへのログインを許可します。

 

※CAPとRAPポリシーとは

CAP(Connection Authorization Policy)接続承認ポリシー
⇒ RD Gatewayに接続できるユーザーを定義するポリシー

RAP(Resource Authorization Policy)リソース承認ポリシー
⇒ RD Gatewayを経由して接続できるリソースを定義するポリシー

上記はよくあるRD Gatewayを踏み台にしたソリューションですが、ではAzure ADと連携させ、MFAを実現する構成を見ていきましょう。

Azure ADと連携させ、MFAを実現する構成

①ユーザーはLoad Balancerを経由して、RD Gatewayに対してログイン要求を送信します。

②RD GatewayからNPSサーバに対してRadius Access-Requestを送信します。

③NPSサーバからローカル ADに対して、RD Gatewayのユーザー名とパスワード認証を要求します。ローカルAD側にて許可します。

④NPSサーバからAzure ADに対して、該当ユーザーのMFA認証を要求します。Azure ADにてMFA認証をユーザーのMFAデバイスに送信します。

⑤ユーザー側にてMFA承認を行い、Azure ADからNPSサーバに対して、MFA認証成功のメッセージを送信します。

⑥NPSサーバからRD Gatewayに対してRadius Access-Acceptを送信します。

以上でRD GatewayのMFA認証フローとなります。

2.構築の際のハマりポイントと注意事項

上記の構成を以下の三つのステップに分けて解説していきたいと思います。

①ローカルAD環境の構築

②ローカルAD⇨Azure ADとユーザー同期

③RD GatewayとNPSサーバの構築

具体的な構築手順は今回省略しますが、自分がこの構成を構築する上でハマっていた部分や注意事項についてご紹介したいと思います。

①ローカルADの構築

一つだけ注意事項として、後ほどAzure ADとAzure AD Connectを利用してユーザー同期を行うため、Azure AD Custom Domainにローカルドメインを登録する必要があります。実在のドメインを取得する必要がありますので、よく利用されている.localドメインは利用できないのでご注意ください。
必ず実在のドメインを取得する上で、ローカルADを構築しましょう。

②ローカルAD⇨Azure ADとユーザー同期

以下のUrlからAzure AD Connectをダウンロードし、インストールを実行します。

Microsoft Azure Active Directory Connect

Azure AD Connectインストール時の注意事項についてご紹介していきます。

(1)事前にローカルADドメインをAzure Custom Domainに登録を行います。ドメイン認証が必要なので、Azure Portalの指示に従って認証を行い、Status欄にverifiedとなります。

 

(2) Azure ADのユーザー名とパスワードを入力する画面では、Azure AD Global Administrator権限を持つユーザーを入力する必要があります。

操作画面

(3)ローカルADのアカウントの入力画面では、Enterprise Adminsグループに所属されているユーザーを指定する必要があります。

(4)無事にアカウント設定が終われば、以下の画面が表示されます。

(5)全ての設定が終わった後、少し時間が経つと、Azure AD上にローカルADおよび指定の同期ユーザーが同期されます。

(6)同期されたユーザーのMFAを有効にします。

上記画面にてユーザーを選択し、「Per-user MFA」をクリックし、MFAの有効化を行います。

MFAを有効にするにはAzure AD P1/P2ライセンスを購入する必要がありますのでご注意ください。

また、MFAを有効にする際はMicrosoft Authenticatorアプリを利用する必要があります。

 

③RD GatewayとNPSサーバの構築

(1)以下の文章の用語について

・RD Gateway(NPS):RD GatewayサーバのNPS機能を指します。
・NPS(NPS):NPSサーバのNPS機能を指します。

(2)RD Gatewayサーバの注意事項について

RD Gatewayを構築した後、NPS機能も一緒にインストールされますが、今回はAzure MFAと連携するため、独立するNPSサーバを構築する必要があります。

以下の図のようにRD GatewayのNPSサーバを独立したNPSサーバに設定します。

通常は「Local server …」ですが、今回は「Central server  …」を選択し、NPSサーバのアドレスを入力します。

(3)NPSサーバの注意事項について

以下のUrlからNPS Extension For Azure MFAをダウンロードして、インストールします。

NPS Extension for Azure MFA

インストール中にAzure ADのGlobal Administrator権限を持つユーザーの認証情報求められますので、入力します。(事前にIEセキュリティ強化設定を無効にすることを推奨します。)

(4)具体的な設定値は省略しますが、まとめとして、それぞれのサーバにて以下の設定を行う必要があります。

 

■RD Gatewayサーバにて設定する項目は以下になります。

1.CAPサーバをNPSサーバに指定します。

2.RAPポリシーを作成します。

3.RD Gateway(NPS)にて、RADIUS ClientsとRADIUS Server Groupを作成します。

4.RD Gateway(NPS)にて、Connection Request Policiesを作成します。

5.RD Gateway(NPS)をローカルADに登録します。

 

■NPSサーバにて設定する項目は以下になります。

1.NPS Extension For Azure MFAをインストールします。

2.NPS(NPS)にて、RADIUS ClientsとRADIUS Server Groupを作成します。

3.NPS(NPS)にて、Connection Request Policiesを作成します。

4.NPS(NPS)にて、Network Policiesを作成します。

5.NPS(NPS)をローカルADに登録します。

RD Gateway(NPS)とNPS(NPS)が混在していて、どのサーバにどの設定すればいいか分かりづらいかもしれませんが、上記のまとめがお役に立つと幸いです。

3.動作確認およびログイベント

①動作確認

通常通りにRD Gateway経由でターゲットのDesktopにログインを行います。

ログインボタンを押した後、携帯のMicrosoft Authenticatorに以下のような通知がきます。

Approveをクリックすれば、MFA認証完了となり、ターゲットのデスクトップにログインできるようになります。

※Microsoft Authenticatorの携帯通知は必ずオンにしましょう。通知オフにすると認証が失敗します。

②最後に正しく認証後のイベントログを載せます。みなさんのトラブルシューティングの役に立つと幸いです。

RD Gateway CAPポリシー認証イベント:

RDGateway RAPポリシー認証イベント:

NPSサーバの認証イベント:

まとめ

ここまで読んでいただきありがとうございます。

今回の記事は以上となります。昨今セキュリティ要件が厳しくなる中で、みなさんの役に立てたら幸いです。

関連サービス

Microsoft Azure

Microsoft Azureは、Microsoftが提供するパブリッククラウドプラットフォームです。コンピューティングからデータ保存、アプリケーションなどのリソースを、必要な時に必要な量だけ従量課金で利用することができます。

MSPサービス

MSP(Managed Service Provider)サービスは、お客さまのパブリッククラウドの導入から運用までをトータルでご提供するマネージドサービスです。

おすすめの記事

条件に該当するページがございません