產生並匯出點對站(point to site)連線的憑證

在設定Azure點對站(point to site)連線時需要輸入根憑證,若有外部憑證或那是最好,沒有的話就參考https://docs.microsoft.com/zh-tw/azure/vpn-gateway/vpn-gateway-certificates-point-to-site自已建立根憑證吧

步驟很簡單

首先我們要利用powershell建立自我簽署的根憑證

$cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject "CN=P2SRootCert" -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation "Cert:\CurrentUser\My" -KeyUsageProperty Sign -KeyUsage CertSign

執行完上述指令後會產生一個P2SRootCert的根憑證,我們可以透過[管理使用者憑證]或直接執行certmgr.msc來查看

接下來要匯出將憑證匯出,對建立的根憑證點選右鍵-->所有工作-->匯出進入到憑證匯出精靈

選取 [否,不要匯出私密金鑰],然後按 [下一步]

編碼很重要,要注意選取 [Base-64 編碼 X.509 (.CER)],然後按 [下一步]

在 [要匯出的檔案] 中,[瀏覽] 到您要匯出憑證的位置。 並為憑證檔案命名,這樣就完成了

將匯出的根憑證用記事本打開,裡面的這段亂碼文字就是我們要貼到Azure上的憑證內容,注意要排除(-----BEGIN CERTIFICATE-----及-----END CERTIFICATE-----)

每台電腦連線VPN時還需要用戶端憑證證,故我們也要產生用戶端憑證,可以繼續用以下powershell指令產生一個P2SChildCert的用戶端憑證

New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject "CN=P2SChildCert" -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation "Cert:\CurrentUser\My" `
-Signer $cert -TextExtension @("2.5.29.37={text}1.3.6.1.5.5.7.3.2")

在使用者憑證管理員中可以看到產生的用戶端憑證,接下來就把憑證匯出

但這次要選擇匯出私密金鑰

在匯出檔案格式維持預設

在安全性輸入2次密碼

最後選擇要匯出的檔案路徑及給予名稱後就完成