前言

Let's Encrypt 是一個發放免費 SSL 憑證服務的機構,網上有很多介紹,所以就略過。此篇是透過 CertBot 安裝的指南。

Certbot 官方網站截圖
Certbot 官方網站截圖

目前 Terry 的所有網站通通都改用 Let's Encrypt 搭配 CertBot 核發免費憑證,理由有以下特點:

特點

  1. 免費
  2. 各大瀏覽器皆支援,安全性要求嚴格的 Google 都讓 Chrome 可以支援的話,這個理由加上免費就足夠了。以下是我認為加分的特點。
  3. 無限展期,Let's Encrypt 的機制是三個月 renew 一次,原本不喜歡還得進 server 處理,由其手上網站很多,更是麻煩,但透過本文介紹的 CertBot 在命令列模式中進行安裝,會自動透過排程展期,完全設後不理,好棒棒。
  4. CertBot 會自動修改網站伺服器的設定檔,安插進相對應的設定。這方面有疑慮的人,CertBot 的設定有選項讓你手動去處理這一塊。
  5. CertBot 在 GitHub 有 open source 的 repository。廣大社群都在看,有安全疑慮很快有熱心的高手們協助修護及 code review。

安裝

安裝上更是簡單呀。我第一次裝時心裡的 OS: 也他媽的太方便了吧。心裡各種髒話式的讚美詞通通冒了出來。由於本人走的是氣質文青路線,這種粗俗的讚賞當然是不能說出口。

1. 選擇作業系統和伺服器軟體

步驟1.1
步驟1.1

在 CertBot 首頁上可以直接選擇要安裝的網站所使用的作業系統和伺服器軟體。以這個例子,我習慣使用 Ubuntu + Nginx。

步驟1.2

選擇完會出現相對應的指令。

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 瀏覽器上的網址列的圖示點下去就可以看到憑證資料囉!

SSL 憑證資料

點擊 Certificate 可以看到詳細的憑證資料。以這個例子,有效時間是從 2019 年的 2 月 2 日至 2019 年的 5 月 3 號。它是自動展期的,我大約是從 2018 年的七月開始啟用。

SSL 憑證細節

結論

就是這樣。除非是有需要金流服務的網站,不然只是一般內容性質的網站,其實用 Let's Encrypt 就措措有餘了。

最後修改日期: 2021-02-11

作者

留言

撰寫回覆或留言

發佈留言必須填寫的電子郵件地址不會公開。