开发环境
SSL证书
申请FreeSSL免费证书

FreeSSL 免费申请域名证书

访问地址:https://freessl.cn/acme/auth (opens in a new tab)

1、域名授权

添加域名、域名解析验证域名

image.png

2、申请证书

image.png

acme.sh --issue -d *.1ddh.cn --dns dns_dp --server https://acme.freessl.cn/v2/DV90/directory/jbaukapgwukkxyicu102

3、选择acme方式签发证书

ACME是"Automatic Certificate Management Environment”(自动证书管理环境)的缩写。ACME是一种用于自动化管理和获取SSL/TLS证书的协议。ACME协议由Internet工程任务组(IETF)定义,并由Let’s Encrypt等证颁发机构广泛采用。 ACME提供了一种标准化的方式,使能够自动请求、验证和获取证书,而无需人工干预。完成标准化获取证书流程需要ACME客户端与ACME服务器端进行通信。常见的ACME客户端有acme.sh、certbot等。

3.1 安装acme

在线安装

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

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 作业来检查并更新证书(如果需要)。

安装完成后重启终端生效,使用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

3.2 签发证书

签发一个

执行步骤2命令 (建议使用扩展)

acme.sh --issue -d *.1ddh.cn --dns dns_dp --server https://acme.freessl.cn/v2/DV90/directory/jbaukapgwukkxyicu102
  • 执行命令后,完成安装即可获得 .cer、.key 两个文件地址。这个就是用于配置 ssl 域名证书的。 image.png

同时签发多个【推荐】

可同时签发 多个域名 用 -d 隔开 ,这样只会生成一个证书文件夹

acme.sh --issue -d *.1ddh.cn -d 1ddh.cn --dns dns_dp --server https://acme.freessl.cn/v2/DV90/directory/jbaukapgwukkxyicu102

image.png

4、 nginx 配置

image-20240811012222448 image-20240811012632011 按照上面配置 浏览器可以正常访问 ,部分客户端不能正常访问,比如小程序 会报 600001错误码。使用 域名SSL/TLS安全评估报告 (opens in a new tab) 评测域名等级为B ,提示证书链不完整。

解决方案:

ssl_certificate 配置路径 由 /root/.acme.sh/.xxx.cn_ecc/.xxx.cn.cer 改为 /root/.acme.sh/*.xxx.cn_ecc/fullchain.cer 可详见 :https://github.com/acmesh-official/acme.sh/issues/4873 (opens in a new tab) image.png

5、吊销证书

acme.sh --revoke -d *.1ddh.cn

6、删除证书

从acme.sh已知的证书列表中删除证书

acme.sh --remove -d *.1ddh.cn

参考:

https://docs.certcloud.cn/docs/installation/auto/acme/acmesh/ (opens in a new tab)

域名SSL/TLS安全评估报告:https://myssl.com/ (opens in a new tab)

缺少证书链的问题和解决办法: https://blog.myssl.com/faq-miss-ca-certificate/ (opens in a new tab)

证书链修复: https://myssl.com/chain_download.html (opens in a new tab)