共用方式為


設定 S2S VPN 閘道 憑證驗證連線 - 預覽

在本文中,您會使用 Azure 入口網站,在內部部署網路與虛擬網路之間建立站對站(S2S)憑證驗證 VPN 網關聯機。 此設定的步驟會使用受控識別、Azure 金鑰保存庫 和憑證。 如果您需要建立使用共用密鑰的站對站 VPN 連線,請參閱 建立 S2S VPN 連線

顯示站對站 VPN 閘道跨單位連線的圖表。

必要條件

注意

基本 SKU VPN 閘道不支援站對站憑證驗證。

  • 您已經有虛擬網路和 VPN 閘道。 如果您未這麼做,請遵循建立 VPN 閘道的步驟,然後返回此頁面以設定站對站憑證驗證連線。

  • 確定您有相容的 VPN 裝置以及能夠對其進行設定的人員。 如需相容 VPN 裝置和裝置設定的詳細資訊,請參閱關於 VPN 裝置

  • 確認您的 VPN 裝置有對外開放的公用 IPv4 位址。

  • 如果您不熟悉位於內部部署網路設定的 IP 位址範圍,您需要與能夠提供那些詳細資料的人協調。 當您建立此組態時,您必須指定 IP 位址範圍的首碼,以供 Azure 路由傳送至您的內部部署位置。 內部部署網路的子網路皆不得與您所要連線的虛擬網路子網路重疊。

建立受控識別

此設定需要受控識別。 如需受控識別的詳細資訊,請參閱什麼是適用於 Azure 資源的受控識別? 如果您已經有使用者指派的受控識別,您可以使用它來進行此練習。 如果沒有,請使用下列步驟來建立受控識別。

  1. 在 Azure 入口網站 中,搜尋並選取 [受控識別]。
  2. 選取 建立
  3. 輸入必要資訊。 當您建立名稱時,請使用直覺式專案。 例如, 站對站管理vpngwy-managed。 您需要金鑰儲存庫設定步驟的名稱。 資源 群組 不一定與您用於 VPN 閘道的資源群組相同。
  4. 選取 [檢閱 + 建立]。
  5. 值會驗證。 驗證完成時,選取 [建立]

啟用 金鑰保存庫和受控識別的 VPN 閘道

在本節中,您會啟用 Azure 金鑰保存庫 的閘道,以及您稍早建立的受控識別。 如需 Azure 金鑰保存庫 的詳細資訊,請參閱關於 Azure 金鑰保存庫

  1. 在入口網站中,移至您的虛擬網路閘道(VPN 閘道)。
  2. 移至 [ 設定 -> 組態]。 在 [組態] 頁面上,指定下列驗證設定:
    • 啟用 金鑰保存庫 存取:已啟用。
    • 受控識別:選取您稍早建立的 受控識別
  3. 儲存您的設定。

建立區域網路閘道

區域網路閘道是一個特定物件,代表您用於路由的內部部署位置 (網站)。 請將站台命名為可供 Azure 參考的名稱,然後指定您想要與其建立連線的內部部署 VPN 裝置 IP 位址。 也請指定 IP 位址首碼,供系統透過 VPN 閘道路由至 VPN 裝置。 您指定的位址首碼是位於內部部署網路上的首碼。 如果您的內部部署網路變更,或者您需要變更 VPN 裝置的公用 IP 位址,您稍後可以輕鬆地更新這些值。

注意

區域網路閘道物件會部署在 Azure 中,而不是部署在您的內部部署位置。

使用下列值建立區域網路閘道:

  • 名稱:Site1
  • 資源群組︰TestRG1
  • 位置:美國東部

