如何將 Duo 與 AWS 受管 Microsoft AD 搭配使用,為連線至用戶端 VPN 端點的最終使用者提供多重要素驗證?

3 分的閱讀內容
0

我想將 Duo 與適用於 Microsoft Active Directory 的 AWS Directory Service 搭配使用。我想為連線至 AWS Client VPN 端點的最終使用者提供多重要素驗證 (MFA)。

簡短說明

用戶端 VPN 支援下列類型的最終使用者身分驗證:

  • 相互身分驗證
  • Active Directory 身分驗證
  • 雙重身分驗證 (相互和 Active Directory 身分驗證)

最新版本的 Duo 利用以雙重要素驗證方式傳送給最終使用者的推送通知。舊式 Duo 實作要求最終使用者使用 Duo 行動應用程式來產生多重要素驗證 (MFA) 程式碼。然後,您可以將此程式碼與用戶端 VPN 搭配使用。

您必須開啟 Active Directory 上的 MFA 服務,但不能直接在用戶端 VPN 上開啟。

**注意:**您的 Active Directory 類型必須支援 MFA。新的和現有的用戶端 VPN 都支援 MFA 功能。

解決方法

建立和設定 AWS 受管 Microsoft AD

  1. 建立 AWS 受管 Microsoft AD 目錄

  2. 將 Amazon Elastic Compute Cloud (Amazon EC2) Windows 執行個體加入 AWS 受管 Microsoft AD 目錄。此執行個體會安裝服務,並管理 Active Directory 中的使用者和群組。執行個體必須與 Active Directory 關聯。您必須新增已附加「AmazonEC2RoleforSSM」政策的 AWS Identity and Access Management (IAM) 角色。

  3. 執行下列命令以登入 Amazon EC2 執行個體。

    Username: Admin@ad_DNS_name
    Password: <Your Admin password>

    注意:您的管理員密碼取代為您為 Active Directory 建立的管理員密碼。

  4. 在管理員模式下,使用 PowerShell 安裝下列服務:

    install-windowsfeature rsat-ad-tools, rsat-ad-admincenter, gpmc, rsat-dns-server -confirm:$false
  5. 建立 Active Directory 使用者Active Directory 群組,然後將這些使用者新增至其適當的 Active Directory 群組
    **注意:**這些 Active Directory 使用者與連線至用戶端 VPN 端點的最終使用者相同。

  6. 執行下列命令以擷取 Active Directory 群組的 SID。將 Your-AD-group-name 取代為您的 Active Directory 群組名稱。

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

**注意:**設定用戶端 VPN 授權規則時,您需要 SID 來授權此群組的 Active Directory 使用者。

安裝和設定 Duo

  1. 註冊 (Duo 網站) 或登入 Duo。
  2. 在行動裝置上安裝 Duo 應用程式。遵循指示驗證您的 Duo 帳戶。
  3. 在您的 Duo Web 帳戶中,從左側的導覽窗格中選擇應用程式
  4. 在搜尋欄位中,輸入 RADIUS,然後選擇保護
  5. 在導覽窗格中,選擇使用者,然後選擇新增使用者。在使用者名稱中,輸入最終使用者的名稱。這些名稱必須與 Active Directory 使用者的名稱相符。這些名稱也必須與最終使用者驗證其與用戶端 VPN 端點連線的使用者名稱相符
  6. 選取每個個別使用者,然後新增其電話號碼。最終使用者會透過您在此處輸入的號碼接收 MFA 代碼。
  7. 若為存取使用者,請選擇啟用 Duo 行動裝置,然後選擇產生 Duo 行動裝置啟用代碼。有兩種方法可用於通知使用者其啟用連結。您可以選擇透過 SMS 傳送指示,以電子郵件將啟用連結傳送給每個最終使用者。或者,您可以選擇略過此步驟。然後,複製每個最終使用者的啟用連結,並手動將連結傳送給每個使用者。
  8. 啟動 EC2 Window 執行個體。使用此執行個體來設定和管理 Duo Radius 應用程式。執行個體必須與 Active Directory 關聯。執行個體也必須具有正確的 IAM 角色和網際網路存取權。驗證執行個體的安全群組、網路存取控制清單和路由表
  9. 登入管理 Duo Radius 應用程式的 EC2 執行個體。然後,安裝適用於 Windows 的身分驗證代理 (Duo 網站)。
  10. 導導覽至「authproxy.cfg」組態檔案,位於 C:\Program Files (x86)\Duo Security Authentication Proxy\conf\authproxy.cfg
  11. 編輯組態檔案。以下是檔案外觀的範例:
