我有一个每天运行命令的脚本
certbot --nginx -d $DOMAIN
为许多域更新他们的证书
You have an existing certificate that has exactly the same domains or certificate name you requested and isn't close to expiry.
(ref: /etc/letsencrypt/renewal/****.conf)
What would you like to do?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: Attempt to reinstall this existing certificate
2: Renew & replace the certificate (may be subject to CA rate limits)
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): Cert not yet due for renewal
如果证书即将到期,我总是选择 1。是否有一个标志可以传递给命令以使其始终选择 1?
你应该使用
certbot renew
它会自动完成所有操作
https://eff-certbot.readthedocs.io/en/stable/using.html#renewing-certificates
如果您的
certbot
安装正确完成,则很可能已经设置了一个 cron 作业来执行此操作(因此您不必自己手动执行此操作)。我最近使用snapcertbot
安装在 ubuntu 22 服务器中,并自动添加了一个 cronjob 。/etc/cron.d/certbot
您可以尝试使用
-n
参数运行命令:如果这没有帮助您可以使用常用方法来回答命令行工具的问题:
将答案输入命令
利用
expect
使用其他方式编辑配置文件,例如,
sed
或您选择的配置管理解决方案。