分享基于 docker 容器化申请 Let's Encrypt 泛域名证书的一键脚本
前言
最近一直在慢慢的学习shell
,于是打算用实战来强化学到的知识点,所以花了半天时间写了一个交互式的脚本,用于自动申请Let's Encrypt
泛域名证书使用.欢迎大家使用.
申请流程
获取域名服务商 API
申请域名最重要和最麻烦的地方就是验证域名所有权,常规情况下使用域名服务商的 API 来自动创建 txt 验证记录最为方便.
参考以下链接获取国内用户常用的腾讯云
/阿里云
/Cloudflare
的 API :
参考官方文档可以获取多达100
多个全球各种域名服务商的 API :
交互式脚本
执行以下命令直接使用,根据提示输入相关 API 信息即可申请.
curl -O https://gist.githubusercontent.com/stilleshan/02d8652ce320941e497d378a04ecf016/raw/ffb5c536735a2d90390c98d7bbbe0ff63a74ba52/acme_docker.sh && chmod +x acme_docker.sh && ./acme_docker.sh
非交互式固定域名证书申请
通过简单修改脚本,可以让本脚本作为固定证书申请使用.无交互式选项直接根据设置的域名和 API 信息进行申请.建议可以设置crontab
定时每月执行.
编辑脚本修改 16 - 20 行.以下为示例:
# 交互式脚本请保持以下 DOMAIN= 为空不要修改.如无需交互式,固定申请单一证书,请参考文档自行修改以下变量. DOMAIN=ioiox.com DNSAPI='dns_cf' API_ID='export CF_Token="xxxxxxxxxxxxx"' API_KEY='export CF_Account_ID="xxxxxxxxxxxxx"' # API_ZONE='export CF_Zone_ID="xxxxxxxxxxxxx"' # 交互式脚本请保持以下 DOMAIN= 为空不要修改.如无需交互式,固定申请单一证书,请参考文档自行修改以上变量.
结语
本脚本长期维护,后续会慢慢更新以支持更多服务商.可以访问以下gist
地址star
收藏:
https://gist.github.com/stilleshan/02d8652ce320941e497d378a04ecf016
本站提供免费和付费的技术支持.你可以通过留言,邮件,QQ的方式来进行技术交流和免费咨询.同时也可以付费支持的方式获得相关的技术支持,项目部署配置等服务.具体相关详情请点击查看 技术支持页面