使用acme.sh申请ssl证书

by Web全栈工程师 on 2019 年 11 月 10 日

Let’s Encrypt 是一个免费的,自动化的,开放的证书颁发机构(CA),Let’s Encrypt 由于是非盈利性的组织,需要控制开支,他们做了一个非常有创意的事情,设计了一个 ACME 协议,ACME协议规范化了证书申请、更新、撤销等流程,只要一个客户端实现了该协议的功能,通过客户端就可以向 Let’s Encrypt 申请证书,也就是说 Let’s Encrypt CA 完全是自动化操作的。

而acme.sh实现了acme协议,在客户端执行命令,即可从letsencrypt 生成免费的证书.

安装acme.sh

安装很简单,一条命令:

curl https://get.acme.sh | sh

默认acme.sh安装在home目录下

~/.acme.sh

创建 一个 shell 的 alias, 例如 .bashrc,方便使用:

alias acme.sh=~/.acme.sh/acme.sh

生成证书

acme.sh 实现了 acme 协议支持的所有验证协议. 一般有两种方式验证: http 和 dns 验证.

比如手动DNS方式,手动在域名添加一条txt解析记录验证域名的所有权

~/.acme.sh/acme.sh --issue --dns -d www.magentonotes.com \
 --yes-I-know-dns-manual-mode-enough-go-ahead-please

然后, acme.sh 会生成相应的解析记录显示出来, 只需要在域名管理面板中添加这条 txt 记录即可.

等待解析完成之后, 重新生成证书:

~/.acme.sh/acme.sh --renew --dns -d www.magentonotes.com \
 --yes-I-know-dns-manual-mode-enough-go-ahead-please

查看已安装证书的信息

~/.acme.sh/acme.sh --info -d www.magentonotes.com	

文档说明:https://github.com/acmesh-official/acme.sh/wiki/%E8%AF%B4%E6%98%8E

原创文章,转载请注明:转载自Web开发笔记 | 使用acme.sh申请ssl证书

本文链接地址:https://www.magentonotes.com/acme-sh-install-ssl.html

Comments on this entry are closed.

Previous post: