【问题标题】:Generate Letsencrypt certificate in manual mode手动生成 Letsencrypt 证书
【发布时间】:2016-05-05 11:16:50
【问题描述】:

我正在尝试使用 --manual 插件生成 Letsencrypt 证书。我使用“手动”,因为在我的服务器中我有 python2.6,我几乎需要 python2.7,所以我从我的笔记本电脑生成证书,然后导出证书。就我而言,我只能使用 http 8280 端口或 https 443 端口。所以我使用的命令是:

./letsencrypt-auto certonly --manual --http-01-port 8280

然后它要求在我的网站上创建一个秘密文件并给我一个命令来执行它。在此之后我有这些错误:

Failed authorization procedure. mydomain.es (http-01): 
urn:acme:error:connection :: The server could not connect to the client to verify the domain :: 
Could not connect to http://mydomain.es/.well-known/acme-challenge/_6UES5rHkQ78etjN3HmT4n2l5J66vDs1nCX2APzuzIE

我可以通过网络导航器访问我的秘密文件,因此我确信与服务器的连接是可能的。在http://mydomain:8280/.well-known/acme-challenge/ 我可以看到生成的秘密文件。所以我不知道为什么服务器无法连接到客户端。

【问题讨论】:

  • 请注意 http-01-port 不会影响 CA 如何到达您的服务器; CA 将始终尝试访问端口 80。尝试通过端口 443 使用 tls-sni-01。

标签: apache ssl lets-encrypt


【解决方案1】:

LetsEncrypt 服务器还不支持switch http port on production。正如here 所说,它永远不会支持任意端口(如您正在尝试的 8280)。 They say 将来可能会支持另一个特权端口(低于 1024)。

仔细检查您可以阅读的错误消息:

Could not connect to http://mydomain.es/[...]

如图所示,Letsencrypt 正在尝试通过端口 http 80 访问您的服务器(URL 中未指定端口意味着默认端口 80)。

编辑:

您可以在独立模式下运行 tls-sni-01 身份验证,因为您有可用的端口 443。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-18
    • 2020-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-04
    相关资源
    最近更新 更多