Certbot 未能对某些域进行身份验证

Posted

技术标签:

【中文标题】Certbot 未能对某些域进行身份验证【英文标题】:Certbot failed to authenticate some domains 【发布时间】:2021-11-18 15:09:28 【问题描述】:

这是我第一次构建服务器并将其托管到 AWS EC2。运行命令sudo certbot certonly --standalonesudo certbot certonly --webroot 时,我在下面收到此错误

Certbot failed to authenticate some domains (authenticator: standalone). The Certificate Authority reported these problems:
  Domain: matthieuxroger.com
  Type:   unauthorized
  Detail: Invalid response from http://matthieuxroger.com/.well-known/acme-challenge/nWRAFCcRUeVxZ0C5YtRg_9bihG2YQeqacUcGjxdCMzg [18.205.22.32]: "<!DOCTYPE html>\n<html>\n  <head>\n    <title>Matthieux Roger</title>\n    <link rel='stylesheet' href='/stylesheets/style.css' />\n "

我在 AWS EC2 上运行的 ubuntu 20 上使用 nodejs。任何帮助都将不胜感激。

【问题讨论】:

你的实例能不能上网,你要检查你的安全组吗?您需要打开端口 443 和 80(入站),您还应该在问题中包含安全组配置。 【参考方案1】:

当对 Certbot 使用 webroot 方法时,会启动一个为单个文件提供服务的 Web 服务器,因此 Let's Encrypt 可以验证域中服务器的所有权。但是当 LE 访问您的域时,它得到了一个提供 404 页面的不同服务器。您的域的 DNS 似乎没有指向请求证书的 EC2 实例。 (或者它可能已经更新但还没有传播)。您需要更新 DNS 记录以指向使用 certbot 请求证书的服务器。或者,您可以使用不需要运行服务器来证明所有权的不同质询类型(例如 dns-01)。

【讨论】:

以上是关于Certbot 未能对某些域进行身份验证的主要内容,如果未能解决你的问题,请参考以下文章

Azure 服务器未能对请求进行身份验证。确保授权标头的值格式正确,包括签名

AzureStorage:服务器未能对请求进行身份验证。确保 Authorization 标头的值正确形成,包括签名

Flutter Firebase - 未能正确删除经过 Google 身份验证的用户

使用特定机器对域进行身份验证?

使用 AD 对不同域进行身份验证

自定义摘要身份验证