Share via


使用 Microsoft Entra ID 設定 VPN 連線能力的條件式存取

適用於:Windows Server 2022、Windows Server 2019、Windows Server 2016、Windows 11、Windows 10

在本操作指南中,您將了解如何使用 Microsoft Entra 條件式存取授權讓 VPN 使用者存取您的資源。 透過對虛擬專用網路 (VPN) 連線的 Microsoft Entra 條件式存取,您可以幫助保護 VPN 連線。 條件式存取是以原則為主的評估引擎,可讓您針對任何 Microsoft Entra 連接的應用程式建立存取規則。

必要條件

開始設定 VPN 的條件式存取之前,您必須先完成下列必要條件:

設定 EAP-TLS 以忽略憑證撤銷清單 (CRL) 檢查

NPS 伺服器必須完成憑證鏈結的撤銷檢查 (包括根憑證),EAP-TLS 用戶端才能連線。 Microsoft Entra ID 發給使用者的雲端憑證並沒有 CRL,因為它們是短期憑證,存留期只有一個小時。 NPS 上的 EAP 必須設定為忽略缺少 CRL。 由於驗證方法是 EAP-TLS,因此只有在 EAP\13 下才需要此登錄值。 如果使用其他 EAP 驗證方法,則登錄值也應該新增到這些方法之下。

在本節中,您將會新增 IgnoreNoRevocationCheckNoRevocationCheck。 根據預設,IgnoreNoRevocationCheckNoRevocationCheck 會設定為 0 (停用)。

若要深入了解 NPS CRL 登錄設定,請參閱設定網路原則伺服器憑證撤銷清單檢查登錄設定

重要

如果 Windows 路由和遠端存取伺服器 (RRAS) 使用 NPS 來 Proxy 對第二個 NPS 的 RADIUS 呼叫,則必須在兩部伺服器上設定 IgnoreNoRevocationCheck=1

無法實作此登錄變更會導致使用雲端憑證與 PEAP 的 IKEv2 連線失敗,但是使用從內部部署 CA 簽發的用戶端驗證憑證的 IKEv2 連線將會繼續運作。

  1. 在 NPS 伺服器上開啟 regedit.exe

  2. 瀏覽至 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\13

  3. 選取 [編輯]>[新增],然後選取 [DWORD (32 位元) 值],然後輸入 IgnoreNoRevocationCheck

  4. 按兩下 IgnoreNoRevocationCheck 並且將 [值] 資料設定為 1

  5. 選取 [編輯]>[新增],然後選取 [DWORD (32 位元) 值],然後輸入 NoRevocationCheck

  6. 按兩下 NoRevocationCheck 並且將 [值] 資料設定為 1

  7. 選取 [確定],然後將伺服器重新開機。 正在重新啟動 RRAS 且 NPS 服務不足。

登錄路徑 EAP 延伸模組
HKLM\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\13 EAP-TLS
HKLM\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\25 PEAP

使用 Microsoft Entra ID 為 VPN 驗證建立根憑證

在本節中,您會使用 Microsoft Entra ID 為 VPN 驗證設定條件式存取根憑證,這會自動在租用戶中建立名為 VPN 伺服器的雲端應用程式。 若要設定 VPN 連線的條件式存取,您必須:

  1. 在 Azure 入口網站中建立 VPN 憑證。
  2. 下載 VPN 憑證。
  3. 將憑證部署至您的 VPN 和 NPS 伺服器。

重要

在 Azure 入口網站中建立 VPN 憑證後,Microsoft Entra ID 將立即開始使用它向 VPN 用戶端發出短期憑證。 VPN 憑證必須立即部署至 VPN 伺服器,這一點很重要,如此才能避免在 VPN 用戶端認證驗證時發生任何問題。

當使用者嘗試 VPN 連線時,VPN 用戶端會在 Windows 10 用戶端上呼叫 Web 帳戶管理員 (WAM)。 WAM 會呼叫 VPN 伺服器雲端應用程式。 滿足條件式存取原則中的條件和控制項時,Microsoft Entra ID 會以短期 (1 小時) 憑證的形式向 WAM 發出權杖。 WAM 會將憑證放在使用者的憑證存放區中,並將控制權傳遞給 VPN 用戶端。 

然後,VPN 用戶端會將 Microsoft Entra ID 發出的憑證傳送到 VPN 進行認證驗證。 

注意

