在服务器添加下面脚本文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash

# 定义颜色
RED=$(tput setaf 1) #红
GREEN=$(tput setaf 2) # 绿
YELLOW=$(tput setaf 3) # 黄
BLUE=$(tput setaf 4) # 蓝
PINK=$(tput setaf 5) # 粉红
RES=$(tput sgr0) # 清除颜色

echo -e "\n${RED}$(date +"%Y-%m-%d %H:%M:%S")开始执行SSL更新脚本${RES}\n"

echo -e "\n${YELLOW}$(date +"%Y-%m-%d %H:%M:%S")停止nginx服务${RES}\n"

sudo nginx -s stop

echo -e "\n${YELLOW}$(date +"%Y-%m-%d %H:%M:%S")开始更新证书${RES}\n"

certbot renew --dry-run

echo -e "\n${YELLOW}$(date +"%Y-%m-%d %H:%M:%S")重启nginx服务${RES}\n"

sudo nginx

echo -e "\n${GREEN}$(date +"%Y-%m-%d %H:%M:%S")SSL更新脚本执行完毕${RES}\n"

赋予脚本执行权限

1
chmod +x /path/to/your_script.sh # 替换为你的脚本路径

创建定时任务

  1. 执行crontab -e命令,进入定时任务编辑界面
  2. 添加下面定时任务0 3 1 * * bash /path/to/your_script.sh | tee /path/to/your_log.log -a
  3. 保存退出即可

注意事项

  1. /path/to/your_script.sh替换为你的脚本路径
  2. /path/to/your_log.log替换为你的日志路径
  3. 定时任务中的时间0 3 1 * *表示每月的1号凌晨3点执行