1. 下载acme脚本
# 下载脚本执行 如何服务器网络问题可手动参考:https://gitee.com/neilpang/acme.sh
curl https://get.acme.sh | sh
# 让修改生效
source ~/.bashrc2. 设置 Let's Encrypt
acme.sh --set-default-ca --server letsencrypt3. 设置秘钥(域名在阿里)
在阿里云 RAM 创建一个 AccessKey,权限只给 DNS 解析相关权限即可。
export Ali_Key="****"
export Ali_Secret="*****"4.申请证书
保证80端口没问题。如果是老证书已过期,而且80端口重定向到443的话申请证书会有问题。可以临时修改nginx配置
acme.sh --issue \
--dns dns_ali \
-d tntao.cn \
-d blog.tntao.cn日志中出现Cert success.表示成功
5. 安装证书
将证书放在你需要的位置,我的nginx用docker启动,附加一条重启容器的命令,根据实际情况修改。
acme.sh --install-cert -d tntao.cn \
--key-file /chiangtaol/nginx/conf/conf.d/cert/tntao.cn.key \
--fullchain-file /chiangtaol/nginx/conf/conf.d/cert/tntao.cn.pem \
--reloadcmd "docker restart nginx"6.一些检查
到第五步已经完成了,可以运行下面命令进行检查
# 查看定时任务
crontab -l
# 证书列表
acme.sh --list
# 查看acme的配置
cat /root/.acme.sh/tntao.cn_ecc/tntao.cn.conf