1 安装acme.h
1.1 安装依赖
1 2 3
| apt update
apt install -y curl socat cron
|
1.2 使用curl安装acme.h
- 安装acme.h
1
| curl https://get.acme.sh | sh -s email=your_email@example.com
|
- 重新加载系统配置文件
- 验证安装情况
1.3 切换 CA 为 Let’s Encrypt
从 acme.sh v3.0 开始,默认的证书颁发机构改成了 ZeroSSL。但我之前用的都但是 Let’s Encrypt,现在改回来
1
| acme.sh --set-default-ca --server letsencrypt
|
1.4 开启自动更新
1
| acme.sh --upgrade --auto-upgrade
|
2 阿里云控制台创建拥有管理DNS权限的RAM用户并获取AccessKey
2.1 进入阿里云控制台的RAM访问控制页面

2.2 进入身份管理-用户页面

2.3 在页面下创建新的RAM用户
输入自定义的登录名称
勾选使用AccessKey访问
确定创建

2.4 为新增RAM用户授予DNS权限
- 选择创建的用户
- 为用户新增授权
- 权限策略中搜索DNS,勾选结果为“AliyunDNSFullAccess”的策略
- 确定为用户新增该策略的授权

2.5 该页面下保存AccessKey
- 点击保存结果下载包含AccessKey的用户创建信息
- 或直接复制AccessKey的ID和Secret并保存
- !注意该页面关闭后就没有办法再次获取AccessKey!

3 使用acme.h申请泛域名SSL证书
3.1 将获取到的AccessKey设置为系统环境变量
1 2
| export Ali_Key="You_AccessKey_ID" export Ali_Secret="You_AccessKey_Secret"
|
3.2 申请证书
1
| acme.sh --issue --dns dns_ali -d guolog.ink -d *.guolog.ink
|
等待几分钟让DNS生效
3.3 证书移动到Nginx目录下
1 2 3 4
| acme.sh --install-cert -d guolog.ink \ --key-file /etc/nginx/ssl/key.pem \ --fullchain-file /etc/nginx/ssl/cert.pem \ --reloadcmd "nginx -s reload"
|