安裝成功後找不到 certbot cron 作業
我在 Node 中開發了一個 REST API,並在其前面安裝了 nginx 作為反向代理,以便處理來自 Letsencrypt 的 SSL 證書。這是我第一次設置 nginx,但一切似乎都按預期工作。certbot 的安裝很順利,證書已經到位並且可以正常工作。我唯一擔心的是我看不到任何自動續訂的證據。
Certbot 文件說:
更新 certbot 的命令安裝在以下位置之一:
/etc/crontab/ /etc/cron.*/* systemctl list-timers
我已經檢查了上述所有位置,但任何地方都沒有 certbot 的痕跡。執行
sudo certbot renew --dry-run
工作沒有任何錯誤消息,但據我所知,沒有創建 cron 作業或計時器。文件是過時的還是我缺乏 Linux 技能的問題?伺服器正在執行 Ubuntu 20.04.1 LTS 和 nginx/1.18.0 (Ubuntu)。
預設情況下,在 Ubuntu 18.04+ 上,certbot 應該
/etc/cron.d/certbot
每 12 小時添加和執行一次(*/12)
。如果您在那裡看不到文件,您可以通過執行sudo crontab -e
並添加一個遵循模闆說明的簡單作業來創建自己的 cronjob。您需要確保 cron 了解 certbot 所在的位置,或使用完整路徑。通常,完整路徑比希望 cron 知道您的PATH
. 預設情況下 certbot 應該在/usr/local/bin/certbot
您可以通過以下方式驗證 certbot 的位置
which certbot
您應該在 cron 作業中輸入的命令是
/path/to/certbot renew
要在每個月的每一天、每個月、一周的每一天執行午夜更新,如果一切都是預設的並且您使用的是 Ubuntu,那麼您在 cron 中添加的完整行將是:
# m h DoM Mon DoW command: 0 0 * * * /usr/local/bin certbot renew