Duo を AWS Managed Microsoft AD で使用して、クライアント VPN エンドポイントに接続するエンドユーザーに多要素認証を提供する方法を教えてください。
Microsoft Active Directory 用の AWS Directory Service で Duo を使用したいと考えています。AWS Client VPN エンドポイントに接続するエンドユーザーに多要素認証 (MFA) を提供したいと考えています。
簡単な説明
クライアント VPN は、次の種類のエンドユーザー認証をサポートします:
- 相互認証
- Active Directory 認証
- デュアル認証 (相互認証と Active Directory 認証)
Duo の最新バージョンでは、2 要素認証としてエンドユーザーに送信されるプッシュ通知を利用しています。レガシー Duo の実装では、エンドユーザーが Duo モバイルアプリを使用して多要素認証 (MFA) コードを生成する必要があります。次に、このコードをクライアント VPN で使用します。
MFA サービスは Active Directory でオンにする必要がありますが、クライアント VPN で直接オンにする必要はありません。
**注:**ご使用の Active Directory タイプが MFA をサポートしている必要があります。新規および既存のクライアント VPN の両方が MFA 機能をサポートしています。
解決策
AWS Managed Microsoft AD を作成して設定する
-
Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスを AWS Managed Microsoft AD ディレクトリに追加します。このインスタンスは、Active Directory でサービスをインストールし、ユーザーとグループを管理します。インスタンスは Active Directory に関連付けられている必要があります。「AmazonEC2RoleforSSM」ポリシーを添付した AWS Identity and Access Management (IAM) ロールを追加する必要があります。
-
次のコマンドを実行して Amazon EC2 インスタンスにログインします。
Username: Admin@ad_DNS_name Password: <Your Admin password>
注:****管理者パスワードを、Active Directory 用に作成した管理者パスワードに置き換えてください。
-
管理者モードでは、PowerShell を使用して次のサービスをインストールします:
install-windowsfeature rsat-ad-tools, rsat-ad-admincenter, gpmc, rsat-dns-server -confirm:$false
-
Active Directory ユーザーと Active Directory グループを作成し、これらのユーザーを適切な Active Directory グループに追加します。
**注:**これらの Active Directory ユーザーは、クライアント VPN エンドポイントに接続するエンドユーザーと同じです。 -
次のコマンドを実行して、Active Directory グループの SID を取得します。Your-AD-group-name を Active Directory のグループ名に置き換えてください。
Get-ADGroup -Identity <Your-AD-group-name>
**注:**クライアント VPN 認証ルールを設定する場合、このグループの Active Directory ユーザーを認証するには SID が必要です。
Duo をインストールして設定する
- Duo にサインアップするか (Duo ウェブサイト)、Duo にログインします。
- Duo アプリケーションをモバイルデバイスにインストールします。指示に従って Duo アカウントを認証してください。
- Duo ウェブアカウントで、左側のナビゲーションペインから [アプリケーション] を選択します。
- 検索フィールドに「** RADIUS**」と入力し、[保護] を選択します。
- ナビゲーションペインで [ユーザー] を選択してから、[ユーザーの追加] を選択します。[ユーザー名] に、エンドユーザーの名前を入力します。名前は Active Directory ユーザーの名前と一致する必要があります。名前は、エンドユーザーが Client VPN エンドポイントへの接続を認証する際に使用するユーザー名とも一致している必要があります
- ユーザーを個別に選択し、電話番号を追加します。エンドユーザーは、ここに入力した番号を通じて MFA コードを受け取ります。
- 各ユーザーの [Activate Duo Mobile] を選択し、次に [Generate Duo Mobile Activation Code] を選択します。ユーザーにアクティベーションリンクを通知する方法は 2 つあります。[Send Instructions by SMS] を選択して、アクティベーションリンクを各エンドユーザーに電子メールで送信できます。または、このステップをスキップすることを選択することもできます。次に、各エンドユーザーのアクティベーションリンクをコピーし、そのリンクを各ユーザーに手動で送信します。
- EC2 Windows インスタンスを起動します。このインスタンスを使用して Duo Radius アプリケーションを設定および管理します。インスタンスは Active Directory に関連付けられている必要があります。また、インスタンスには正しい IAM ロールとインターネットアクセスが必要です。インスタンスのセキュリティグループ、ネットワークアクセスコントロールリスト、ルートテーブルを確認してください
- Duo Radius アプリケーションを管理する EC2 インスタンスにログインします。次に、Windows 用の認証プロキシ をインストールします (Duo ウェブサイト)。
- C:\Program Files (x86)\Duo Security Authentication Proxy\conf\authproxy.cfg にある「authproxy.cfg」設定ファイルに移動します。
- 設定ファイルを編集します。ファイルがどのように見えるかの例を以下に示します:
[duo_only_client] [radius_server_auto] ikey=XXX skey=YYY api_host=api-ZZZ.duosecurity.com radius_ip_1=<AD-DNS-address#1> radius_secret_1=<My-password> radius_ip_2=<AD-DNS-address#2> radius_secret_2=<My-password> failmode=safe client=duo_only_client port=1812
ikey (統合キー)、skey (シークレットキー)、** api\ _host** (Duo の API ホスト名) の値を確認するには、以下の手順を実行してください:
- Duo ウェブサイトで Duo ウェブアカウントにログインします。
- [ダッシュボード]、[アプリケーション]、[Radius] を選択します。
- [詳細] の値を参照してください。
radius_ip_1 と radius_ip_2 の値を確認するには、次の手順を実行してください::
- AWS マネジメントコンソールにログインします。
- [Directory Service] を選択し、次に [ディレクトリ] を選択します。
- Active Directory を選択します。
- [詳細] でで [DNS アドレス] セクションの address_ip#1 とaddress_ip#2 を参照してください。
注: AWS AD_connector を使用する場合、address_ip#1 と address_ip#2 は AD_connector の IP です。
必要に応じて、次の手順を実行してください:
- radius_secret_key を設定します。
- ポートを変更します。
セキュリティグループ設定を変更する
- AWS マネジメントコンソールにログインします。
- [セキュリティグループ] を選択します。
- ディレクトリコントローラーのセキュリティグループを選択します。
- Active Directory のセキュリティグループのアウトバウンドルールを編集します。Radius サーバーの宛先 IP アドレス (プライベート IP) に UDP 1812 (またはRadius サービスポート) を許可するルールを設定します。または、ユースケースで許可されている場合は、すべてのトラフィックを許可します。
Duo 認証サービスが実行中であることを確認する
- Radius EC2 Windows インスタンスにログインします。
- [サービス] で、[Duo Security Authentication Proxy Service] を探します。サービスが [実行中] 状態でない場合は、[サービスの開始] を選択します。
AWS Managed Microsoft AD で MFA を有効にする
- AWS マネジメントコンソールにログインします。
- [Directory Service] を選択し、次に [ディレクトリ] を選択します。
- Active Directory を選択します。
- [ネットワークとセキュリティ] で [多要素認証] を選択します。次に、[アクション] を選択し、[有効にする] を選択します。
- 次の情報を入力します:
[RADIUS server DNS name or IP addresses] には、EC2 Windows インスタンスのプライベート IP アドレスを入力します。
[Port] には、「authproxy.cfg」ファイルで指定されているポートを入力します。
[Shared secret code] には、「authproxy.cfg」ファイルの radius_secret_key の値を入力します。
[Protocol] に [HTTP] を選択します。
[Server timeout] に値を入力します。
[Max RADIUS request retries] に値を入力します。
クライアント VPN エンドポイントを作成する
- AWS Managed Microsoft AD と MFA をセットアップしたら、クライアント VPN エンドポイントを作成します。MFA が有効になっている Active Directory を使用します。
- 新しいクライアント設定ファイルをダウンロードして、エンドユーザーに配布します。
**注:**クライアント設定ファイルは、AWS マネジメントコンソール、AWS コマンドラインインターフェイス (AWS CLI)、または API コマンドからダウンロードできます。 - クライアント設定ファイルに次のパラメータが含まれていることを確認します:
auth-user-pass static-challenge "Enter MFA code " 1
**注:**二重認証 (たとえば、相互認証 + Active Directory 認証) を使用する場合は、クライアント <cert> および <key> を設定ファイルに追加します。
エンドユーザーデバイスを設定する
- エンドユーザーのデバイスで、アクティベーションリンクをたどって Duo アプリケーションをモバイルデバイスにインストールします。
- デスクトップ用クライアント VPN ツールをインストールします。
**注:**また、標準の OpenVPN ベースのクライアントツールを使用して、クライアント VPN エンドポイントに接続することもできます。 - クライアント設定ファイルを使用してプロファイルを作成します。
- お使いの Duo バージョンに適したクライアント VPN エンドポイントに接続します:
レガシー Duo バージョン
Active Directory のユーザー認証情報を入力します。次に、Duo アプリケーションが生成する MFA コードをクライアント VPN に入力します。Duo はこの MFA コードを検証します。
**注:**使用するクライアント VPN のバージョンとオペレーティングシステムによっては、このフィールドが [Enter MFA code] の代わりに [Response] になることがあります。
最新の Duo バージョン
Active Directory のユーザー認証情報を入力します。クライアント VPN の MFA フィールドは Duo の 2 段階認証では考慮されません。この場合、Duo は認証の 2 番目の要素としてモバイル通知プッシュを利用します。
**注:**クライアント VPN MFA フィールドにランダムな文字を入力します。これにより、空白のフィールドがあっても認証が失敗するのを防ぐことができます。
関連するコンテンツ
- 質問済み 6年前lg...
- AWS公式更新しました 3年前
- AWS公式更新しました 9ヶ月前