Ssl-Certificate
Letsencrypt 為所有子域 *.example.com
我想獲得一份適用於我所有子域的證書
*.example.com
。這有效:
certbot-auto certonly --webroot --webroot-path /home/www/example/ --domain example.com --domain www.example.com --email certbot@example.com
但是這個(帶
*.
):certbot-auto certonly --webroot --webroot-path /home/www/example/ --domain example.com --domain *.example.com --email certbot@example.com
失敗:
獲取新證書
執行以下質詢:
具有目前選定身份驗證器的客戶端不支持任何滿足 CA 的質詢組合。您可能需要使用可以通過 DNS 進行挑戰的身份驗證器外掛。
如何使用
certbot-auto
生成證書*.example.com
?
正如評論中提到的,解決方案是使用 DNS 質詢驗證,如下所示:如何使用 Let’s Encrypt DNS 質詢驗證?.
首先刪除您以前的證書(如果需要):
certbot-auto delete
然後生成一個帶有 DNS 質詢的新證書:
certbot-auto -d *.example.com -d example.com --manual --preferred-challenges dns certonly
然後將 TXT 質詢複製/粘貼到您的 DNS 設置中,例如:
_acme-challenge.example.com TXT Chs768564536576SDGdG6SQDYTZAEq
如果需要,重新啟動 apache,它就可以工作了。
PS:在我的情況下,不需要安裝驗證器外掛(它可能是開箱即用的嗎?)