自动创建 letsencrypt 证书

自动创建 letsencrypt 证书

目前我每 3 个月手动创建一次 letsencrypt 证书。我有一个网络空间并使用我的服务器来创建证书。然后我下载证书并手动添加。由于我无法自动将证书添加到网络空间,因此我至少希望自动创建证书并为此准备一个 bash 脚本。

因此批处理脚本应该执行以下操作:

  1. cd letsecrypt
  2. ./letsencrypt-auto --rsa-key-size 4096 -a manual certonly
  3. 模拟输入域名(例如sub.domain.com
  4. 模拟按回车键(两次)
  5. 等到脚本要求再次按“enter”键
  6. 模拟按下回车键

使用多个域重复 2-6

之后压缩/etc/letsencrypt/live文件夹并通过邮件发送(但邮件内容也可以省略)

我已经搜索了模拟输入法:https://stackoverflow.com/questions/6264596/simulating-enter-keypress-in-bash-script

但我不知道如何告诉脚本等待,或者如何循环 2-6 多次。

答案1

你知道吗certbot renew(或certbot-auto renew)命令,对吗?看来您使用的版本已过时——该命令不再称为letsencrypt。整个系统从一开始就设计为自动化。

基本上,你想要的是类似这样的东西:

certbot renew --post-hook "/root/mail-cert.sh"

以下是一些如何附加文件的示例

我也发现很难相信你会拥有某种可以运行certbot但不能安装证书的网络空间。

相关内容