我已经安装了 certbot,并且 certbot 制作了自己的 systemd 服务文件“certbot.service”用于自动证书更新,该文件每天通过 .timer 文件启动一次。
成功执行此“certbot.service”后,我喜欢执行第二个(“cert-copy-after-certbot.service”),将证书复制到另一个位置。
目前我的设置如下所示:
“certbot.service”(由 certbot 生成):
pi@raspberrypi:/lib/systemd/system $ cat certbot.service
[Unit]
Description=Certbot
Documentation=file:///usr/share/doc/python-certbot-doc/html/index.html
Documentation=https://letsencrypt.readthedocs.io/en/latest/
[Service]
Type=oneshot
ExecStart=/usr/bin/certbot -q renew
PrivateTmp=true
Run Code Online (Sandbox Code Playgroud)
“cert-copy-after-certbot.service”:
pi@raspberrypi:/etc/systemd/system $ cat cert-copy-after-certbot.service
[Unit]
Description=crt update after certbot has run
Wants=certbot.service
After=certbot.service
[Service]
Type=simple
ExecStart=/bin/sh -c "cat /etc/letsencrypt/live/<mydomain>/privkey.pem /etc/letsencrypt/live/<mydomain>/fullchain.pem > /etc/ejabberd/ejabberd.pem"
Run Code Online (Sandbox Code Playgroud)
如果我运行这个文件:
systemctl start <unitname>
Run Code Online (Sandbox Code Playgroud)
两项服务均正常运行。
但是当我用“systemctl start certbot”启动 certbot 并检查
systemctl status cert-copy-after-certbot
Run Code Online (Sandbox Code Playgroud)
cert-copy-after-certbot.service 未运行。
是我配置错误了吗?