Let's encrypt 通配域名DNS驗證方式的證書自動更新

通配符域名不一樣於通常的單域名證書. 爲了解決以前一篇短文中通配域名經過DNS方式驗證的證書自動更新問題. 須要使用到第三方域名提供商的API, 用於自動添加域名的TXT記錄, 實現自動驗證並完成證書更新過程.git

要求和適應性

安裝插件

pip install certbot-dns-cloudflare

建立存儲API調用憑證的目錄github

mkdir -p ~/.secrets/certbot

chmod 0700 ~/.secrets

# Cloudflare API 祕鑰
cat > ~/.secrets/certbot/cloudflare.ini <<END
dns_cloudflare_email = admin@example.com
dns_cloudflare_api_key = 1c6287abdc254293f3b4837ad871937ajfb81
END
# 修改文件權限
chmod 0400 ~/.secrets/certbot/cloudflare.ini

執行更新

certbot certonly -d '*.example.com' \
    --agree-tos \
    --email admin@example.com \
    --server https://acme-v02.api.letsencrypt.org/directory \
    --dns-cloudflare \
    --dns-cloudflare-credentials ~/.secrets/certbot/cloudflare.ini \
    --dns-cloudflare-propagation-seconds 30

--dns-cloudflare-propagation-seconds 30 表示等待30秒, 讓DNS完成傳播再發起驗證過程.segmentfault

概要

經過提供 Cloudflare 的API祕鑰, certbot-dns-cloudflare 插件能夠調用 Cloudflare 的 DNS 接口自動添加DNS驗證所須要的TXT記錄api

自動化

爲了自動化該過程, 須要編寫一個腳本放到Cron中定時執行.阿里雲

參考資料

相關文章
相關標籤/搜索