知行迭代
导航
首页
最近更改
随机页面
常用
分类目录
Linux命令
Mediawiki常用
电脑技巧
工具
链入页面
相关更改
特殊页面
页面信息
登录
查看“Acme.sh”的源代码
←
Acme.sh
页面
讨论
阅读
查看源代码
查看历史
因为以下原因,您没有权限编辑本页:
您请求的操作仅限属于该用户组的用户执行:[
[1]
]
您可以查看和复制此页面的源代码。
acme.sh 是一个免费开源的,使用shell脚本语言编写的[[ACME]]客户端,能够用于自动签发和更新免费证书。 ==简介== ===时间轴=== * 2016年4月6日,发布acme.sh 1.2.2。 * 2018年2月10日,发布acme.sh 2.7.6,支持ACME v2。 * 2021年8月1日,发布acme.sh 3.0.0,将默认CA改为ZeroSSL,之前是[[Let's Encrypt]]。 {{了解更多 |[https://github.com/acmesh-official/acme.sh/releases acme.sh:发布] }} ===安装=== acme.sh是一个脚本程序,直接下载即可: <syntaxhighlight lang="bash"> #使用curl下载 curl https://get.acme.sh | sh #或使用wget下载 wget -O - https://get.acme.sh | sh </syntaxhighlight> {{了解更多 |[https://github.com/acmesh-official/acme.sh/wiki/How-to-install acme.sh wiki:如何安装] }} ==支持的CA== 2021年8月1日,将默认CA改为ZeroSSL,之前是Let's Encrypt。 {| class="wikitable" style="width: 100%; ! 名称 ! 描述 ! 网站 |- | ZeroSSL | 默认 | https://zerossl.com/ |- | [[Let's Encrypt]] | 使用<code>--server letsencrypt</code>指定CA为Let's Encrypt。示例:<code>acme.sh --issue --dns dns_namesilo -d example.com -d www.example.com --server letsencrypt</code> | https://letsencrypt.org/ |- | SSL.com | | https://www.ssl.com/ |- | 其他CA | 任何支持 ACME(RFC 8555)协议的CA | https://datatracker.ietf.org/doc/html/rfc8555 |} {{了解更多 |[https://github.com/acmesh-official/acme.sh#supported-ca acme.sh:Supported CA] |[https://github.com/acmesh-official/acme.sh/wiki/Change-default-CA-to-ZeroSSL acme.sh wiki:默认CA改为ZeroSSL] }} == 签发证书 == === 签发方式 === {| class="wikitable" style="width: 100%; ! 验证方式 ! 运行方法 ! 描述 |- | rowspan="2" | HTTP | Webroot 模式 | 当有一个运行的Web服务器,只需要通过<code>-w</code> 指定Web 根文件夹。<br />示例:<code>acme.sh --issue -d example.com -w /home/wwwroot/example.com</code> |- | 独立模式 | 如果您没有 Web 服务器,且80 端口没有使用。可以使用独立模式,acme.sh 有一个内置的独立网络服务器,它可以在80端口监听签发证书。<br />示例:<code>acme.sh --issue -d example.com --standalone</code> <br />如果使用了反向代理将http端口转到了其他端口,可以使用<code>--httpport</code>指定端口。<br />示例:<code>acme.sh --issue -d example.com --standalone --httpport 88</code> |- | rowspan="2" | DNS | API模式 | 如果域名服务商提供API,acme.sh可以使用api自动添加域名的txt记录。该模式可以自动签发和续签。<br />命令:<code> acme.sh --issue --dns 域名服务商编码 -d 域名</code><br />示例阿里云域名: <syntaxhighlight lang="bash" > # 阿里云上获取域名api,并导入到主机中 export Ali_Key="sdfsdfsdfljlbjkljlkjsdfoiwje" export Ali_Secret="jlsdflanljkljlfdsaklkjflsa" #使用dns API模式签发 acme.sh --issue --dns dns_ali -d example.com -d www.example.com </syntaxhighlight> |- | 手动模式 | |- | TLS ALPN | 独立模式 | 如果您没有 Web 服务器,且443端口没有使用。可以使用TLS ALPN 独立模式,acme.sh 有一个内置的独立网络服务器,它可以在43端口监听签发证书。<br />示例:<code>acme.sh --issue -d example.com --alpn</code> <br />如果使用了反向代理将443端口转到了其他端口,可以使用<code>--tlsport</code>指定端口。<br />示例:<code>acme.sh --issue -d example.com --alpn --tlsport 8443</code> |- |} {{了解更多 |[https://github.com/acmesh-official/acme.sh/wiki/How-to-issue-a-cert acme.sh wiki:如何签发证书] }} === DNS API === 常用域名服务商如下: {| class="wikitable" ! 名称 ! 描述 |- | 阿里云 | <syntaxhighlight lang="bash" > export Ali_Key="<key>" export Ali_Secret="<secret>" acme.sh --issue --dns dns_ali -d example.com -d *.example.com </syntaxhighlight> |- | GoDaddy.com | <syntaxhighlight lang="bash" > export GD_Key="<key>" export GD_Secret="<secret>" acme.sh --issue --dns dns_gd -d example.com -d *.example.com </syntaxhighlight> |- | | |} {{了解更多 |[https://github.com/acmesh-official/acme.sh/wiki/dnsapi acme.sh wiki:How to use DNS API] }} == Docker中使用 == {{了解更多 |[https://github.com/acmesh-official/acme.sh/wiki/deploy-to-docker-containers acme.sh wiki:deploy to docker containers] }} === 服务器软件使容器 === acme.sh安装在主机上, 将cert/key部署到容器中。 === 服务器软件和acme.sh都使用容器 === ====方法1==== 以nginx, acme.sh为例: *使用acme.sh申请一次证书,: <syntaxhighlight lang="bash" > sudo docker run --rm -it \ -v "/home/your/project/nginx/ssl":/acme.sh \ --name=acme.sh \ -e Namesilo_Key=xxxxxxxx \ neilpang/acme.sh acme.sh --issue --dns dns_namesilo -d www.example.com --server letsencrypt --dnssleep 900 </syntaxhighlight> ====方法2==== ==资源== ===官网=== * acme.sh 官网:https://acme.sh * acme.sh Wiki:https://wiki.acme.sh * acme.sh 中文说明:https://github.com/acmesh-official/acme.sh/wiki/说明 * acme.sh 源代码:https://github.com/acmesh-official/acme.sh [[分类:网络]]
本页使用的模板:
模板:了解更多
(
查看源代码
)
返回至“
Acme.sh
”。