通过acme.sh申请Let's Encrypt泛解析SSL证书
1|01、Let's Encrypt
申请过SSL证书的人应该对Let's Encrypt这个证书颁发机构不陌生,它免费,而且也被各大浏览器所支持和认可.但一般我们申请到的都单域或双域(www和主域名)的证书.这样一来,我们需要做全站SSL的工作量就会超级大!有没有一个办法,像DNS解析一样,用*.staryjie.com
的方式,让全站共用一个SSL证书。
2|02、安装acme.sh
acme.sh
是一个实现了 acme 协议的脚本,可以从 Let's Encrypt 生成我们需要的泛解析SSL证书.当然,你用来生产普通证书也是没有问题的。
本文仅对使用域名提供/解析商的 API Token 来自动申请泛域名证书的过程进行讲解,acme.sh
还有很多很强大的功能例如配合 Nginx
或者 Apache
自动申请证书等,请自行查看 github 项目 wiki 发掘。
项目链接:Github - acme.sh
安装方法:
安装过程中可能会出现要你安装socat
的警告,可以忽略。
安装过程不会修改已有的任何系统功能和文件,请放心食用. acme.sh在程序结束后会被自动安装到~/.acme.sh/
目录中,你也可以随时删除该目录,不会影响到系统。
3|03、获取API Token
由于acme.sh
对域名解析/提供商的支持十分广泛,所以请针对自己所在的域名提供商获取对应的API Token。
支持列表:点我跳转
国内目前使用较多的是腾讯云和阿里云,获取API Token的方法分别是:
-
腾讯的
DNSPod
登录DNSPod,进入顶部导航栏里的用户中心,在左侧的导航栏里,找到
安全设置
,看到页面的最下面,有个API Token
.点击查看
->创建API Token
->填写Tokens名称
,复制好ID与Token即可.保存待用。 -
阿里云域名
需要登录到阿里云官网获取Ali_Key和Ali_Secret。点击此处跳转
4|04、配置acme.sh
获取到对应的API Token之后我们需要将id和key设置为环境变量,供acme.sh调用:
如果你的域名提供商不是DNSPod或者阿里云,其他域名提供商变量名一览表:点我查看
临时环境变量只需配置这一次即可,当成功申请证书后,API 信息会被自动保存在~/.acme.sh/account.conf
里,下次你使用acme.sh的时候系统会自动读取并使用。
5|05、申请泛域名解析证书
注意:不同的域名解析商所用命令有细微不同!如果你的提供商不是
DNSPod
,请自行去上面的链接查看!
申请完成后屏显会输出证书路径。
可能会遇到的报错:
解决办法:
如果升级curl之后还是如上图的报错,则可以尝试修改域名的DSN设置:
修改之后需要等十分钟左右。
6|06、将证书安装到指定的目录
默认生成的证书都放在安装目录下: ~/.acme.sh/,这个目录一般来说不能让nginx或Apache直接使用。所以我们需要将证书放到一个指定的目录,scrm用nginx配置,本例是指定在/etc/nginx/ssl/目录下。
7|07、配置NGINX使用证书
7|17.1 生成 dhparam.pem 文件
7|27.2 修改nginx配置文件
/etc/nginx/conf.d/bark.conf
重载配置文件:
测试:
8|08、证书更新
Let s Encrypt 的证书有效期是 90 天的,需要定期重新申请,不过acme在安装的时候就已经设置了自动更新,所以这一步不用关心,很省心。
目前证书在 60 天以后会自动更新, 你无需任何操作. 今后有可能会缩短这个时间, 不过都是自动的, 你不用关心。
9|09、acme.sh的自动更新
关闭自动更新:
10|010、参考
__EOF__

本文链接:https://www.cnblogs.com/jie-fang/p/14724100.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律