从Let’s Encrypt签署的证书中删除不需要的域名

Let’s Encrypt是一个于2015年第三季度出现的数字证书认证机构,该机构不仅向个人用户提供免费的SSL/TLS证书,还开发了一套自动化的证书申请工具,大幅简化了复杂的证书申请流程。

该机构的出现掀起了一波个人网站SSL/TLS化的潮流,目前已经是V2EX上的钦定证书认证机构。考虑到WoSign和StartCom的那些破事,Let’s Encrypt也应该是目前个人站点SSL/TLS化的首选证书来源。

Let’s Encrypt的网站上提供了如何为指定的域名申请证书的教程,但是却没说怎么把不想要域名从证书中删除。有的时候因为使用的域名发生变化,会导致证书更新(renew)失败,所以我们确实需要知道如何从证书中删除不需要的域名。

从证书中删除域名

其实,Let’s Encrypt目前并不提供从证书中删除域名的功能……但是我们可以把证书删除后重新申请。

对于一些不想再继续更新的证书,也可以采用本文的方式将它们删除,以避免/etc/letsencrypt/目录中留下太多没用的文件。

删除证书的时候,需要删除archive中的文件和live中的符号链接,同时还需要删除证书更新的配置文件:

rm -rf /etc/letsencrypt/live/www.example.com/
rm -rf /etc/letsencrypt/archive/www.example.com/
rm /etc/letsencrypt/renewal/www.example.com.conf

删除后,重新申请证书,这里给出的是webroot方式,当然你也可以用standalone方式:

letsencrypt certonly --webroot -w /var/www/example -d foo.example.com -d bar.example.com

获得证书后,测试一下是否可以正常更新:

letsencrypt renew --dry-run --agree-tos

如果更新一切正常,就证明证书当中已经不包括我们不需要的域名了。

是否需要吊销旧的证书?

我并不知道吊销证书会不会产生什么不好的后果,但是证书吊销一般都发生在一些严重的安全事故之后。由于我们并没有发生什么严重的安全事故,只是删个域名而已,因此我个人认为是不需要吊销旧证书的。而且Let’s Encrypt签发的证书只有90天的有效期,等着它自己过期就可以了。

CC BY-NC 4.0 本作品使用基于以下许可授权:Creative Commons Attribution-NonCommercial 4.0 International License.

《从Let’s Encrypt签署的证书中删除不需要的域名》上有6条评论

  1. 哥,别>﹏<
    我的炸了。。。修了好久
    去 >certbot delete 吧
    然后还可以去/etc/letsencrypt/cli.ini改一下domins那一行

  2. 请教博主一个问题:我的服务器有多个不同的域名,也申请了多个证书,在更新的时候,只更新了其中一个或者某一个怎么解决呢?

发表评论

邮箱地址不会被公开。 必填项已用*标注