AWS Managed Microsoft AD で Duo を使用して、AWS クライアント VPN エンドポイントに接続するエンドユーザーに多要素認証を提供する方法を教えてください。

最終更新日: 2020 年 4 月 13 日

Microsoft Active Directory 用の AWS Directory Service で Duo を使用して、AWS クライアント VPN エンドポイントに接続するエンドユーザーに Multi-Factor Authentication (MFA) を提供する方法を教えてください。

簡単な説明

AWS Client VPN では、次のタイプのエンドユーザー認証をサポートしています。

  • 相互認証
  • Active Directory 認証
  • デュアル認証 (相互認証 +Active Directory 認証)

MFA サービスは (クライアント VPN 上で直接ではなく) Active Directory 上で有効にする必要があります。Active Directory タイプが MFA をサポートしていることを確認します。MFA 機能は、新しいクライアント VPN と既存のクライアント VPN の両方でサポートされています。

Duo を使用して Client VPN エンドポイントに接続するエンドユーザーの MFA をセットアップするには。

  • まず、IT 管理者設定タスクを完了し、必要なサービスをセットアップします。
  • 次に、各エンドユーザーにエンドユーザー設定タスクを完了させ、Client VPN エンドポイントへのセキュアな接続を確立するようにします。

解決方法

IT 管理者の設定タスク:

AWS Managed Microsoft AD の作成と設定

1.    AWS Managed Microsoft AD ディレクトリを作成します

2.    Amazon Elastic Compute Cloud (Amazon EC2) Windows インスタンスを AWS Managed Microsoft AD ディレクトリに登録します。

このインスタンスは、Active Directory でサービスをインストールするために使用されます。インスタンスは、Active Directory のユーザーとグループの管理にも使用されます。インスタンスを起動するときは、インスタンスが Active Directory に関連付けられていることを確認してください。また、必ず「AmazonEC2RoleforSSM」ポリシーを添付した IAM ロールを追加してください。

3.    Active Directory サービスをインストールし、Active Directory のユーザーとグループを設定します。

まず、次のコマンドを使用して、ステップ 2 で作成したインスタンスにログインします (または、リモートデスクトップ接続を使用して接続します)。<Your Admin password> をステップ 1 で Active Directory 用に作成した管理者パスワードに置き換えてください。

User name: Admin@ad_DNS_name
Password: <Your Admin password> 

次に、PowerShell (管理モード) を使用して、以下のサービスをインストールします。

install-windowsfeature rsat-ad-tools, rsat-ad-admincenter, gpmc, rsat-dns-server -confirm:$false

次に、Active Directory ユーザーActive Directory グループを作成します。それから、これらのユーザーを正しい Active Directory グループに追加します。

注意: これらの Active Directory ユーザーは、AWS クライアント VPN エンドポイントに接続するエンドユーザーと同じです。

最後に、次のコマンドを使用して Active Directory グループの SID を取得します。<Your-AD-group-name> を Active Directory グループ名に置き換えてください。

Get-ADGroup -Identity <Your-AD-group-name>

注: AWS クライアント VPN 認証ルールを設定するときに、このグループの Active Directory ユーザーを認証する SID が必要です。

Duo をインストールして設定する

1.    Duo ウェブサイトで Duo アカウントにサインアップし、ログインします。

2.    モバイルデバイスに Duo アプリケーションをインストールします。Duo からテキストまたはプッシュ通知を受け取ったら、指示通りに Duo アカウントの認証を行います。

3.    Duo ウェブアカウントで、左側のナビゲーションペインから [アプリケーション] を選択します。

4.    [RADIUS] を選択してインストールします。

5.    ナビゲーションペインで、[ユーザー]、[ユーザーを追加] を選択します。

6.    [ユーザー名] に、エンドユーザーのユーザー名を入力します。これらのユーザー名は、エンドユーザーが後でクライアント VPN エンドポイントへの接続を認証するために使用する Active Directory ユーザー名およびユーザー名と一致する必要があります。

7.    個々のユーザーを選択し、電話番号を追加します。この電話番号で、エンドユーザーがそれぞれの MFA コードを受け取ります。

8.    [Duo モバイルを有効にする] を選択し、次にユーザーごとに [Duo モバイルアクティベーションコードを生成] を選択します。2 つの方法を使用して、ユーザーにアクティベーションリンクを通知できます。最初の方法では、[SMS で指示を送信する] を選択して、各エンドユーザーにメールでこのアクティベーションリンクを送信します。2 番目の方法では、[このステップをスキップする] を選択します。次に、各エンドユーザーのそれぞれのアクティベーションリンクをコピーし、リンクを手動で送信します。

