HTTPS證書知識掃盲
- 2020 年 10 月 13 日
- 筆記

1. 前言
現在搞網站域名不加個HTTPS就顯得不專業,特別在使用JWT進行認證的介面一定要加HTTPS為你的介面增加一層安全螢幕障。今天就來聊聊配置HTTPS的關鍵SSL證書,也被稱為CA證書。
2. 什麼是SSL證書?
SSL(Secure socket layer)證書通過在瀏覽器和WEB伺服器之間建立一條SSL安全通道,對傳送的數據進行加密和隱藏,確保數據在傳輸中不被改變,保證數據的完整性,目前已經成為互聯網安全傳輸的主流標準之一。由於SSL技術已建立到所有主要的瀏覽器和WEB伺服器程式中,我們只需要安裝可信任的證書就可以了。
3. 為什麼要從CA獲取證書?
自己簽發的證書沒有正式在大家所熟知的認證權威那裡註冊過,因此不能確保它的真實性,你想如果你訪問了一個釣魚網站,而這個網站的證書卻是他們自己簽發的證書,這還有什麼意義呢?不過自己簽發的證書也能保證數據傳輸的安全性,只是主流瀏覽器是不信任你的,所以要用權威的CA證書籤發機構簽發的證書。
4. 為什麼證書這麼貴?
CA機構的證書在以前都是收費的,而且坐地起價,少則一兩千塊,多則好幾萬,而且還是年費。其實簽署一個證書的成本幾乎為零,開個程式跑就行了,但是為什麼一個虛擬證書這麼貴呢?
據胖哥了解,一個CA機構每年必須過 WebTrust 年度審計,還要向瀏覽器廠商交錢,而且還要向保險公司繳納巨額的保費,另外比較高級的證書籤發流程非常嚴謹,需要大量的人工審核工作。新開的CA公司要等好幾年才會被普遍信任,才能廣泛進入根證書鏈。要想入伙就得給其它知名的CA公司掏錢,買次級證書來加速進程。
5. 免費證書也不是沒有
昂貴的價格讓很多中小網站望而卻步,這時一家名叫Let』s Encrypt的機構順勢而出。它是一家免費、開放、自動化的證書頒發機構(CA),旨在為任何擁有域名的人提供免費獲取授信的證書。目前已經支援通配符證書,但是只有90天的時效。
Let』s Encrypt的意義就像Gmail一樣,讓電子郵箱逐漸免費化,走入尋常百姓家。目前大部分的低級別CA證書都已經免費,你可以通過中國幾大雲廠商申請使用。如果沒有Let』s Encrypt恐怕我們還得被CA機構割韭菜。
6. CA證書的種類
CA證書可按照驗證方式和域名適配數量進行區分。
驗證方式
- DV域名驗證型SSL證書,大部分免費,只需要驗證對應域名的所有權,適用於小型靜態網站、部落格。幾分鐘就能完成簽發
- OV企業驗證型SSL證書,需要驗證域名所有權以及企業身份資訊,證明申請單位是一個合法存在的真實實體,一般在1~5個工作日頒發。
- EV擴展驗證型SSL證書,除了需要驗證域名所有權以及企業身份資訊之外,還需要提交一下擴展型驗證,比如:鄧白氏等,通常CA機構還會進行電話回訪,一般在2~7個工作日頒發證書。價格一般在千元至萬元左右,適用於在線交易網站、企業型網站。
域名適配
- 單域名證書,比如證書給www.felord.cn簽發,那就只能給該域名使用,不能給其下級域名使用,比如不能給 assets.felord.cn使用。
- 通配符證書,只能保護一個域名以及該域名的所有下一級域名,不限制域名數量。
- 多域名證書,這個最多,可以同時保護多個域名,不限制域名類型,有興趣可以去看看淘寶網的證書。
7. 總結
今天對SSL證書進行了介紹,相信你已經知道如何去申請適合你自己的證書了。那就趕緊為自己網站添加一個證書吧。另外胖哥不推薦將證書配置到Tomcat之類的容器中,這樣不方便開發不說也不利於隱藏真實的伺服器,建議使用Nginx代理並將證書配置到Nginx。好了今天的科普就到這裡,多多關註:碼農小胖哥 獲取更多乾貨知識。
關注公眾號:Felordcn 獲取更多資訊