組態考量:

  • VPN 閘道對每個 FQDN 僅支援一個 IPv4 位址。 如果網域名稱解析為多個 IP 位址,VPN 閘道將會使用 DNS 伺服器所傳回的第一個 IP 位址。 若要排除不確定性,我們建議您的 FQDN 一律解析成單一 IPv4 位址。 不支援 IPv6。
  • VPN 閘道會以每 5 分鐘重新整理一次的方式維護 DNS 快取。 閘道只會嘗試解析已中斷連線通道的 FQDN。 重設閘道也會觸發 FQDN 解析。
  • 雖然 VPN 閘道支援使用不同 FQDN 連線到不同區域網路閘道的多個連線,但所有 FQDN 都必須解析為不同的 IP 位址。
  1. 在入口網站中,移至 [區域網路閘道],然後開啟 [建立區域網路閘道] 頁面。

  2. [基本] 索引標籤上,指定區域網路閘道的值。

    顯示使用 IP 位址建立區域網路閘道的螢幕擷取畫面。

    • 訂用帳戶:確認顯示的是正確的訂用帳戶。
    • 資源群組:選取要使用的資源群組。 您可以建立新的資源群組,或選取您已建立的資源群組。
    • 區域:選取此物件的區域。 您可能想要選取虛擬網路所在的相同位置,但可以不用這麼做。
    • 名稱:指定區域網路閘道物件的名稱。
    • 端點:選取內部部署 VPN 裝置的端點類型:[IP 位址] 或 [FQDN (完整網域名稱)]
      • IP 位址:如果您有從 VPN 裝置網際網路服務提供者 (ISP) 配置的靜態公用 IP 位址,請選取 [IP 位址] 選項。 填入 IP 位址,如範例所示。 這個位址是您希望 Azure VPN 閘道連線的 VPN 裝置公用 IP 位址。 如果您目前沒有 IP 位址,可以使用範例中顯示的值。 您後續必須回來將預留位置 IP 位址取代為 VPN 裝置的公用 IP 位址。 否則,Azure 無法連線。
      • FQDN:如果您有一段特定時間後可能變更的動態公用 IP 位址 (通常取決於您的 ISP),即可使用固定 DNS 名稱搭配動態 DNS 服務,以指向您 VPN 裝置目前的公用 IP 位址。 Azure VPN 閘道會解析 FQDN,以決定要連線的公用 IP 位址。
    • 位址空間:位址空間是指此區域網路所代表之網路的位址範圍。 您可以加入多個位址空間範圍。 確定您在此指定的範圍,不會與您要連線的其他網路範圍重疊。 Azure 會將您指定的位址範圍路由傳送至內部部署 VPN 裝置 IP 位址。 如果您想要連線至內部部署網站,在此處請使用您自己的值,而不是範例中顯示的值
  3. 在 [進階] 索引標籤上,您可以視需要設定 BGP 設定。

  4. 指定值之後,請選取頁面底部的 [檢閱 + 建立] 來驗證頁面。

  5. 選取 [建立],建立區域網路閘道物件。

憑證

站對站憑證驗證架構依賴輸入和輸出憑證。

注意

輸入和輸出憑證不需要從相同的跟證書產生。

輸出憑證

  • 輸出憑證可用來驗證從 Azure 到內部部署網站的連線。
  • 憑證會儲存在 Azure 金鑰保存庫。 當您設定站對站連線時,您可以指定輸出憑證路徑識別碼。
  • 您可以使用您選擇的證書頒發機構單位建立憑證,也可以建立自我簽署跟證書。

當您產生 輸出憑證時,憑證必須遵循下列指導方針:

  • 2048 位的金鑰長度下限。
  • 必須有私鑰。
  • 必須具有伺服器和客戶端驗證。
  • 必須具有主體名稱。

輸入憑證

  • 從內部部署位置連線到 Azure 時,會使用輸入憑證。
  • 當您設定站對站連線時,會使用主體名稱值。
  • 當您設定站對站連線時,會指定憑證鏈結公鑰。

產生憑證

在您的電腦上本機使用PowerShell來產生憑證。 下列步驟說明如何建立自我簽署跟證書和分葉憑證(輸入和輸出)。 使用下列範例時,請勿在建立自我簽署的根 CA 和分葉憑證之間關閉 PowerShell 視窗。

建立自我簽署根憑證

您可以使用 New-SelfSignedCertificate Cmdlet 來建立自我簽署的根憑證。 如需參數的詳細資訊,請參閱 New-SelfSignedCertificate

  1. 在執行 Windows 10 或更新版本,或 Windows Server 2016 的電腦上,以較高的權限開啟 Windows PowerShell 主控台。

  2. 建立自我簽署根憑證。 下列範例會建立名為 'VPNRootCA01' 的自我簽署跟證書,此憑證會自動安裝在 'Certificates-Current User\Personal\Certificates' 中。 建立憑證之後,您可以開啟 certmgr.msc管理用戶憑證來檢視它。

    使用此範例之前,請先進行任何必要的修改。 'NotAfter' 參數是選擇性的。 根據預設,若沒有此參數,憑證會在一年內到期。

    $params = @{
        Type = 'Custom'
        Subject = 'CN=VPNRootCA01'
        KeySpec = 'Signature'
        KeyExportPolicy = 'Exportable'
        KeyUsage = 'CertSign'
        KeyUsageProperty = 'Sign'
        KeyLength = 2048
        HashAlgorithm = 'sha256'
        NotAfter = (Get-Date).AddMonths(120)
        CertStoreLocation = 'Cert:\CurrentUser\My'
        TextExtension = @('2.5.29.19={critical}{text}ca=1&pathlength=4')
    }
    $cert = New-SelfSignedCertificate @params
    
  3. 若要產生分葉憑證,請將PowerShell控制台保持開啟,然後繼續進行後續步驟。

