change letsencrypt certbot run time
我已经为letsencrypt密钥更新安装了certbot。 这有效。
当我在/ etc / log / letsencrypt检查我的日志时,我发现它每天运行两次。
在午夜左右和中午左右的某个地方。
我想在清晨的某个地方每天只运行一次。
为了控制certbot的运行,我从我的cronjobs中删除了所有条目。 但出乎意料的是它仍在运行。
那么certbot是如何开始的呢?
额外信息:
当我运行一个脚本来显示所有cronjobs我得到这个:
(脚本:如何为所有用户列出所有cron作业?)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | mi h d m w user command 0 3 * * 1 root /usr/bin/rsnapshot weekly 0 */4 * * * root /usr/bin/rsnapshot hourly 16 10 * * * root test -x /etc/cron.daily/popularity-contest && /etc/cron.daily/popularity-contest --crond 25 6 * * * root /etc/cron.daily/apache2 25 6 * * * root /etc/cron.daily/apt-compat 25 6 * * * root /etc/cron.daily/aptitude 25 6 * * * root /etc/cron.daily/automysqlbackup 25 6 * * * root /etc/cron.daily/bsdmainutils 25 6 * * * root /etc/cron.daily/dpkg 25 6 * * * root /etc/cron.daily/exim4-base 25 6 * * * root /etc/cron.daily/logrotate 25 6 * * * root /etc/cron.daily/man-db 25 6 * * * root /etc/cron.daily/mlocate 25 6 * * * root /etc/cron.daily/ntp 25 6 * * * root /etc/cron.daily/passwd 25 6 * * * root /etc/cron.daily/popularity-contest 25 6 * * * root /etc/cron.daily/tomcat8 30 2 1 * * root /usr/bin/rsnapshot monthly 30 3 * * * root /usr/bin/rsnapshot daily 47 6 * * 7 root /etc/cron.weekly/man-db |
我发现的certbot文件是/etc/cron.d中的certbot
它包含这一行:
1 | #0 4 * * * root test -x /usr/bin/certbot -a \! -d /run/systemd/system && perl -e 'sleep int(rand(3600))' && certbot -q renew |
我注释掉了(用#)。
我的系统是debian:
Debian GNU / Linux 9
我使用certbot和Ubuntu 16.04 + nginx
有两个地方可以检查与Certbot相关的工作
1)/etc/cron.d/certbot
你有
2)systemd计时器
运行commnad:
$ sudo systemctl list-timers
并看到输出
Sun 2018-07-08 00:46:59 EEST 7h left Sat 2018-07-07 12:36:26 EEST 4h 51分钟前certbot.timer certbot.service
然后
3)
当systemctl运行Certbot时,去检查控制时间的文件
/etc/systemd/system/timers.target.wants/certbot.timer
这是象征性的链接
/lib/systemd/system/certbot.timer
注意定义时间+随机秒数的这一行(设置随机时间以便不同时压迫letsencrypt服务器)
OnCalendar = - * 00,12:00:00
RandomizedDelaySec=3600