Let's encrypt 申請通配域名的方式以下:web
certbot certonly --manual \ -d '*.exampple.com' \ --agree-tos \ --email domain@example.com \ --server https://acme-v02.api.letsencrypt.org/directory
上面是通配的子域名, 只能是 a.example.com形式, 不能是 a.b.example.com 形式. 要使用更下級的子域有幾個要點:api
須要添加TXT記錄 _acme-challenge.b.example.com
設置了TXT記錄後先別急着回車. 先手工驗證一下TXT記錄有咩有生效瀏覽器
dig -t txt _acme-challenge.b.example.com
上面一個是正式的. 簽發的證書是瀏覽器信任的, 下面一個僅用於測試. 咱們能夠看到它的名字是Fake LE Root X1服務器
Fake 的意思本身百度.
進入 https://certbot.eff.org/, 選擇你的系統, 頁面會自動輸出對應的各類系統的安裝方式.dom
Ubuntu 16.04 的安裝命令以下:測試
$ sudo apt-get update $ sudo apt-get install software-properties-common $ sudo add-apt-repository ppa:certbot/certbot $ sudo apt-get update $ sudo apt-get install certbot
1.建立 b.example.com 的A記錄
2.執行命令申請通配域名(三級域名)spa
certbot certonly --manual \ -d '*.b.exampple.com' \ --agree-tos \ --email domain@example.com \ --server https://acme-v02.api.letsencrypt.org/directory
3.輸入兩次Y, 確認了兩次, 終端輸出以下形式的東西, 別敲回車命令行
_acme-challenge.b.example.com with the following value: ZaUsqkBE109SZMDZheM3UUXA-iw6dukTsixXoG_QrSE
4.建立TXT記錄
5.驗證TXT記錄是否生效code
dig -t txt _acme-challenge.b.example.com
6.TXT生效後敲回車進行DNS的TXT驗證server
你會看到簽發給你的證書的域名是這樣的 *.b.example.com, 成功以後, 就能夠隨便添加你的三級域名了.
x.b.example.com y.b.example.com z.b.example.com
必定注意使用測試API接口先進行測試. Let's encrypt 失敗次數過多會屏蔽你一段時間, 防止濫用.
總的來講, 通配域名減小了爲不一樣的子域名申請不一樣證書的麻煩. 同時申請過程也比配置Web服務器的驗證方式要簡單. 只須要修改DNS相關的解析記錄就能夠了. 比之前方便了很多.