作者: shufue

  • Certbot申请cloudflare证书并自动续签

    安装certbot和插件

    apt update 
    apt upgrade 
    apt install certbot python3-certbot-dns-cloudflare

    配置Cloudflare API密钥

    1. 登录到 Cloudflare 控制台
    2. 进入 API Tokens 页面:
      • 点击右上角的用户图标 -> My Profile -> API Tokens。
      • 点击 Create Token 创建一个新密钥。
    3. 创建一个 自定义 Token,为它设置适当的权限:
      • 选择 Zone.Zone、Zone.DNS 权限,这样 Certbot 可以管理 DNS 记录。
      • 设置为 “Edit” 权限。
    4. 生成 API Token 后,记下 Token,这将在配置 Certbot 时用到。

    编辑配置文件

    vim /etc/letsencrypt/cloudflare.ini
    # Cloudflare API token used by Certbot
    dns_cloudflare_api_token = 0123456789abcdef0123456789abcdef01234567
    

    更改权限为只读

    chmod 600 /etc/letsencrypt/cloudflare.ini

    申请证书

    sudo certbot certonly \
     --dns-cloudflare \
     --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini \
     --key-type ecdsa \
     -d "shufue.top,*.shufue.top"

    配置自动续签

    Certbot会默认安装证书时创建一个自动续签任务,但我们可以手动确认或者设置续签任务。

    测试自动续签

    certbot renew --dry-run

    设置定时cron任务检查过期续签

    crontab -e
    0 0 * * * certbot renew --quiet --deploy-hook "/usr/bin/systemctl reload nginx"


    这个任务会每天运行一次,检查证书是否需要续签。如果需要,它会自动续签,并在完成后重载 Nginx

  • 世界,您好!

    欢迎使用 WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!