无法从 let's encrypt 获取证书

无法从 let's encrypt 获取证书

我在从 let's encrypt 获取证书时遇到问题。我的网站是:www.webuilder.co.uk。我总是收到这样的错误:

错误

我的设置如下:

Ubuntu Virtualbox

如果需要任何其他信息,请告诉我,帮我解决这个问题,因为我已经为此苦苦挣扎了好几天

编辑://我想我已经找到了问题,但现在需要解决方案

当我输入:nslookup -type=soa webuilder.co.uk 我得到:

;; Got recursion not available from 217.160.82.109, trying next server
Server: 87.237.17.182
Address: 87.237.17.182

Non-authoritative answer:
webuilder.co.uk

origin = ns1088.ui-dns.de
mail addr = hostmaster.1and1.com
serial = 101720101
refresh = 28800
retry = 7200
expire = 604800
minimum = 600

Authoritative answers can be found from:
webuilder.co.uk nameserver = ns1120.ui-dns.biz
webuilder.co.uk nameserver = ns1109.ui-dns.com
webuilder.co.uk nameserver = ns1103.ui-dns.org
webuilder.co.uk nameserver = ns1088.ui-dns.de
ns1109.ui-dns.com internet address = 217.160.82.109

这就是问题所在吗?这些是 1&1 的默认名称服务器,我应该更改它吗?该怎么做?

答案1

为了获得有效的证书,LetsEncrypt 需要能够验证服务器和域,这通常需要将文本放置在 Web 服务器上 HTTP 可访问的位置 - 这很可能不是在家庭实验室环境中工作,因为您的虚拟机将位于家庭路由器后面。

在您此处的实例中,域验证失败,因为您的 Web 服务器无法通过端口 443 上的 HTTPS 联系,LetsEncrypt 在standalone模式下运行时使用该端口作为其默认质询方法。

还有一种可用的替代方法,即在端口 80 上使用纯文本 HTTP。要使用该方法,请--standalone-supported-challenges http-01按照文档并从你的民众网络服务器。

还有一种dns-01仅由非官方支持的挑战方法脱水LetsEncrypt 的客户端。这允许您使用 DNS 作为验证方法为非公共服务器创建证书,并要求您创建 TXT 记录来验证域。

无论采用何种质询方法,LetsEncrypt不能用于为非公开 TLD(例如 example.local)或您不拥有/管理的 TLD(例如 google.com)生成证书。

另外,正如问题评论中所要求的那样,以后请将文本粘贴到问题中,而不是发布截图。

相关内容