Certbot 自动续订漏洞
Certbot automatic renewal vulnerabilities
我有 certbot,包括在多个客户端安装中使用的自动续订。
现在我一直在看这里:
这里
这里
https://github.com/certbot/certbot/issues/5405
还有这里:
每个人的说法似乎都略有不同
并没有给出明确的解释。
我一直在阅读 certbot 安装的标准描述
续订文档指向此处:
https://certbot.eff.org/docs/using.html#renewal
但是:旧的易受攻击的 tls-sni-01
方法仍然被列出
我试着总结一下:
在缓解现有服务器上现有问题的指南中:
他们建议在更新时停止并启动服务器。
但是……这样不好。如果某些配置中断,服务器在我睡着时停止启动怎么办?服务器将不可用。或者更糟的事情。我不是 devops 专家,但让服务器或多或少随机启动和停止,似乎不是一个好的解决方案。我错了吗?
作为替代方案,我只看到 不使用 tls-sni-01
的 webroot 插件。 https://certbot.eff.org/docs/using.html#webroot
这对我来说似乎是唯一的方法,似乎可靠。
我错过了什么吗?我们基本上被告知要使用 webroot 插件吗?
因为所有其他人都使用 tls-sni-01,不是自动的(你可以手动完成,但是呃,我实际上不想这样做)或者要求你没有 运行 服务器(独立)。
那是为了将来的服务器。我想现有的域名续订将继续与旧的 tls-sni-01
一起使用,他们似乎是这么说的。
因为我没有得到答案,所以我将不得不假设事情就是这样,例如尽可能使用 webroot 插件。
我实际查到的是这样的:
命令 certbot renew
进入文件夹 /etc/letsencrypt/renewal
并检查那里的配置文件。这些配置文件是在您上次从命令行触发认证过程时创建的。所以如果你最后做的是使用独立的,你会在那里找到独立的配置(你想从那里迁移)
好的,现在你 运行 第一次使用 webroot 插件:
certbot certonly --webroot -w /var/www/html/www.mypage.com/public -d www.mypage.com -d mypage.com
see here
这最终可以在 /etc/letsencrypt/renewal
中创建一个新条目或覆盖旧的现有条目。一定要删除独立文件,以防它没有覆盖而是创建一个新文件,你只想在那里有 webroot 文件
现在运行crontab -e
最终必须是root用户
添加
53 14 * * * certbot renew --post-hook "service nginx reload"
这将 运行 每天在 14:53 重新加载配置并尝试更新证书
我有 certbot,包括在多个客户端安装中使用的自动续订。
现在我一直在看这里:
这里
这里
https://github.com/certbot/certbot/issues/5405
还有这里:
每个人的说法似乎都略有不同
并没有给出明确的解释。
我一直在阅读 certbot 安装的标准描述
续订文档指向此处:
https://certbot.eff.org/docs/using.html#renewal
但是:旧的易受攻击的 tls-sni-01
方法仍然被列出
我试着总结一下:
在缓解现有服务器上现有问题的指南中:
他们建议在更新时停止并启动服务器。 但是……这样不好。如果某些配置中断,服务器在我睡着时停止启动怎么办?服务器将不可用。或者更糟的事情。我不是 devops 专家,但让服务器或多或少随机启动和停止,似乎不是一个好的解决方案。我错了吗?
作为替代方案,我只看到 不使用 tls-sni-01
的 webroot 插件。 https://certbot.eff.org/docs/using.html#webroot
这对我来说似乎是唯一的方法,似乎可靠。
我错过了什么吗?我们基本上被告知要使用 webroot 插件吗?
因为所有其他人都使用 tls-sni-01,不是自动的(你可以手动完成,但是呃,我实际上不想这样做)或者要求你没有 运行 服务器(独立)。
那是为了将来的服务器。我想现有的域名续订将继续与旧的 tls-sni-01
一起使用,他们似乎是这么说的。
因为我没有得到答案,所以我将不得不假设事情就是这样,例如尽可能使用 webroot 插件。
我实际查到的是这样的:
命令 certbot renew
进入文件夹 /etc/letsencrypt/renewal
并检查那里的配置文件。这些配置文件是在您上次从命令行触发认证过程时创建的。所以如果你最后做的是使用独立的,你会在那里找到独立的配置(你想从那里迁移)
好的,现在你 运行 第一次使用 webroot 插件:
certbot certonly --webroot -w /var/www/html/www.mypage.com/public -d www.mypage.com -d mypage.com
see here
这最终可以在 /etc/letsencrypt/renewal
中创建一个新条目或覆盖旧的现有条目。一定要删除独立文件,以防它没有覆盖而是创建一个新文件,你只想在那里有 webroot 文件
现在运行crontab -e
最终必须是root用户
添加
53 14 * * * certbot renew --post-hook "service nginx reload"
这将 运行 每天在 14:53 重新加载配置并尝试更新证书