產生分葉憑證

這些範例會使用 New-SelfSignedCertificate Cmdlet 來產生輸出和輸入分葉憑證。 憑證會自動安裝在您電腦上的 「憑證 - 目前的使用者\個人\憑證」中。

輸出憑證


   $params = @{
       Type = 'Custom'
       Subject = 'CN=Outbound-certificate'
       KeySpec = 'Signature'
       KeyExportPolicy = 'Exportable'
       KeyLength = 2048
       HashAlgorithm = 'sha256'
       NotAfter = (Get-Date).AddMonths(120)
       CertStoreLocation = 'Cert:\CurrentUser\My'
       Signer = $cert
       TextExtension = @(
        '2.5.29.37={text}1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.1')
   }
   New-SelfSignedCertificate @params

輸入憑證


   $params = @{
       Type = 'Custom'
       Subject = 'CN=Inbound-certificate'
       KeySpec = 'Signature'
       KeyExportPolicy = 'Exportable'
       KeyLength = 2048
       HashAlgorithm = 'sha256'
       NotAfter = (Get-Date).AddMonths(120)
       CertStoreLocation = 'Cert:\CurrentUser\My'
       Signer = $cert
       TextExtension = @(
        '2.5.29.37={text}1.3.6.1.5.5.7.3.2,1.3.6.1.5.5.7.3.1')
   }
   New-SelfSignedCertificate @params

輸出憑證 - 匯出私鑰數據

輸出憑證 資訊(使用私鑰)匯出至 .pfx 或 .pem 檔案。 您可以在後續步驟中安全地將此憑證資訊上傳至 Azure 金鑰保存庫。 若要使用 Windows 匯出至 .pfx,請使用下列步驟:

  1. 若要取得憑證 .cer 檔案,請開啟 [管理使用者憑證]

  2. 找出輸出憑證,通常是在 [憑證 - 目前使用者\個人\憑證] 中,然後按鼠右鍵。 選取 [所有工作] -> [匯出]。 這會開啟 [憑證匯出精靈]

  3. 在精靈中,選取 [下一步]

  4. 選取 [是,匯出私密金鑰],並選取 [下一步]

  5. 在 [ 匯出檔格式] 頁面上,選取 [個人信息交換 - PKCS #12 (PFX)]。 選取下列專案:

    • 如果可能的話,包含認證路徑中的所有憑證
    • 匯出所有擴充屬性
    • 啟用憑證隱私權
  6. 選取 [下一步]。 在 [ 安全性] 頁面上,選取 [密碼 ] 和 [加密方法]。 然後選取下一步

  7. 指定檔名,並流覽至您要匯出的位置。

  8. 選取 [完成] 以匯出憑證。

  9. 您會看到匯出成功的確認訊息。

輸入憑證 - 匯出公鑰數據

匯出輸入憑證公鑰數據。 當您設定站對站連線時,檔案中的資訊會用於輸入憑證鏈結字段。 匯出的檔案的格式必須為 .cer 。 請勿加密憑證值。

  1. 若要取得憑證 .cer 檔案,請開啟 [管理使用者憑證]
  2. 找出憑證,通常是在 [憑證 - 目前使用者\個人\憑證] 中,然後按鼠右鍵。 選取 [所有工作] -> [匯出]。 這會開啟 [憑證匯出精靈]
  3. 在精靈中,選取 [下一步]
  4. 選取 [否],請勿匯出私鑰。 然後選取下一步
  5. 選取 [Base-64 編碼 X.509]。CER),然後選取 [ 下一步]。
  6. 指定檔名,並流覽至您要匯出的位置。
  7. 選取 [完成] 以匯出憑證。
  8. 您會看到匯出成功的確認訊息。
  9. 稍後 .cer 當您設定連線時,會使用此檔案。

跟證書 - 匯出公鑰數據

