1.數字證書
數字證書是部署HTTPS站點的關鍵必須項,證書可以向CA機構通過付費的方式申請(也有少數免費的),也可以自己制作,
1.1自制證書
自己給自己頒發的證書,那么頒發的機構就是你自己,這無異于自圓其說,所以頒發機構作為你自己那么對于瀏覽器而言是不具備信任條件的,瀏覽器只資訊一些主流權威的CA機構頒發的證書,當訪問用自制證書部署的HTTPS站點時,瀏覽器會發出警告,說明證書不受信任且不安全,這個時候需要將我們自制的證書手動的匯入的瀏覽器或作業系統中,并且包含到授信范圍內,
1.2CA證書
CA作為權威的證書授權機構,故頒發的數字證書就稱為CA證書,并且瀏覽器或作業系統都會內置很多CA機構,所以無需向自制證書一樣進行手動的匯入到瀏覽器或作業系統進行授信,當服務器出示CA數字證書的時候,客戶端會在本地去匹配,看服務器的數字證書對應的CA機構是否包含在授信范圍內的,如果是授信的瀏覽器則會提示安全,
2.如何在本地快速將站點部署成Https
2.1通過IIS Express實作
該方式是通過VS開發工具進行設定,并結合IIS提前匯入的數字證書實作的,這種方式也是目前最快實作Https站點的方式,
操作步驟:
A.在VS中選中Web專案

B.點擊F4按鈕,在彈出的“專案屬性”視窗中將“已啟用SSL”設定為true進行保存,并將SSL URL的地址復制用于訪問,

C.訪問結果如圖

2.2在IIS上部署
操作步驟參考動圖:

2.3.對上述兩種方法進行說明
之所以我們可以通過IIS Express和IIS直接部署一個HTTPS站點,這是因為IIS Express和IIS已經提前匯入了一個數字證書,并且該證書用于以localhost域名訪問的所有站點,
可以通過IIS管理去查看“服務器證書”界面中查看到IIS提前匯入的證書,如圖:

上述兩種方式可以結合自身的需求自行拓展運用,
3.使用OpenSSL自制證書部署HTTPS站點
工具官網:http://slproweb.com/products.html
鏈接:https://pan.baidu.com/s/1uieOJgmdH-mnX0z90d5VGQ
提取碼:abmw
使用步驟如下:
3.1.運行openssl
找到安裝目錄下bin目錄下的“openssl.exe”檔案,以管理員的身份打開,
3.2.創建key檔案
命令格式:genrsa -out <名稱>.key <密鑰長度>
操作示例:genrsa -out jcxtest.key 1024
操作參考圖:

命令運行成功后會在bin目錄生成你創建的key檔案
3.3為服務器頒發證書
A.配置主機名,找到C:\Windows\System32\drivers\etc目錄下hosts檔案,打開后在檔案內容末尾添加本機IP并自定義主機名后保存,該主機名作為域名,證書會作用于該域名,如圖:

B.指定服務器的域名結合創建的key檔案,創建一個與之對應的證書檔案
命令格式: req -new -x509 -key <key檔案名> -out <新生成的證書檔案名> -days <證書有效天數> -subj /CN=<域名/主機名>
操作示例: req -new -x509 -key jcxtest.key -out jcxtest.cer -days 365 -subj /CN=www.jcx.com
操作參考圖:
![]()
命令運行成功后bin目錄下會生成一個證書檔案:

3.4.創建PFX檔案
操作示例:pkcs12 -export -out jcxtest.pfx -inkey jcxtest.key -in jcxtest.cer
操作參考圖:

命令輸入后會要求你設定密碼
3.5.將證書匯入到IIS
步驟:
A.在IIS主頁打開“服務器證書”管理界面

B.點擊“匯入”按鈕

C.輸入上述步驟中創建pfx檔案的路徑和密碼

D.IIS匯入證書成功后如圖:

3.6.部署一個站點并結合以上步驟創建的證書,將站點設定成HTTPS
步驟:
A.其中設定關鍵項參考下圖:

B.部署后對其進行訪問,瀏覽器會出現提示不安全,如圖:

出現這種情況的原因是,由于數字證書是我們自己制作的,頒發機構在瀏覽器或者作業系統沒有相應的匹配無法對其進行信任,解決辦法是,我們可以將我們自制的證書匯入到瀏覽器并設定對其信任,
C.將證書匯入到瀏覽器
具體操作參考以下動圖:

總結:使用OpenSSL自制證書部署HTTPS站點的好處是我們無需向CA進行付費獲取證書,但是在實際使用的時候,需要用戶的客戶端手動的匯入自制證書,才能實作SSL安全機制,
小米球Ngrok 工具部署實作HTTPS站點
通過使用一款神器“小米球Ngrok”,我們無需購買云服務、域名、并且向CA付費申請數字證書,也無需進行證書的匯入作業和站點的設定,直接通過下載“小米球Ngrok”工具進行配置后就可以將我們的本地電腦做為一臺外網服務器,并提供對應的域名,把我們的web站點架設到互聯網上以HTTPS的方式進行訪問,
官方網站:http://ngrok.ciqiuwl.cn/ 大家可以直接訪問官方網站并下載,然后加入到對應的QQ群里,群檔案中有詳細的配置視頻和檔案,使用起來很容易,
下面只對使用步驟做一個簡單的步驟說明:
A.下載后打開目錄中的ngrok.conf檔案

B.打開ngrok.conf檔案后我們只修改auth_token、subdomain屬性即可,auth_token可以去小米球賬戶中心找到;subdomain是位你本地服務器生成域名的前綴,可以自定義,
參考如圖:

C.在IIS服務器上部署你的站點應用,注意:部署站點以常規的HTTP的方式部署即可,部署站點的埠要與ngrok.conf檔案中的埠要匹配,如你要部署HTTPS的站點,那么你的應用就必須設定為ngrok.conf組態檔中指定的8080埠,這樣在訪問時才會通過指定域名找到你本地服務器對應的站點,
D.打開目錄中的“小米球Ngrok一鍵啟動工具.bat”的檔案,然后在命令列中輸入開啟的指定隧道,開啟后就可以直接通過小米球分配的域名進行訪問,
操作參考動圖:

轉載請註明出處,本文鏈接:https://www.uj5u.com/net/24011.html
標籤:ASP.NET
上一篇:VS2019依賴項黃三角怎么解決
