close

Let’s Encrypt 是一家可以免費申請SSL憑證的單位,以往還需要用下command的方式才能使用,

現在出現一個線上工具 https://www.sslforfree.com/

整個讓所有過程簡單許多,以下將用一步一步的圖文講解,

從申請、驗證方式、Visual Studio的操作到最後整合到Azure Cloud Service ,

注意:這是Azure Cloud Service,不是App Service,文後會有App Service的參考連結.

 

1.首先到 https://www.sslforfree.com/ 填入你要申請的網站.

image

 

2.為了要認證這個網站是你所有擁有,他提供幾種認證方式,我選擇Manual Verification手動認證,因為對我來說這個最簡單最快速.

2017-07-11_155934

3.按下之後他會有一個檔案要下載,你必須在網站裡建立兩層的資料夾放置這個檔案

(1).well-known  <==請注意那個點

(2)acme-challenge

以便下徒弟五步驟的驗證連結可以順利連接的到

image

 

4.將第三步驟中那個 Download File#1 下載回來,這是一個沒有附檔名的檔案,

使用遠端桌面連到我們的Azure Cloud Service,再次強調, 這是Azure Cloud Service不是App Service!

建立好資料夾並放上剛下載回來的檔案,由於第一層名稱是 .well-known,

點這個符號,在Windows檔案系統裡是不能當資料夾檔名的開頭

所以先隨便取名ssl_temp,待會再使用IIS虛擬目錄的方式來指定就可以了,

如下圖:(我的習慣是會多放一個圖檔來方便測試連線)

2017-07-11_161241

 

5,因為下載下來要做認證的檔名是沒有附檔名的,為了能讓IIS處理沒副檔名的檔案,要新增一個MIME Types

image

 

注意:File name extension 要打 .

image

 

image

 

6.到站台下新增一個名稱為 .well-known 的虛擬目錄,指向步驟4建立的資料夾。

image

7.打開瀏覽器看看可不可以看到圖片,http://xxx.yyy.com/.wel-known/acme-challenge/test.jpg
很好,看來是正確的。

image

於是我們就可以點下圖中第五步驟的連結進行驗證,

image

點擊驗證連結後出現的視窗畫面如下.

image

 

7.按下Download SSL Certificate 按鈕後,進入下載憑證的頁面,如果你沒有帳號,

在這邊可以申請,方便在憑證過期前一星期用e-mail通知(九十天一簽),

也可以在本網站登入檢視擬申請的所有憑證狀況.

image

 

8.將憑證打包下載後,解壓縮會有三個檔案, .crt ,如下圖, 但是Azure Cloud Service是需要 .pfx

所以需要OpenSSL這個工具軟體來做轉換.

2017-07-11_161904

 

9.我們到 https://www.openssl.org/去下載 OpenSSL 回來安裝,來對crt檔做轉換

(1) 首先開啟cmd,這邊有一點要注意, 我的習慣在做類似這些操作時我都會使用系統管理員模式來開啟cmd

避免出現一些不確定的狀況,接下來輸入以下指令,過程中會需要輸入密碼,這個密碼就是將來要匯入時需要輸入的密碼

請注意,這些指令是同一行,這邊換行是大家可以方便閱讀

ps.請自行命名不要天兵到真的把檔案取名叫做請自行命名... 

{OpenSSL安裝資料夾}\bin\openssl pkcs12 -export -out 
{憑證下載後存放的路徑}\(請自行命名).pfx -
inkey 
{憑證下載後存放的路徑}\private.key -in 
{憑證下載後存放的路徑}\certificate.crt -
certfile 
{憑證下載後存放的路徑}\ca_bundle.crt

10.將剛剛轉換得到的(自行命名).pfx , 到Azure的管理Portal裡上傳這個憑證,填入先前自訂的密碼,

上傳成功後然後會的到一組ThumbPrint(指紋)

 

 

11. 點選WebRole,右鍵點選內容,設定好EndPoint,如下圖

然後請將剛才所得到的ThumbPrint(指紋)寫到雲端設定檔裡面的<Certificates>節點,將網站發行,完工,測試之!!

 

 

附註一:使用遠端桌面進入Azure Cloud Service進行的系統或是檔案變更,但是會被洗掉的,

而九十天的期限一到,舊有的憑證會失效,要換新的憑證,所以必須要重新做一次認證!

即便我們可以找到很多資料可以來做自動續簽的功能,但是以上的步驟只是幾分鐘的事情,

"懶"是科技產業進步的一大動力,不過這個神聖的任務就給比我更懶的人吧! XD,

 

附註二:如果你是使用Azure App Service 請參閱

https://gooroo.io/GoorooTHINK/Article/16420/Lets-Encrypt-Azure-Web-Apps-the-Free-and-Easy-Way/21872#.WWMzND02s3c

 

 

 

arrow
arrow

    baechang 發表在 痞客邦 留言(0) 人氣()