匯出跟證書公鑰資料。 匯出的檔案的格式必須為 .cer 。 請勿加密憑證值。

  1. 若要取得憑證 .cer 檔案,請開啟 [管理使用者憑證]
  2. 找出憑證,通常是在 [憑證 - 目前使用者\個人\憑證] 中,然後按鼠右鍵。 選取 [所有工作] -> [匯出]。 這會開啟 [憑證匯出精靈]
  3. 在精靈中,選取 [下一步]
  4. 選取 [否],請勿匯出私鑰。 然後選取下一步
  5. 選取 [Base-64 編碼 X.509]。CER),然後選取 [ 下一步]。
  6. 指定檔名,並流覽至您要匯出的位置。
  7. 選取 [完成] 以匯出憑證。
  8. 您會看到匯出成功的確認訊息。
  9. 稍後 .cer 當您設定連線時,會使用此檔案。

建立金鑰保存庫

此設定需要 Azure 金鑰保存庫。 下列步驟會建立金鑰保存庫。 您稍後會將憑證和受控識別新增至金鑰保存庫。 如需更完整的步驟,請參閱快速入門 - 使用 Azure 入口網站 建立密鑰保存庫。

  1. 在 Azure 入口網站 中,搜尋 金鑰保存庫。 在 [ 金鑰保存庫] 頁面上,選取 [+建立]。
  2. 在 [ 建立金鑰保存庫 ] 頁面上,填寫必要的資訊。 資源群組不一定與您用於 VPN 閘道的資源群組相同。
  3. 在 [存取組態] 索引卷標上,針對 [許可權模型],選取 [保存庫存取原則]。
  4. 請勿填寫任何其他欄位。
  5. 選取 [ 檢閱 + 建立],然後 選取 [建立 密鑰保存庫]。

將輸出憑證檔案新增至金鑰保存庫

下列步驟可協助您將輸出憑證資訊上傳至 Azure 金鑰保存庫。

  1. 移至您的金鑰保存庫。 在左窗格中,開啟 [ 憑證] 頁面。
  2. 在 [ 憑證] 頁面上,選取 [+產生/匯入]。
  3. 針對 [ 憑證建立方法],從下拉式清單中選取 [ 入]。
  4. 輸入直覺式憑證名稱。 這不需要是憑證 CN 或憑證檔名。
  5. 上傳輸出憑證檔案。 憑證檔案必須是下列其中一種格式:
    • .pfx
    • .pfm
  6. 輸入用來保護憑證信息的密碼。
  7. 選取 [建立] 以上傳憑證檔案。

將受控識別新增至金鑰保存庫

  1. 移至您的金鑰保存庫。 在左窗格中,開啟 [ 存取原則 ] 頁面。
  2. 選取 [+建立]
  3. 在 [ 建立存取原則 ] 頁面上,針對 [秘密管理選項 ] 和 [憑證管理作業],選取 [ 全部選取]。
  4. 選取 [下一步 ] 以移至 [主體*] 頁面。
  5. 在 [ 主體 ] 頁面上,搜尋並選取您稍早建立的受控識別。
  6. 選取 [下一步 ],然後前進到 [ 檢閱 + 建立] 頁面。 選取 建立

設定 VPN 裝置

內部部署網路的站對站連線需要 VPN 裝置。 在此步驟中,設定您的 VPN 裝置。 設定 VPN 裝置時,您需要下列值:

  • 憑證:您將需要用於驗證的憑證數據。 建立 VPN 連線時,此憑證也會作為輸入憑證。
  • 虛擬網路閘道的公用IP位址值:若要使用 Azure 入口網站 尋找 VPN 閘道 VM 實例的公用IP位址,請移至虛擬網路閘道,並查看 [設定 -> 屬性] 下方。 如果您有主動-主動模式網關(建議),請務必設定每個 VM 實例的通道。 這兩個通道都屬於相同的連線。 主動-主動模式 VPN 閘道有兩個公用IP位址,每個閘道 VM 實例各一個。

根據您所擁有的 VPN 裝置,您或許可以下載 VPN 裝置設定指令碼。 如需詳細資訊,請參閱下載 VPN 裝置組態指令碼

如需詳細設定資訊,請參閱下列連結:

建立站對站連線

在本節中,您會在虛擬網路網關與內部部署 VPN 裝置之間建立站對站 VPN 連線。

收集組態值

