前言
最近一直在慢慢的学习shell
,于是打算用实战来强化学到的知识点,所以花了半天时间写了一个交互式的脚本,用于自动申请Let's Encrypt
泛域名证书使用.欢迎大家使用.
本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.
申请流程
获取域名服务商 API
申请域名最重要和最麻烦的地方就是验证域名所有权,常规情况下使用域名服务商的 API 来自动创建 txt 验证记录最为方便.
参考以下链接获取国内用户常用的腾讯云
/阿里云
/Cloudflare
的 API :
参考官方文档可以获取多达100
多个全球各种域名服务商的 API :
交互式脚本
交互式脚本仅支持 腾讯云 / 阿里云 / Cloudflare
执行以下命令直接使用,根据提示输入相关 API 信息即可申请.
curl -O https://gist.githubusercontent.com/stilleshan/02d8652ce320941e497d378a04ecf016/raw/ffb5c536735a2d90390c98d7bbbe0ff63a74ba52/acme_docker.sh && chmod +x acme_docker.sh && ./acme_docker.sh
非交互式固定域名证书申请
通过简单修改脚本,可以让本脚本作为固定证书申请使用.无交互式选项直接根据设置的域名和 API 信息进行申请.建议可以设置crontab
定时每月执行.
非交互式脚本可以支持 acme.sh 官方支持的 100 多个全球各种域名服务商的 API
编辑脚本修改 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
本文为 Stille 原创文章.经实践,测试,整理发布.如需转载请联系作者获得授权,并注明转载地址.
2 条评论
楼主你好,一直使用你的内网穿透,但是最近https无法使用了,不知道你这边是不是443端口出现问题了还是怎么了
最近frp.freefrp.net崩了,可以试试备用节点(比如frp3.freefrp.net)