如何使用FreeSSL ACME自动化申请证书

ACME 是 TrustAsia 基于标准化证书签发和管理协议 RFC 8555 实现的 SSL 证书自动化管理工具,可实现端到端的证书自动更新、验证、签发、分发和部署,并支持客户端集中可视化的管理,极大简化证书管理流程,帮助客户轻松、安全地管理 SSL/TLS 证书。

FreeSSL现在已支持用户使用ACME客户端申请免费证书,您只需要拥有一个ACME客户端,即可在FreeSSL上免费使用ACME客户端申请证书。

下面将为大家介绍如何使用FreeSSL ACME自动化申请证书

  1. 登录我们的FreeSSL平台,点击证书自动化-自动化管理,即可进入我们的ACME管理界面,在这里您可以看到ACME客户端信息,证书信息等。

  1. 点击设置,可以查看/刷新我们的EAB信息,在这里我们需要将我们需要申请的域名添加到白名单,注意:申请前,必须将您的域名添加到白名单,否则是无法申请成功的。

  1. 安装acme客户端,以acme.sh为例,安装方式如下:
  • 在线安装

    使用如下命令,邮箱设置为你接受通知的邮箱号

    curl https://get.acme.sh | sh -s email=my@example.com
    或者
    

wget -O - https://get.acme.sh | sh -s email=my@example.com

  • git安装
git clone https://github.com/acmesh-official/acme.sh.git
cd ./acme.sh
./acme.sh --install -m my@example.com

​ 安装命令将执行3个操作:
​ 1.创建并复制acme.sh到您的主目录 ( $HOME): ~/.acme.sh/。所有证书也将放置在此文件夹中。
​ 2.创建别名:acme.sh=~/.acme.sh/acme.sh.
​ 3.创建每日 cron 作业来检查并更新证书(如果需要)。
如果上述命令太慢或失败(网络原因),可尝试以下国内备用地址:

curl  https://gitcode.net/cert/cn-acme.sh/-/raw/master/install.sh?inline=false | sh -s email=my@example.com
  • 安装完成后重启终端生效,使用acme.sh -v获取到版本信息即安装成功
$ acme.sh -v
https://github.com/acmesh-official/acme.sh
v3.0.8

安装成功后,Windows的默认存储目录在C:\Users\用户名.acme.sh,Linux的默认存储目录在/root/.acme.sh

  1. 配置域名DNS服务提供商,由于自动验证需要您的DNS服务商Key信息,可以配置腾讯云/阿里云/DNSPod等,详细配置可参考如何配置ACME.sh,以腾讯云为例,可执行如下命令。
export Tencent_SecretId="<id>"
export Tencent_SecretKey="<key>"
  1. 点击申请证书,输入已经添加到白名单的域名,点击下一步,选择已经配置过Key的DNS服务提供商,输入证书部署的位置,点击下一步



  1. 注册ACME账户,根据引导页面的命令提示,复制命令,并在shell中执行:
acme.sh --register-account --server https://acme.trustasia.com/v2/DV90/directory --eab-kid qC5fOA&******* --eab-hmac-key TtKB7DWqpNiIIuZy_Ux******************
  1. 申请证书,执行以下命令申请证书:
acme.sh --issue --dns dns_tencent -d example.com --server https://acme.trustasia.com/v2/DV90/directory

申请成功后会看到以下输出,可以查看证书信息