之前介绍过通过Let’s Encrypt申请证书。
但此种方式证书只能对应单个域名或将多个域名合在一张证书中,而且还要事先配置HTTP访问。这样随着需要证书的服务和应用变多,就会比较麻烦。
这种情况官方也考虑到了,在早前就推出了申请通配符证书;要申请通配符证书需要为申请的域名添加DNS TXT记录,不再需要HTTP路径访问。下面是操作方法:
签署通配符证书需要certbot 0.22以上。
pip install --upgrade pip pip install --upgrade certbot
申请通配符证书:
certbot certonly --manual --server https://acme-v02.api.letsencrypt.org/directory -d "xxx.com" -d "*.xxx.com" --preferred-challenges dns-01 -m [email protected] --agree-tos
由于这里填写了两个地址,会提示需要在DNS记录中添加两条TXT记录,把提示的值添加到解析即可:
添加完之后,可在另一台机上进行验证:
dig -t txt _acme-challenge.xxx.com
确定后,即可生成新的通配府证书:
拉下来证书进行查看:
Tips: 申请的通配符证书同样也是三个月有效,也需要通过renew也更新续期,之前申请的证书可以通过delete来删除:
certbot renew certbot delete -d x.xxx.com