見出し画像

Microsoft AD は Duo の膝で多要素認証の夢をみる

先日さらっと紹介した 仮想デスクトップ Amazon WorkSpaces
本日はコレにロマンを注入していきます!

MS AD の下の方にこんな設定があります

つまり MS AD では RADIUS 連携で MFA を実現できるわけです!
こんな記事を見つけたのでやってみました

AWS Managed Microsoft AD で Duo を使用して、AWS クライアント VPN エンドポイントに接続するエンドユーザーに多要素認証を提供する方法を教えてください。
https://repost.aws/ja/knowledge-center/client-vpn-use-duo-for-mfa-to-endpoint

コレは VPN を対象にしていますが ここでは WorkSpaces の認証に MFA を追加します

では 設定していきます!

まず サインアップ
有償アプリのようですが 無償期間があるようです

Duo のアカウントを作ったら スマホに Duo アプリケーションをインストールしてアカウント認証を完了します

次に Duo にログインします

[アプリケーション] から [RADIUS] を選択し インストールしましょう!

RADIUS ユーザーを作成します

[Users] から [Add User] を選択します

WorkSpaces のユーザーを RADIUS ユーザーとして追加します
Active Directory ユーザー名と一致するユーザー名で追加しましょう

そして電話番号を設定します
この電話番号で MFA コードを受け取ります

[Activate Duo Mobile] を選択します
そして以下を実行

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

RADIUS として EC2 Windows インスタンスを作成します
これは AD ドメインに参加させてあげてください

EC2 に Windows 用の認証プロキシをインストールします

と 設定ファイル書き換えツール (?) が!

使ってみると [Save] をクリックすれば設定をセーブしてくれて (ゲームかよ) [Validate] をクリックすれば設定を検証してくれます

AWS でのガイドでは以下のように編集するようにとありました
ikey、skey、api_host は DUO の Application > RADIUS で確認する値を入れます

[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

ちなみに <任意のシークレット> は後で Microsoft AD で設定します

ここがちょこっとハマりました
元の設定ファイルにはコレがあるんですよね

[ad_client]
host=
service_account_username=
service_account_password=
search_dn=

[Validate] をクリックするとエラーに!

どげんなっとーと?

エラー内容を読むとどうもココがアヤしかったので とっぱらいました
それで設定が通りました!

ちなみに直にファイルを編集するときはココです
C:\Program Files (x86)\Duo Security Authentication Proxy\conf\authproxy.cfg

ここまでくればあと一歩です

次はセキュリティグループをいじります

Microsoft AD のセキュリティグループ名は <ディレクトリ名>_controllers です
これのアウトバウンドルールに RADIUS EC2 の疎通を設定します

RADIUS EC2 のセキュリティグループのインバウンドにも Microsoft AD からの疎通を通します

そして… RADIUS EC2 で Duo 認証サービスを起動します!
サービス名は [Duo セキュリティ認証プロキシサービス] です

では 最後の仕上げです
MS AD で多要素認証を有効化しましょう

MS AD コンソールで下の方へスクロールし [多要素認証] セクションで多要素認証を有効化します!

値を入れろと出て来ます

値を設定します

しばらくすると RADIUS ステータスが「完了」になります

では WorkSpaces にログインしてみましょうか
WorkSpaces アプリを起動します

MFA コード枠が増えています!

MFA コードを発行してスマホで承認すると

ログインできました!

ははーっ


この記事が気に入ったらサポートをしてみませんか?