问题标签 [acme.sh]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6395 浏览

apache - Certbot - 更新您的客户端软件以继续使用 Let's Encrypt - 在 Ubuntu 14.04 中将 ACME v1 更新到 v2

我收到了一封来自 noreply@letsencrypt.org 的电子邮件,主题为“更新您的客户端软件以继续使用 Let's Encrypt”

我在托管我的 https 站点的服务器中使用 Ubuntu 14.04.05 LTS,Certbot 是 0.22.2+1+ubuntu

这是我存储库中的最新版本。

我已尝试更新域强制使用 ACME v2 服务器,遵循此文档https://certbot.eff.org/docs/using.html?highlight=acmev2#sharing-the-acme-server添加“--服务器https://acme-v02.api.letsencrypt.org/directory ”到更新命令,但它不起作用。

现在我被困住并请求帮助。

感谢您的阅读和您的帮助。

0 投票
1 回答
433 浏览

php - 通过 acme.sh snap 包使用 PHP shell_exec 命令自动安装 Letsencrypt SSL 证书

我安装让我们通过 acme.sh snap 包加密证书

https://github.com/acmesh-official/acme.sh

我想知道是否有任何方法可以通过 PHP 默认 shell_exec() 命令自动安装证书。

当通过 SSH 登录时,这个用于获取证书的 shell 命令可以正常工作

acme.sh --issue --dns dns_gd -d example.com -d *.example.com

但是,如果我通过 PHP shell_exec 调用相同的命令,它总是会抛出一个错误

sshout.txt - 我在 sshout 上得到的输出如下

是否可以通过这种方式获得证书?

或者任何其他方式通过 PHP 自动化它?通过设置 cron,或创建一个 bash 脚本并从 PHP 调用它?

我在 apache 服务器上的 ubuntu 18 上运行 PHP 7.2。

0 投票
1 回答
228 浏览

bash - 由于 cron 作业命令的“字符不允许”,将 acme cron 作业运行到 .sh 文件中

我的托管服务提供商面板不允许添加下一个 cron 作业命令:

由于“某些字符不允许用于 cron 作业命令”错误。

在阅读了这篇关于它的帖子后,我试图了解如何从脚本 ( ~/run-acme.sh) 运行它并将其添加到 cron 作业中,但不知道如何去做(该示例使用 PHP 脚本)。

这是run-acme.sh脚本的内容,但不知道在命令(或)之前要写什么,因为source这个答案表明:.bash

选项 1

选项 2

选项 3

这些选项中的哪一个会起作用?他们运行的结果是否相同?

重要提示:无权访问 crontab/SSH

0 投票
1 回答
394 浏览

lets-encrypt - ACME API 升级到 V2 后更新证书的问题

我们正在使用acme.sh更新我们的 let's encrypt 证书,今天遇到了问题。

首先,我们遇到了一些错误并且rate limit for invalid requests经常遇到,因此决定升级到 V2,无论如何都是推荐的。

我们通过运行acme.sh --upgrade和更新域配置中的所有 URL 来升级以使用新的v2端点。

