1. 程式人生 > >acme.sh及https證書實踐

acme.sh及https證書實踐

HTTPS證書

SSL Labs 這個工具可以測試HTTPS證書平臺相容性和安全性,並打分。
crt.sh這個工具可以按萬用字元域名查詢所有證書的詳情

原理

非對稱加密的典型應用,另一個是PGP加密。首先建立TCP連線,然後通過DH金鑰交換演算法交換金鑰,具體是先協商SSL引數,然後服務端傳送公鑰,客戶端驗證公鑰後產生隨機數,並通過服務端公鑰加密發給服務端,服務端解密後,同樣生成隨機數,通過客戶端公鑰加密發給客戶端,雙方計算出一樣的對稱金鑰用於通訊。

Let's Encrypt免費證書

Let's Encrypt 是一個免費、開放,自動化的證書頒發機構,由 ISRG(Internet Security Research Group)運作。ISRG 是一個關注網路安全的公益組織,其贊助商包括 Mozilla、Akamai、Cisco、EFF、Chrome、IdenTrust、Facebook等公司。
該免費證書有效期90天,使用acme.sh指令碼,60天后可以自動續期。免費的總是有限制的

Limits,每個註冊域名,一週最多簽發50個證書,還有每週5個重複證書限制,還有每小時5次失敗證書限制。觸發限制後,該註冊域名都不能簽發Let's Encrypt證書,後果相當嚴重。

acme.sh

acme.sh是一個shell指令碼,用於管理Let's Encrypt免費證書。原理是通過命令中指定的目錄和域名,判斷域名所有權,簽發證書,並將這些引數儲存到配置檔案中,以便定時更新證書。配置檔案具體在證書目錄的conf結尾檔案中。日常使用通過命令檢視,管理證書,支援更新證書後執行重啟等命令。