爲 Azure 雲服務(經典)配置SSL

爲 Azure 雲服務(經典)配置SSL

NOTE: 本文由 赤石俊哉 撰寫,轉載時請註明出處。 linux

參考:
Microsoft Azure - Azure 雲服務證書概述
在 Azure 中爲應用程序配置 SSLjson

獲取證書

獲取證書的方式有兩種,一種是經過使用現有域名,向權威的 CA 機構申請證書。另外一種則是自簽名證書。自簽名證書具備較差的安全性,並且也會被瀏覽器標示爲不安全的鏈接,因此建議使用第三方 CA 頒發的證書用於產品環境。自簽名證書僅用於測試。
這裏咱們不介紹第一種方式,就自簽名證書的方法進行描述。app

建立自簽名證書

引用: dom

可使用任何可用工具建立自簽名的證書,只要它們符合這些設置:ssh

  • X.509 證書。
  • 包含私鑰。
  • 爲密鑰交換(.pfx 文件)而建立。
  • 使用者名稱必須與用於訪問雲服務的域匹配。工具

    沒法獲取 cloudapp.net 域(或與 Azure 相關的任何域)的 SSL 證書;該證書的使用者名稱必須與用於訪問應用程序的自定義域名匹配。 例如,contoso.net,而不是 contoso.cloudapp.net。
  • 至少爲 2048 位加密。
  • 僅服務證書:客戶端證書必須駐留在我的證書存儲區。

使用 PowerShell 運行下面的命令便可建立自簽名證書測試

$cert = New-SelfSignedCertificate -DnsName yourdomain.cloudapp.net -CertStoreLocation "cert:\LocalMachine\My"
$password = ConvertTo-SecureString -String "your-password" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\my-cert-file.pfx" -Password $password

yourdomain.cloudapp.net替換成你的域名,若是但願用於某一個 IP 地址而不是域名,能夠將它替換成對應的 IP 地址。
your-password替換成你的密碼。
.\my-cert-file.pfx替換成證書文件導出的本地位置。加密

在 Linux 中生成祕鑰對的方法能夠參考Microsoft Azure - 如何建立和使用適用於 Azure 中 Linux VM 的 SSH 公鑰和私鑰對

雲服務項目設置

在 Visual Studio 中打開雲服務項目,從角色中找到你須要添加 SSL 的 Web 角色,雙擊會打開配置。

NOTE:
若是你但願從 cscfg 配置文件中直接修改,能夠參考原文,本文使用 Visual Studio 圖形界面進行配置。
原文地址:在 Azure 中爲應用程序配置 SSL

添加證書

導航到證書選項卡,點選添加證書,會在配置表格中添加一行,名稱能夠隨便起一個,存儲位置和存儲名稱對應上面 PowerShell 命令中的 -CertStoreLocation 的參數,若是你沒有修改,則是默認的 LocalMachineMy
點選指紋格後面的 ... 按鈕,找到剛剛咱們建立的證書的名字,指紋就會被自動填入表格。

添加 https 端點

導航到端點選項卡,點選添加端點,一樣也會在配置表格中添加一行,名稱仍是隨意,類型選擇 Input,協議選擇 https,公用端口選擇 443,固然你也能夠用其餘端口,443https 的默認端口。專用端口能夠留空,SSL 證書名稱則對應上一步咱們添加的證書那個隨便起的名字。

測試

至此,你就完成了全部的步驟,能夠部署到測試環境測試一下 https 是否已經生效了,

相關文章
相關標籤/搜索