现在acme.sh --renew -d my.domain.at --ecc比以前运行得更远(我们遇到了一些无法解决的问题,nonce因为我们缺少变量/directory中的后缀。Le_API

现在我们遇到了在验证中收到未经授权的问题:

我们有一个 NGINX 正在运行,我们不确定这里发生了什么。据我们所知,我们不应该被重定向到/login页面。

我们错过了什么吗?证书更新总是完美无缺,直到我们今天遇到问题并尝试升级。

0 投票
0 回答
115 浏览

ansible - 使用 Ansible 分子测试 Acme.sh

我有以下 Ansible 剧本来颁发和安装证书:

有没有办法使用假server_name或/和不调用 ACME 来编写分子收敛测试?

0 投票
1 回答
741 浏览

powershell - ACMESharp 无效 URI:URI 方案无效

我创建了一个脚本来自动化为我的网站生成 Let's Encrypt 证书的过程。该脚本一直运行良好,但从昨天开始,当我尝试运行时收到以下问题:

错误:

我安装了最新版本的 PowerShell 模块(https://www.powershellgallery.com/packages/ACMESharp/0.9.1.326)。

有没有人偶然发现类似的问题?

0 投票
1 回答
519 浏览

lets-encrypt - 无法将 acme.sh 与 tls-alpn-01 一起使用来更新或颁发证书

根据官方 ACME.SH 文档链接,颁发证书就像运行以下命令一样简单:

但是,我收到以下错误

我试过从默认切换ZeroSSL.comBuyPass.com,但这没有帮助。这些提供者似乎不允许tls-alpn-01验证方法,但它可能与我遗漏的东西有关。

PS:抢先回答一些问题:

  1. 我有一个有效域,已替换为“example.com”
  2. 该站点在 443 端口上运行,但port 80被 ISP 阻止,因此tls-alpn-01
  3. 我正在停止 Nginx,然后检查netstat端口 443 是否未绑定到服务。
  4. 当我使用--debug 2参数运行脚本时,我得到以下_authorizations_map变量值

_authorizations_map='example.com,{"identifier":{"type":"dns","value":"example.com"},"status":"pending","expires":"2021-08-18T22 :53:50Z","挑战":[{"type":"http-01","url":"https://acme.zerossl.com/v2/DV90/chall/wYehJ8kQjUDiDadBJ12qKw", "状态": "待定","token":"Sfga2N2KwV-2hg3wo1gYAoyFvqV87dRvG2sHw4I6ups"},{"type":"dns-01","url":"https://acme.zerossl.com/v2/DV90/chall/CkrMQdEJthf-TmWvllW -Bg”,“状态”:“待定”,“令牌”:“_AlgMGzIfSQs7673Su-njnpieba_zLpSYxiUdXDEFnz”}]}'

0 投票
1 回答
812 浏览

ssl - 使用 acme.sh 发出 SSL 证书的请求超时

我在 DigitalOcean 上的 Debian 8 上运行 nginx Web 服务器。几年前我用 certbot 生成了一个 SSL 证书。最近,由于停止支持 ACME-v1,证书已过期且无法续订。我无法在 Debian 8 上将 certbot 更新到最新版本以使用 ACME-v2,我目前无法将 Debian 升级到 9 或 10。

这就是说我选择使用acme.sh客户端来颁发和安装一个新证书,因为它支持我当前的环境。

问题是当我尝试使用以下命令颁发证书时,我得到多个“处理”行,然后请求超时。使用 --debug 标志时,我得到了更多详细信息,如下所示,但仍然无法判断什么是超时以及为什么。非常感谢任何有助于理解和解决此问题的帮助。

--debug 版本中的“处理”行

0 投票
1 回答
643 浏览

lets-encrypt - 设置 nginx-proxy 时运行 acme-companion 出现问题

我正在尝试运行一个相当简单的 docker 堆栈,但由于某种原因它无法注册证书。

我的作曲家:

这是我来自acme-companion的日志

所以错误代码 6 应该是CURLE_COULDNT_RESOLVE_HOST但我不确定它不能解决什么。该服务器已建立连接,其他一切似乎都可以正常工作。

0 投票
1 回答
63 浏览

basic-authentication - Yaws 基本身份验证 letencrypt

我有一个处于隐身模式的域,受基本身份验证保护。Letsencrypt 不支持基本身份验证,并且可能永远不会支持(https://github.com/certbot/certbot/issues/1744#issuecomment-162038303)。

从 Nginx 迁移到 Yaws 后,安排下一次 Letsencrypt 续订。所以这里有一个问题。我可以在 Yaws 中禁用基本身份验证,进行更新然后再次启用,但这不是真正的解决方案。

Apache 和 Nginx 有一些简单的解决方法,即为目录定义基本身份验证的例外/.well-known/acme-challenge

如何在 Yaws 中做到这一点?我的域的基本身份验证定义yaws.conf现在是

在此上下文中,我发现的关于 Yaws 的唯一参考来自 2010 年,指的是 Yaws 1.81 ( https://uu.diva-portal.org/smash/get/diva2:344199/FULLTEXT01.pdf )。Letsencrypt 于 2015 年开始。我使用 Yaws 2.0.9。

似乎有一个带有 shell 变量的 FreeDNS 解决方案(https://gist.github.com/ammgws/381b4d9104c4e2b43b9210f33f03a15a)。https://github.com/acmesh-official/acme.sh/blob/master/dnsapi/提供了类似的技巧,但我不知道如何使用这种方法。