快速在 Apache 上套 Let’s Encrypt,立刻享有免費的 TLS/SSL 憑證!

2 / 18, 2016 網路安全 , 電腦技巧

前陣子我幫我管的幾個網站(包含電腦故我在)套了 Let’s Encrypt ,所以都有 HTTPS 可以用了,不過人老了(?)記憶不好,所以就來筆記一下要怎麼做好了,因為我是使用 Ubuntu + Apache ,所以這篇文章主要也是針對 Apache 寫的,至於其他系統大概也大同小異就是了。

先簡單介紹一下 Let’s Encrypt ,他是一個由多個公司合作有贊助,推行的一個憑證簽署來源,一改以往憑證貴的半死的問題, Let’s Encrypt 完全是免費的,而且還有超強的導引系統,很容易安裝。

首先, Let’s Encrypt 的 Repo 是放在 Github 上,所以要先安裝 Git

sudo apt-get install git

再來, Linux 的第三方套件通常是丟 /opt ,所以就依照慣例放在這個目錄底下

sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt

接著 cd 過去,就可以開始囉

cd /opt/letsencrypt

準備簽憑證, -d 後面放您的網址,如果想要一個憑證放多個網址,就放超級多個 -d 就可以了

./letsencrypt-auto --apache -d allenchou.cc -d blog.allenchou.cc

接著會進入一個導引系統,會要你輸入 email 等等資訊,就按照他寫的輸入就好,此外會跑出一個視窗問要強制 HTTPS 與否,看你個人想法吧,我是設定強制 HTTPS

最後回到你的網站,就 Oh Ya 有 HTTPS 啦
螢幕快照 2016-02-15 下午4.51.06

啊等等還沒結束, Let Encrypt’s 的憑證基於安全性,期限是三個月,所以每三個月要執行下述指令,一樣 -d 後面是自己的網址,可以放很多個 -d

./letsencrypt-auto certonly --apache --renew-by-default -d allenchou.cc -d blog.allenchou.cc

但是… 誰會記得去延期呢(拍拍),所以要設定自動延期啦,有位強者 Erika Heidi 寫了一個很優秀的 Script 可以達到這點,先把他爬下來

sudo curl -L -o /usr/local/sbin/le-renew https://gist.githubusercontent.com/erikaheidi/4d579acf553297da0fa1/raw/ced2ece3b346e25a7424f4de123510fb8de1f47a/le-renew.sh
sudo chmod +x /usr/local/sbin/le-renew

然後,設定一個 Cron Job

sudo crontab -e

加入以下內容,記得不要換行

30 2 * * 1 /usr/local/sbin/le-renew allenchou.cc >> /var/log/le-renew.log

好,完成,開始享受 HTTPS 的安全性吧

  • 最近好像改成certbot-auto了!舊版Let’s Encrypt無法繼續使用。

    • s3131212

      哦哦晚點來研究

  • BobbyHo

    Nginx/
    話說 Let’s Encrypt 的 Nginx Plugin 竟然還在 experimental…

  • 個人經驗談
    Let’sencrypt在XP上會被識別為非簽證用途憑證,結局非常明顯 (遠目

    • ray7496422

      XP太舊了 50收