使用 Certbot 維護內含多個子網域的單一憑證

前言

Let’s Encrypt 推出至今一年多,受到廣大用戶的歡迎,它的官方用戶端也隨著功能演變與更新也改名為 Certbot

使用初期,為了加深對子網域個別的控制,因此採用憑證與子網域一對一對映的策略;但隨著子網域成員增加,每次逐一更新便顯得很沒效率。

本文將示範如何把多個子網域納入單一憑證,以及後續維護。

目標

  • 憑證的 CN (Common Name) 是主網域 example.com
  • 憑證的 SAN (Subject Alternative Name) 是明列的子網域 www.example.commail.example.com
  • 用戶可使用單一指令新增、移除憑證內子網域

做法

若想產生內含多個子網域的憑證,例如將 www.example.commail.example.com 加入 example.com,命令如下:

certbot certonly --cert-name example.com -d example.com,www.example.com,mail.example.com

-d--domains 為明列的子網域清單


日後若需於該憑證移除 mail.example.com 並加入 static.example.com,只需如此:

certbot certonly --cert-name example.com -d example.com,www.example.com,static.example.com

Certbot 會自行比對既有憑證內的 SAN 與輸入的子網域清單,移除或增加的新憑證的 SAN。

參考資料

Leave a Reply

Your email address will not be published.