在前進之前,請先收集下列必要組態值的資訊。

  • 輸出憑證路徑:這是輸出憑證的路徑。 輸出憑證是從 Azure 連線到內部部署位置時所使用的憑證。 此資訊來自您上傳至 Azure 金鑰保存庫 的相同憑證。

    1. 移至 [金鑰保存庫],然後按下您的密鑰保存庫。 在左窗格中,展開 [物件 ],然後選取 [ 憑證]。
    2. 找出並按下您的憑證,以開啟憑證頁面。
    3. 按兩下憑證版本的行。
    4. 複製金鑰識別子的路徑。 路徑是憑證特有的。

    範例: https://s2s-vault1.vault.azure.net/certificates/site-to-site/<certificate-value>

  • 輸入憑證主體名稱:這是輸入憑證的 CN。 若要找出此值:

    1. 如果您在 Windows 電腦上產生憑證,您可以使用憑證管理找到它
    2. 移至 [ 詳細數據] 索引標籤。捲動並按兩下 [ 主旨]。 您會在下方窗格中看到這些值。
    3. 請勿在 值中包含 CN=
  • 輸入憑證鏈結:此憑證資訊僅用於驗證傳入的輸入憑證,且不包含私鑰。 在入口網站的輸入憑證區段中,您應該一律至少有兩個憑證。

    如果您的憑證鏈結中有中繼 CA,請先將跟證書新增為第一個中繼憑證,然後遵循該憑證與輸入中繼憑證。

    使用下列步驟,以輸入憑證欄位所需的格式擷取憑證數據。

    1. 若要擷取憑證數據,請確定您已將輸入憑證導出為Base-64編碼 X.509 (。先前步驟中的 CER) 檔案。 您需要以這種格式匯出憑證,以便可以使用文字編輯器開啟憑證。

    2. 使用文字編輯器找出並開啟 .cer 憑證檔案。 複製憑證數據時,請確定您複製文字為一個連續行。

    3. 當您建立連線時,將和 之間 -----BEGIN CERTIFICATE----- -----END CERTIFICATE----- 列出的數據複製到 [輸入憑證鏈結 ] 字段。

      範例:

      顯示 [記事本] 中中繼憑證信息的螢幕快照。

建立連線

  1. 移至您建立的虛擬網路網關,然後選取 [ 連線]。

  2. 在 [連線] 頁面的頂部,選取 [+新增] 以開啟 [建立連線] 頁面。

  3. 在 [建立連線] 頁面的 [基本] 索引標籤上 ,設定連線的值:

    • 在 [專案詳細資料] 底下,選取您資源所在的訂用帳戶和資源群組。

    • 在 [執行個體詳細資料] 底下,進行下列設定:

      • 連線類型:選取 [站對站 (IPSec)]
      • 名稱:為連線命名。 範例:VNet 對月臺1。
      • 區域:選取此連線的區域。
  4. 選取 [設定] 索引標籤。

    顯示 [設定] 頁面的螢幕擷取畫面。

    設定下列值:

    • 虛擬網路閘道:從下拉式清單中選取虛擬網路閘道。
    • 區域網路閘道:從下拉式清單中選取區域網路閘道。
    • 驗證方法:選取 [金鑰保存庫 憑證]。
    • 輸出憑證路徑:位於 金鑰保存庫 的輸出憑證路徑。 取得這項資訊的方法位於本節的開頭。
    • 輸入憑證主體名稱:輸入憑證的 CN。 取得這項資訊的方法位於本節的開頭。
    • 輸入憑證鏈結:您從檔案複製的 .cer 憑證數據。 複製並貼上輸入憑證的憑證資訊。 取得這項資訊的方法位於本節的開頭。
    • IKE 通訊協定:選取 [IKEv2]
    • 使用 Azure 私人 IP 位址:不要選取。
    • 啟用 BGP:只有在您想要使用 BGP 時才啟用。
    • IPsec/IKE 原則:選取 [預設]
    • 使用原則型流量選取器:選取 [停用]
    • DPD 逾時 (秒):選取 45
    • 連線模式:選取 [預設]。 此設定可用來指定哪些閘道可以起始連線。 如需詳細資訊,請參閱 VPN 閘道設定 - 連線模式
    • 針對 [NAT 規則關聯],將 [輸入] 和 [輸出] 都保留為 [已選取 0 個]
  5. 選取 [ 檢閱 + 建立 ] 來驗證您的連線設定,然後選取 [ 建立 ] 以建立連線。

  6. 部署完成後,即可在虛擬網路閘道的 [連線] 頁面上檢視連線。 狀態會從 [未知] 變成 [連線中],然後變成 [成功]

下一步

一旦完成您的連接,就可以將虛擬機器新增至您的 VNet。 如需詳細資訊,請參閱虛擬機器。 若要了解網路與虛擬機器的詳細資訊,請參閱 Azure 與 Linux VM 網路概觀

如需有關為 P2S 疑難排解的資訊,請參閱針對 Azure 點對站連線進行疑難排解