9.    別の EC2 Windows インスタンスを起動します。このインスタンスは、Duo Radius アプリケーションを設定および管理するために使用されます。インスタンスが Active Directory に関連付けられ、正しい AWS Identity and Access Management (IAM) ロールを持ち、インターネットにアクセスできることを確認します。セキュリティグループ、ネットワークアクセスコントロールリスト、およびルートテーブルを確認します。

10.    ステップ 9 で起動した Radius EC2 インスタンスにログインします。次に、Duo ウェブサイトから Windows 用の認証プロキシをインストールします。

11.    C:\Program Files (x86)\Duo Security Authentication Proxy\conf\authproxy.cfg にある「authproxy.cfg」設定ファイルに移動します。

12.    設定ファイルを次のように編集します。

[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_1radius_ip_2 の値を確認する方法:

  • AWS マネジメントコンソールにログインします。
  • [ディレクトリサービス]、[ディレクトリ] の順にクリックします。
  • [Active Directory] を選択します。
  • [詳細] で、[DNS アドレス] セクションの [address_ip#1] および [address_ip#2] を参照してください。
    注意: AWS AD_connector を使用している場合、address_ip#1address_ip#2 はご使用の AD_connector の IP になります。

オプションで、以下を実行できます。

  • 独自の radius_secret_key を設定します。
  • 必要に応じてポートを変更します。

セキュリティグループ設定を変更する

1.    AWS マネジメントコンソールにログインします。

2.    [セキュリティグループ] をクリックします。

3.    ディレクトリコントローラーのセキュリティグループを選択します。

4.    Active Directory のセキュリティグループのアウトバウンドルールを編集して、Radius Server の送信先 IP (プライベート IP) の UDP 1812 (または Radius サービスポート) を許可します。または、ユースケースで許可されている場合は、すべてのトラフィックを許可できます。

Duo 認証サービスが実行されていることを確認する

1.    Radius EC2 Windows インスタンスにログインします。

2.    [サービス] で、[Duo セキュリティ認証プロキシサービス] を探します。サービスが [実行中] 状態でない場合は、[サービス開始] を選択します。

AWS Microsoft Managed AD で MFA を有効にする

1.    [ディレクトリサービス]、[ディレクトリ] の順にクリックします。

2.    [Active Directory] を選択します。

3.    [ネットワーキングとセキュリティ] で、[多要素認証] をクリックします。次に、[アクション]、[有効にする] の順にクリックします。

4.    以下を指定してください。

  • RADIUS サーバーの DNS 名または IP アドレス: EC2 Windows インスタンスのプライベート IP アドレスを入力します。
  • ポート: 「authproxy.cfg」ファイルで指定されたポートを入力します。
  • 共有シークレットコード: 「authproxy.cfg」ファイルの radius_secret_key 値を入力します。
  • プロトコル: PAP を選択します。
  • サーバータイムアウト: 任意の値を設定します。
  • RADIUS リクエストの最大再試行回数: 任意の値を設定します。

AWS クライアント VPN エンドポイントを作成する

1.    AWS Microsoft Managed AD と MFA を設定したら、MFA が有効になっている Active Directory を使用して クライアント VPN エンドポイントを作成します。

2.    新しいクライアント設定ファイルをダウンロードし、エンドユーザーに配信します。
注: クライアント設定ファイルは、AWS マネジメントコンソールAWS コマンドラインインターフェイス (AWS CLI)、または API コマンドからダウンロードできます。

3.    クライアント設定ファイルに以下のパラメータが含まれていることを確認してください。

auth-user-pass
static-challenge "Enter MFA code " 1

注: デュアル認証 (相互認証 + Active Directory 認証など) を使用している場合は、必ずクライアント <cert><key> を設定ファイルに追加してください。

エンドユーザー設定タスク:

1.    IT 管理者から提供されたアクティベーションリンクの通り、ご使用のモバイルデバイスに Duo アプリケーションをインストールします。

2.    デスクトップ用 AWS クライアント VPN ツールをインストールします。
注: 他の標準的な OpenVPN ベースのクライアントツールを使用して、クライアント VPN エンドポイントに接続することも可能です。

3.    IT 管理者が提供したクライアント設定ファイルを使用して、プロファイルを作成します。

4.    プロンプトが表示されたら Active Directory ユーザーの認証情報を入力し、クライアント VPN エンドポイントに接続します。次に、Duo アプリケーションが作成した MFA コードを入力します。


この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合