Microsoft Entra ID 使用 VPN 連線能力刀鋒視窗中最近建立的憑證作為簽發者。 Microsoft Entra 條件式存取 VPN 連線分葉憑證現在支援強式憑證對應,這是 KB5014754 引入的憑證型驗證要求。 VPN 連線分葉憑證現在包含 SID 延伸模組 (1.3.6.1.4.1.311.25.2),其中包含從 onPremisesSecurityIdentifier 屬性取得的使用者 SID 編碼版本。

若要建立根憑證:

  1. 以全域管理員身分登入您的 Azure 入口網站
  2. 在左側功能表中,按一下 [Microsoft Entra ID]
  3. 在 [Microsoft Entra ID] 頁面上的 [管理] 區段中,按一下 [安全性]
  4. 在 [安全性] 頁面上的 [保護] 區段中,按一下 [條件式存取]
  5. 在 [條件式存取 | 原則] 頁面的 [管理] 區段中,按一下 [VPN 連線]
  6. 在 [VPN 連線] 頁面上,按一下 [新增憑證]
  7. 在 [新增] 頁面上,執行下列步驟:a. 針對 [選取持續時間],請選取 1、2 或 3 年。 b. 選取 建立

設定條件式存取原則

在本節中,您會設定 VPN 連線的條件式存取原則。 在 [VPN 連線] 刀鋒視窗中建立第一個根憑證時,會自動在租用戶中建立「VPN 伺服器」雲端應用程式。

建立指派給 VPN 使用者群組的條件式存取原則,並將 [雲端應用程式] 的範圍設定為 [VPN 伺服器]

  • 使用者:VPN 使用者
  • 雲端應用程式:VPN 伺服器
  • 授與 (存取控制):「需要多重要素驗證」。 如有需要,可以使用其他控制項。

程序:此步驟涵蓋建立最基本的條件式存取原則。  如有需要,可以使用其他條件和控制項。

  1. 在 [條件式存取] 頁面上,選取頂端工具列中的 [新增]

    Select add on conditional access page

  2. 在 [新增] 頁面上的 [名稱] 方塊中,輸入原則的名稱。 例如,請輸入 VPN policy

    Add name for policy on conditional access page

  3. 在 [指派] 區段中,選取 [使用者和群組]

    Select users and groups

  4. 在 [使用者和群組] 頁面上,執行下列步驟:

    Select test user

    a. 選取 [選取使用者和群組]

    b. 選取選取

    c. 在 [選取] 頁面上,選取 [VPN 使用者] 群組,然後選取 [選取]

    d. 在 [使用者和群組] 頁面上,選取 [完成]

  5. 在 [新增] 頁面上,執行下列步驟:

    Select cloud apps

    a. 在 [指派] 區段中,選取 [雲端應用程式]

    b. 在 [雲端應用程式] 頁面上,選取 [選取應用程式]

    d. 選取 [VPN 伺服器]

  6. 在 [新增] 頁面上,若要開啟 [授與] 頁面,請在 [控制項] 區段中,選取 [授與]

    Select grant

  7. 在 [授與] 頁面上,執行下列步驟:

    Select require multi-factor authentication

    a. 選取 [需要多重要素驗證]

    b. 選取選取

  8. 在 [新增] 頁面上,於 [啟用原則] 底下,選取 [開啟]

    Enable policy

  9. 在 [新增] 頁面上,選取 [建立]

將條件式存取根憑證部署至內部部署 AD

在本節中,您會將 VPN 驗證的受信任根憑證部署至內部部署 AD。

  1. 在 [VPN 連線] 頁面上,選取 [下載憑證]

    注意

    [下載 base64 憑證] 選項適用於需要 base64 憑證以進行部署的一些設定。

  2. 使用企業系統管理員權限登入已加入網域的電腦,並從系統管理員命令提示字元執行下列命令,將雲端根憑證新增至企業 NTauth 存放區:

    注意

    對於 VPN 伺服器未加入 Active Directory 網域的環境,雲端根憑證必須手動新增至信任的根憑證授權單位存放區。

    Command 描述
    certutil -dspublish -f VpnCert.cer RootCA CN=AIACN=Certification Authorities 容器下,建立兩個 Microsoft VPN 根 CA 第 1 代容器,並且將每個根憑證發佈為 兩個 Microsoft VPN 根 CA 第 1 代容器 cACertificate 屬性上的值。
    certutil -dspublish -f VpnCert.cer NTAuthCA CN=AIACN=Certification Authorities 容器下,建立一個 CN=NTAuthCertificates 容器,並且將每個根憑證發佈為 CN=NTAuthCertificates 容器 cACertificate 屬性上的值。
    gpupdate /force 加速將根憑證新增至 Windows 伺服器和用戶端電腦。
  3. 確認根憑證存在於企業 NTauth 存放區中,並顯示為受信任:

    1. 登入具有已安裝憑證授權單位管理工具之企業系統管理員權限的伺服器。

    注意

    根據預設,憑證授權單位管理工具會安裝憑證授權單位伺服器。 它們可以安裝在其他成員伺服器上,作為伺服器管理員中角色管理工具的一部分。

    1. 在 VPN 伺服器上的 [開始] 功能表中,輸入 pkiview.msc 以開啟 [企業 PKI] 對話方塊。
    2. 從 [開始] 功能表中,輸入 pkiview.msc 以開啟 [企業 PKI] 對話方塊。
    3. 以滑鼠右鍵按一下 [企業 PKI],然後選取 [管理 AD 容器]
    4. 確認每個 Microsoft VPN 根 CA 第 1 代憑證都存在於:
      • NTAuthCertificates
      • AIA 容器
      • 憑證授權單位容器

