開發微信小程序時,要求發佈的站點要求HTTPS證書。然後CHROME瀏覽器現在都默認將HTTP的站點顯示爲不安全。看來,必須得讓自己的平臺也加上HTTPS了。同時GODADDY的HTTPS證書,一個證書只對應一個域名,就不能適用子域名了。 還遇到奇怪 現象。在SERVER 2012導入crt證書成功後,刷新就會消失,網上說是微軟的一個BUG。 經過親自嘗試和翻閱網上的一些資料,終於找到方便快捷也免費的HTTPS證書的方法,和付費的沒有區別啊。
- 現在分享給大家,幫助更多IT夥伴。
這個免費HTTPS申請的原理是通過WIN10的應用商品 安裝ubunto,再向ubunto中安裝certbot這個功能,向Letsencrypt獲取到免費的HTTPS證書,按圖所做,一般10分鐘左右直接就在本機生成了HTTPS證書
先在WIN10中安裝Ubunto
window 10 控制面板->程序-> 添加刪除WINDOWS功能 :linux的windows子程序 勾選,確定並安裝此功能。
再通過WIN10自帶的windows store搜索ubuntu並安裝。
在本機運行 ubuntu,第一次運行顯示installing , this may take a few minutes
Installing成功後,第一次運行ubunto,會顯示 enter new UNIX username
輸入用戶名密碼成功後如圖 :
輸入 sudo lsb_release –a ,再輸入剛設置的密碼,可以查看ubunto版本信息
安裝certbot
打開網址 https://certbot.eff.org
選擇None of the above 和 上面查看到的ubtunto版本(本案例是Ubunto18.04 LTS)
選擇之後,頁面下方會顯示 ubunto中操作的命令行
回到ubunto中輸入上述命令,每行命令回車。ubunto會執行操作,安裝需要的包,並輸出相應結果。
執行到 sudo apt-get install certbot 結束爲止。網頁中的命令結束,安裝上了certbot這個功能。
生成證書
繼續在本機ubunto終端輸入命令行:
$ sudo certbot certonly -d *.canbloom.com --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory
這裏的canbloom.com就是你的域名,後面提到的這個域名大家都請改成您自己的域名,別忘咯
回車執行此命令,
- 會提示輸入ubunto密碼
- 是否對域名和機器(IP)進行綁定(必需同意Y才能繼續)
顯示按ENTER繼續,但是必須在域名解析里加一個TXT記錄,才能繼續。
這是證書最關鍵一步,創建TXT記錄 。這是用來判斷證書申請者對該域名有所有權。
登錄自己的域名所在的網站。本人是GODADDY的:
TXT創建後,新打開一個ubunto終端, 用這個命令檢查是否TXT解析添加成功。
dig -t txt _acme-challenge.canbloom.com @8.8.8.8
執行命令輸出如下圖,表示添加TXT成功
回到申請證書的終端 ,現在可以放心的按ENTER。輸出如下圖:
關鍵的信息在IMPORTANT NOTES 中,生成的證書保存在\etc\letsencrypt\live\canbloom.com路徑中。我們進這個路徑看下生成的文件,在終端輸入如下命令:
Cd /
Cd etc
Cd letsencrypt
Cd live (執行此命令提示Permission denied,因爲權限不足,沒關係繼續)
Sudo su (用管理員登錄,提示輸入密碼,就可成功進入)
Cd live
Cd canbloom.com
Dir (命令行最後輸出文件就是申請到的pem證書文件了)
合併生成pfx證書文件
我們所申請生成的證書爲pem格式,而IIS只支持pfx格式證書,那我們要把pem文件合併爲pfx證書
執行合併生成pfx證書的命令:
openssl pkcs12 -export -out canbloom.pfx -inkey privkey.pem -in fullchain.pem -certfile cert.pem
會提示創建導出證書密碼、確認導出密碼,輸入完成,回車執行完成,但並沒有任何提示,如圖:
所以通過windows資源管理器找到證書所在的ubunto路徑,確認pfx證書是否存在:
C:\Users\XXXXX\AppData\Local\Packages\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc\LocalState\rootfs\etc\letsencrypt\live\canbloom.com\
上述XXXXX是您本機的用戶名,大家複製粘貼改一下就是你本機的路徑了
路徑中可以看到申請到的pem證書文件,和生成的pfx證書文件
執行到這裏,成功得到了可以導入到IIS的https的證書!!
https證書各大雲平臺都可以付費購買費用幾百一年。GODADDY也有,但使用起來頗爲麻煩,因爲它不能用於子域名,二級域名的限制。有強烈好奇心和求知慾的IT夥伴位,付費買HTTPS不如手動申請下吧。
堪博科技cxy
20191022