dehydrated
dehydrated是一套支援ACME協定的套件(目前僅由Let's Encrypt提供服務)。
安裝
$ sudo add-apt-repository ppa:gslin/dehydrated
$ sudo apt update
$ sudo apt install dehydrated
設定
基本設定
dehydrated在偵測到/etc/dehydrated/config
或/usr/local/etc/dehydrated/config
時(兩個都有時前者優先),會將/etc/dehydrated
或是/usr/local/etc
當作設定目錄,所以我們需要產生/etc/dehydrated/config
,目前裡面不需要有東西:
$ sudo mkdir /etc/dehydrated
$ sudo touch /etc/dehydrated/config
單一域名設定
domains.txt
內一行是一張憑證,有幾種方式可以設定。
一張憑證一個域名
一行放一個域名,將需要申請的網域名稱放到domains.txt
內:
$ cd /etc/dehydrated
$ echo 'blog.gslin.org' | sudo tee -a domains.txt
$ echo 'wiki.gslin.org' | sudo tee -a domains.txt
一張憑證多個域名
將想要放在同一張憑證的域名放在同一行,一樣是domains.txt
內:
$ cd /etc/dehydrated
$ echo 'blog.gslin.org wiki.gslin.org' | sudo tee -a domains.txt
進階設定
在config
內可以設定開啟憑證內標示一定要開OCSP Stapling:
OCSP_MUST_STAPLE=yes
執行
第一次需要同意條款:
$ sudo dehydrated --register --accept-terms
之後就可以用-c
自動更新:
$ sudo dehydrated -c
後續
上面提到更新的指令可以放到/etc/cron.weekly
內執行,透過傳回值可以判斷是否有更新,然後重跑nginx或是Postfix(以及其他有用到的服務)。