分享方式:


設定 Azure VPN Client - 憑證驗證 - OpenVPN - Linux (預覽)

本文可協助您使用 VPN 閘道點對站 (P2S) 憑證驗證從適用於 Linux 的 Azure VPN Client 連線到 Azure 虛擬網路 (VNet)。 適用於 Linux 的 Azure VPN Client 需要 OpenVPN 通道類型。

雖然適用於 Linux 的 Azure VPN Client 可能在其他 Linux 發行版和版本上運作,但下列版本僅支援適用於 Linux 的 Azure VPN Client:

  • Ubuntu 20.04
  • Ubuntu 22.04

開始之前

請確認您正在閱讀正確的文章。 下表顯示 Azure VPN 閘道 P2S VPN 用戶端可用的設定文章。 步驟會根據驗證類型、通道類型和用戶端 OS 而有所不同。

驗證 通道類型 用戶端作業系統 VPN 用戶端
[MSSQLSERVER 的通訊協定內容]
IKEv2、SSTP Windows 原生 VPN 用戶端
IKEv2 macOS 原生 VPN 用戶端
IKEv2 Linux strongSwan
OpenVPN Windows Azure VPN 用戶端
OpenVPN 用戶端
OpenVPN macOS OpenVPN 用戶端
OpenVPN iOS OpenVPN 用戶端
OpenVPN Linux Azure VPN Client
OpenVPN 用戶端
Microsoft Entra ID
OpenVPN Windows Azure VPN 用戶端
OpenVPN macOS Azure VPN Client
OpenVPN Linux Azure VPN Client

必要條件

本文假設您已經執行下列的必要條件:

連線需求

若要使用 Azure VPN Client 和憑證驗證連線到 Azure,則每個連線的用戶端都需要下列項目:

  • Azure VPN Client 軟體必須安裝在每個用戶端上並加以設定。
  • 用戶端必須有本機安裝的正確憑證。

工作流程

基本工作流程如下所示:

  1. 產生和安裝用戶端憑證。
  2. 找出您在設定 P2S VPN 閘道連線的伺服器設定 - 憑證驗證一文中產生的 VPN 用戶端設定檔組態套件。
  3. 下載並設定適用於 Linux 的 Azure VPN Client。
  4. 連線到 Azure。

產生憑證

針對憑證驗證,用戶端憑證必須安裝在每部用戶端電腦上。 您想使用的用戶端憑證必須使用私密金鑰匯出,而且必須包含認證路徑中的所有憑證。 此外,針對某些設定,您也需要安裝根憑證資訊。

使用下列命令,以 .pem 格式產生用戶端公用憑證資料和私密金鑰。 若要執行命令,您必須擁有公用根憑證 caCert.pem 和根憑證的私密金鑰 caKey.pem。 如需了解詳細資訊,請參閱產生和匯出憑證 - Linux - OpenSSL

export PASSWORD="password"
export USERNAME=$(hostnamectl --static)
 
# Generate a private key
openssl genrsa -out "${USERNAME}Key.pem" 2048 
 
# Generate a CSR
openssl req -new -key "${USERNAME}Key.pem" -out "${USERNAME}Req.pem" -subj "/CN=${USERNAME}" 
 
# Sign the CSR using the CA certificate and key
openssl x509 -req -days 365 -in "${USERNAME}Req.pem" -CA caCert.pem -CAkey caKey.pem -CAcreateserial -out "${USERNAME}Cert.pem" -extfile <(echo -e "subjectAltName=DNS:${USERNAME}\nextendedKeyUsage=clientAuth")

檢視 VPN 用戶端設定檔的組態檔

當您產生 VPN 用戶端設定檔組態套件時,VPN 用戶端的所有必要設定都會包含在 VPN 用戶端設定檔的設定 ZIP 檔案中。 VPN 用戶端設定檔組態檔案是該虛擬網路的 P2S VPN 閘道設定所專用。 如果在產生檔案之後,對 P2S VPN 設定進行任何變更,例如變更 VPN 通訊協定類型或驗證類型,您必須產生新的 VPN 用戶端設定檔的組態檔,並將新設定套用至您要連線的所有 VPN 用戶端。

找到您所產生的 VPN 用戶端設定檔組態套件並加以解壓縮。 針對 P2S 憑證驗證和透過 OpenVPN 通道類型,您會看到 AzureVPN 資料夾。 在 AzureVPN 資料夾中,找出 azurevpnconfig.xml 檔案。 此檔案包含用於設定 VPN 用戶端設定檔的設定。

如果您沒有看到 azurevpnconfig.xml 檔案,請驗證下列項目:

  • 驗證您的 VPN 閘道是否設定為使用 OpenVPN 通道類型。
  • 確認已設定 P2S 組態以進行憑證驗證。
  • 如果您使用 Microsoft Entra ID 驗證,您可能沒有 AzureVPN 資料夾。 請參閱 Microsoft Entra ID 設定文章。

下載 Azure VPN Client

新增 Microsoft 存放庫清單,並使用下列命令安裝適用於 Linux 的 Azure VPN Client:

# install curl utility
sudo apt-get install curl

# Install Microsoft's public key
curl -sSl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc

# Install the production repo list for focal
# For Ubuntu 20.04
curl https://packages.microsoft.com/config/ubuntu/20.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft-ubuntu-focal-prod.list

# Install the production repo list for jammy
# For Ubuntu 22.04
curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft-ubuntu-jammy-prod.list

sudo apt-get update

sudo apt-get install microsoft-azurevpnclient

如需關於存放庫的詳細資訊,請參閱適用於 Microsoft 產品的 Linux 軟體存放庫

設定 Azure VPN Client 設定檔

  1. 開啟 Azure VPN Client。

  2. 在 Linux VPN 用戶端頁面左下方,選取 [匯入]

    使用匯入的適用於 Linux 的 Azure VPN Client 螢幕擷取畫面。

  3. 在視窗中,瀏覽至 azurevpnconfig.xml 檔案,選取該檔案,然後選取 [開啟]

  4. 若要新增 [用戶端憑證公用資料],請使用檔案選擇器並找出相關的 .pem 檔案。

    適用於 Linux 的 Azure VPN Client 的螢幕擷取畫面,其中已選取用戶端憑證資料。

  5. 若要新增 [用戶端憑證私密金鑰],請使用選擇器,並在私密金鑰的文字輸入框中選取憑證檔案路徑,副檔名為 .pem

  6. 匯入驗證後 (匯入沒有錯誤),選取 [儲存]

  7. 在左側窗格中,找出您建立的 [VPN 連線] 設定檔。 選取 Connect

    適用於 Linux Connect 的 Azure VPN Client 螢幕擷取畫面。

  8. 成功連線用戶端時,狀態會顯示為 [已連線] 與綠色圖示。

    適用於 Linux 的 Azure VPN Client 螢幕擷取畫面,其中用戶端會顯示 [已連線]。

  9. 您可以在 VPN 用戶端主畫面的 [狀態記錄] 中檢視連線記錄摘要。

    適用於 Linux 的 Azure VPN Client 螢幕擷取畫面,其中顯示狀態記錄。

解除安裝 Azure VPN Client

如果您要解除安裝 Azure VPN Client,請在終端機中使用下列命令:

sudo apt remove microsoft-azurevpnclient

下一步

如需其他步驟,請返回 P2S Azure 入口網站一文。