【问题标题】:certbot create certificate on two different ec2 instancescertbot 在两个不同的 ec2 实例上创建证书
【发布时间】:2020-09-15 20:50:43
【问题描述】:

问题

我有两个 EC2 实例正在运行。一个EC2 实例当前托管我的网站https://thechrisbolton.com,您可以看到它具有有效的letsencrypt 证书。我想在我的第二个 EC2 实例上创建一个证书,我将在其中部署我的应用程序。一旦我的应用程序部署在第二个 EC2 实例上,我将销毁第一个实例。但是,我无法获得在第二个 EC2 实例上创建的证书。

错误

- The following errors were reported by the server:

   Domain: thechrisbolton.com
   Type:   unauthorized
   Detail: Invalid response from
   https://thechrisbolton.com/.well-known/acme-challenge/kITr3I__o6eb_WH2cguR200gWnt998DN1s8xamtPIbM
   [3.234.11.212]: "<html>\r\n<head><title>404 Not
   Found</title></head>\r\n<body>\r\n<center><h1>404 Not
   Found</h1></center>\r\n<hr><center>nginx/1.18.0</ce"

   Domain: www.thechrisbolton.com
   Type:   unauthorized
   Detail: Invalid response from
   https://www.thechrisbolton.com/.well-known/acme-challenge/DhzxfraTsUeN3a7bXQhfzS36CTHRzlBUWVAHceD
ETB8
   [3.234.11.212]: "<html>\r\n<head><title>404 Not
   Found</title></head>\r\n<body>\r\n<center><h1>404 Not
   Found</h1></center>\r\n<hr><center>nginx/1.18.0</ce"

我的尝试

$ certbot certonly --standalone -d thechrisbolton.com -d www.thechrisbolton. com

我已通读certbot documentation 以尝试找到一种方法来创建现有证书。唯一看起来可能有效的是--duplicate 标志。但那是Most users will not need to issue this command in normal circumstances.,所以如果我使用它,我觉得我做错了什么。

【问题讨论】:

    标签: amazon-ec2 lets-encrypt certbot


    【解决方案1】:

    您无法获得在第二个 EC2 实例上创建的证书的原因。是因为https://thechrisbolton.com/ 域没有指向第二个 EC2 实例。

    工作原理

    (我简化了流程只是为了解释。)

    certbot 的工作方式是,它向“Let's Encrypt”发送一个请求,为给定的域(在本例中为https://thechrisbolton.com/)颁发证书。为响应该请求,“Let's Encrypt”(又名 LE)为 certbot 提供了一个文件(又名挑战),它需要将其放置在可通过互联网从该 url http://&lt;requested-domain&gt;/.well-known/acme-challenge/ 访问的位置。 Certbot 正是这样做的,并将文件放在您在运行 certbot --certonly 命令时提供的位置(在这种情况下,您使用了选项 --standalone,certbot 在端口 80 上启动它自己的服务器并生成文件可在位置/.well-known/acme-challenge/),然后它再次调用“让我们加密”,说文件已准备好,给我证书。 LE 然后点击此 URL 以验证该文件在给定位置是否可用。如果它找到该文件,则只有它颁发证书。所有这些都是为了确保请求证书的人拥有他请求证书的域。

    解决办法是什么?

    如果您使用的是静态 IP,那么只需将静态 IP 指向新的 EC2 实例并将证书移动到新机器上,它应该可以工作。

    如果您不能这样做,请更新您的 DNS 条目以指向新 EC2 实例的公共 IP 并运行相同的 certbot 命令。你现在正在运行的。

    【讨论】:

      猜你喜欢
      • 2019-07-20
      • 2017-07-28
      • 2012-04-24
      • 1970-01-01
      • 2023-02-02
      • 2012-11-05
      • 2020-01-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多