[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 Web 帳戶
  • 選擇儀表板應用程式Radius
  • 參閱詳細資訊下的值。

若要尋找 radius_ip_1radius_ip_2 的值,請完成下列步驟:

  • 登入 AWS 管理主控台
  • 選擇目錄服務,然後選擇目錄
  • 選取您的 Active Directory。
  • 詳細資訊下,請參閱 DNS 地址區段中的 address_ip#1address_ip#2
    注意: 如果您使用 AWS AD_connector,則 address_ip#1address_ip#2AD_connector 的 IP。

選擇性地完成下列步驟:

  • 設定您的 radius_secret_key
  • 變更連接埠

修改安全群組組態

  1. 登入 AWS 管理主控台
  2. 選擇安全群組
  3. 選取目錄控制器的安全群組。
  4. 編輯 Active Directory 安全群組的傳出規則。讓規則允許 UDP 1812 (或 Radius 服務連接埠) 用於 Radius 伺服器的目的地 IP 地址 (私有 IP)。或者,如果您的使用案例允許,則允許所有流量。

確認 Duo 身分驗證服務正在執行

  1. 登入 Radius EC2 Windows 執行個體。
  2. 服務下,尋找 Duo 安全身分驗證代理服務。如果服務不處於執行中狀態,則選擇啟動服務

在 AWS 受管 Microsoft AD 上開啟 MFA

  1. 登入 AWS 管理主控台
  2. 選擇目錄服務,然後選擇目錄
  3. 選取您的 Active Directory。
  4. 聯網和安全下,選擇多重要素驗證。然後,依次選擇動作啟用
  5. 輸入下列資訊:
    對於 RADIUS 伺服器 DNS 名稱或 IP 地址,請輸入 EC2 Windows 執行個體的私有 IP 地址。
    對於連接埠,輸入「authproxy.cfg」檔案中指定的連接埠。
    對於共用機密代碼,輸入「authproxy.cfg」檔案中的 radius_secret_key 值。
    協定中,選擇 PAP
    伺服器逾時中,輸入值。
    對於 RADIUS 請求重試次數上限,請輸入值。

建立用戶端 VPN 端點

  1. 設定 AWS 受管 Microsoft AD 和 MFA 之後,建立用戶端 VPN 端點。使用為其開啟 MFA 的 Active Directory。
  2. 下載新的用戶端組態檔案,並將其分發給最終使用者。
    **注意:**您可以從 AWS 管理主控台AWS Command Line Interface (AWS CLI) 或 API 命令下載用戶端組態檔案。
  3. 確認用戶端組態檔案包含下列參數:
auth-user-pass
static-challenge "Enter MFA code " 1

**注意:**如果您使用雙重身分驗證 (例如,相互 + Active Directory 身分驗證),則將用戶端 <cert><key> 新增至組態檔案。

設定最終使用者裝置

  1. 在最終使用者裝置上,遵循啟用連結,以在您的行動裝置上安裝 Duo 應用程式。
  2. 安裝適用於桌面的用戶端 VPN 工具。
    **注意:**您也可以使用任何標準 OpenVPN 型用戶端工具連線至用戶端 VPN 端點。
  3. 使用用戶端組態檔案建立設定檔。
  4. 連線至適用於您 Duo 版本的用戶端 VPN 端點:

舊式 Duo 版本
輸入您的 Active Directory 使用者憑證。然後,將 Duo 應用程式產生的 MFA 代碼輸入到用戶端 VPN。Duo 會驗證此 MFA 代碼。
注意:視用戶端 VPN 版本和您使用的作業系統而定,此欄位可以是回應,而非輸入 MFA 代碼

現代 Duo 版本
輸入您的 Active Directory 使用者憑證。Duo 不會對第二要素身分驗證考慮用戶端 VPN MFA 欄位。在這種情況下,Duo 依賴行動通知推送作為身分驗證的第二要素。 
**注意:**在用戶端 VPN MFA 欄位中填入隨機字元。這可以防止身分驗證因空白欄位而失敗。

AWS 官方
AWS 官方已更新 10 個月前