建立 OMA-DM 型 VPNv2 設定檔至 Windows 10 裝置

在本節中,您會使用 Intune 建立 OMA-DM 型 VPNv2 設定檔,以部署 VPN 裝置設定原則。

  1. 在 Azure 入口網站中,選取 [Intune]>[裝置設定]>[設定檔],然後選取您在使用 Intune 設定 VPN 用戶端中建立的 VPN 設定檔。

  2. 在原則編輯器中,選取 [屬性]>[設定]>[基底 VPN]。 擴展現有的 [EAP Xml] 以包含篩選器,該篩選器為 VPN 用戶端提供從使用者的憑證存放區中擷取 Microsoft Entra 條件式存取憑證所需的邏輯,而不讓它有機會允許它使用發現的第一個憑證。

    注意

    如果沒有這個項目,VPN 用戶端可以擷取從內部部署憑證授權單位發出的使用者憑證,導致 VPN 連線失敗。

    Intune portal

  3. 找到以 < /AcceptServerName></EapType> 結尾的區段,並在這兩個值之間插入以下字串,以便為 VPN 用戶端提供選擇 Microsoft Entra 條件式存取憑證的邏輯:

    <TLSExtensions xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV2"><FilteringInfo xmlns="http://www.microsoft.com/provisioning/EapTlsConnectionPropertiesV3"><EKUMapping><EKUMap><EKUName>AAD Conditional Access</EKUName><EKUOID>1.3.6.1.4.1.311.87</EKUOID></EKUMap></EKUMapping><ClientAuthEKUList Enabled="true"><EKUMapInList><EKUName>AAD Conditional Access</EKUName></EKUMapInList></ClientAuthEKUList></FilteringInfo></TLSExtensions>
    
  4. 選取 [條件式存取] 刀鋒視窗,並將 [此 VPN 連線的條件式存取] 切換為 [啟用]

    啟用此設定會變更 VPNv2 設定檔 XML 中的 <DeviceCompliance><Enabled>true</Enabled> 設定。

    Conditional Access for Always On VPN - Properties

  5. 選取 [確定]

  6. 選取 [指派],在 [包含] 底下,選取 [選取要包含的群組]

  7. 選取接收此原則的正確群組,然後選取 [儲存]

    CAP for Auto VPN Users - Assignments

在用戶端上強制 MDM 原則同步

如果 VPN 設定檔未顯示在用戶端裝置上,則在 [設定\網路和網際網路\VPN] 下,可以強制 MDM 原則進行同步處理。

  1. VPN 使用者群組的成員身分登入已加入網域的用戶端電腦。

  2. 在 [開始] 功能表上,輸入帳戶,然後按 Enter 鍵。

  3. 在左方瀏覽窗格中,選取 [存取公司或學校]

  4. 在 [存取公司或學校] 底下,選取 [連線至 <\domain> MDM],然後選取 [資訊]

  5. 選擇 [同步],並確認 VPN 設定檔出現 [設定\網络和網際網路\VPN] 下。

下一步

您已完成將 VPN 設定檔設定為使用 Microsoft Entra 條件式存取。

  • 若要深入了解條件式存取如何與 VPN 搭配運作,請參閱 VPN 和條件式存取

  • 若要深入了解進階 VPN 功能,請參閱進階 VPN 功能

  • 若要查看 VPNv2 CSP 的概觀,請參閱 VPNv2 CSP:本主題提供 VPNv2 CSP 的概觀。