前言
Let's Encrypt 是一個發放免費 SSL 憑證服務的機構,網上有很多介紹,所以就略過。此篇是透過 CertBot 安裝的指南。
目前 Terry 的所有網站通通都改用 Let's Encrypt 搭配 CertBot 核發免費憑證,理由有以下特點:
特點
- 免費。
- 各大瀏覽器皆支援,安全性要求嚴格的 Google 都讓 Chrome 可以支援的話,這個理由加上免費就足夠了。以下是我認為加分的特點。
- 無限展期,Let's Encrypt 的機制是三個月 renew 一次,原本不喜歡還得進 server 處理,由其手上網站很多,更是麻煩,但透過本文介紹的 CertBot 在命令列模式中進行安裝,會自動透過排程展期,完全設後不理,好棒棒。
- CertBot 會自動修改網站伺服器的設定檔,安插進相對應的設定。這方面有疑慮的人,CertBot 的設定有選項讓你手動去處理這一塊。
- CertBot 在 GitHub 有 open source 的 repository。廣大社群都在看,有安全疑慮很快有熱心的高手們協助修護及 code review。
安裝
安裝上更是簡單呀。我第一次裝時心裡的 OS: 也他媽的太方便了吧。心裡各種髒話式的讚美詞通通冒了出來。由於本人走的是氣質文青路線,這種粗俗的讚賞當然是不能說出口。
1. 選擇作業系統和伺服器軟體
在 CertBot 首頁上可以直接選擇要安裝的網站所使用的作業系統和伺服器軟體。以這個例子,我習慣使用 Ubuntu + Nginx。
選擇完會出現相對應的指令。
2. 安裝所需套件
sudo apt-get update
sudo apt-get install software-properties-common
sudo add-apt-repository universe
sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install certbot python-certbot-nginx
依照網站指令安裝所需套件。等個 3 至 5 分鐘。
3. 安裝憑證
輸入指令
sudo certbot --nginx
則會出現提示選項,問用戶要把憑證裝到那一個 nginx 設定檔。
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: terryl.in
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter 'c' to cancel):
選擇完則自動安裝,套用相對應的指令到 nginx 設定檔中。
驗證是否安裝成功
Google Chrome 瀏覽器上的網址列的圖示點下去就可以看到憑證資料囉!
點擊 Certificate
可以看到詳細的憑證資料。以這個例子,有效時間是從 2019 年的 2 月 2 日至 2019 年的 5 月 3 號。它是自動展期的,我大約是從 2018 年的七月開始啟用。
結論
就是這樣。除非是有需要金流服務的網站,不然只是一般內容性質的網站,其實用 Let's Encrypt 就措措有餘了。
留言