下载acme.sh
curl https://get.acme.sh | sh -s email=my@example.com
cd ~/.acme.sh/
获取Cloudflare密钥
Preferences | Cloudflare
- 登录
- 选择账户详情
- 选择API Token
- 选择创建令牌
- 选择区域DNS模板,并设置编辑写入权限
- 生成并复制令牌备用
- 回到首页概览界面下部获取账号ID备用
配置Acme.sh
导入环境变量
export CF_Token="获取到的令牌"
export CF_Account_ID="获取到的账号ID"
开始调用cloudflare API自动添加DNS Record
./acme.sh --issue --dns dns_cf -d example.com -d *.example.com
开始安装令牌到指定目录
acme.sh --install-cert -d example.com -d *.example.com \
--key-file /your ssl path/key.pem \
--fullchain-file /your ssl path/fullchain.pem \
--reloadcmd "service nginx force-reload"
上述步骤会做成crontab定时任务的形式,当ssl证书过期后会自动运行重新申请
crontab -l // 查看定时任务
修改nginx配置
...
ssl_certificate /your ssl path/fullchain.pem;
ssl_certificate_key /your sll path/cert_file/key.pem;
...
原文地址:https://blog.ismeoh.com/archives/45.html