停放域名的 LetsEncrypt 证书

停放域名的 LetsEncrypt 证书

希望您能解释一下这里可能发生的事情:

我已经将网站cutit.sk从外部 VPS 迁移到我的私人服务器上。我还有多个域名,用于将流量重定向到cutit.sk( vyrez.sk, cut-center.com)

事实上,我已经迁移了大约 10 个网站(总共大约 100 个域名),这就是我使用端口访问它们的原因。我的 vhost 配置如下所示:

Listen 662

<VirtualHost *:662>
    ServerName webserver
    ServerAlias *.cutit.sk *.vyrez.sk *.cut-center.com
    DocumentRoot /var/www/html/cutit
    <Directory /var/www/html/cutit>
        Options -Indexes +FollowSymLinks +MultiViews
        AllowOverride All
        Require all granted
    </Directory>
    <FilesMatch \.php$>
        SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock|fcgi://localhost/"
    </FilesMatch>
</VirtualHost>

通过 LetsEncrypt 和 certbot 请求 SSL 时出现几个错误:

Domain: www.cut-center.com
   Type:   connection
   Detail: Fetching
   http://www.cut-center.com/.well-known/acme-challenge/twxT3FlJDb3RwjmqaBJLlLh_ev5bWpxQy7euo08OI5c:
   Error getting validation data

看起来 Certbot 正在尝试验证访问本地文件夹(不存在)的请求作为其唯一域。

因此,问题是:我该如何绕过这个问题?或者正确的方法是什么?

不确定是否值得一提,但是:DNScutit.sk本身尚未指向我的服务器(我对此有另一个错误) - 但这是有意的,我稍后会更改 A 记录。cut-center.com并且vyrez.sk有指向我的服务器的 A 记录,但那些域尚未重定向到cutit.sk(我对这个项目还很陌生,不确定为什么)。

谢谢你!

答案1

粗略地说,如果您想为未指向运行 certbot 的系统的主机名/域名请求 Let's Encrypt 证书,那么您无法通过响应对该主机名/域名发出的 Web 请求来验证和确认您是否有权控制该域名。

您需要使用其他方法进行身份验证,例如使用其中一个 DNS 插件或使用手册中列出的手动方法https://certbot.eff.org/docs/using.html#dns-plugins

当主机名确实指向您的服务器,但这些站点监听除 80 或 443 之外的端口时,请使用 --webroot 选项将质询响应文件写入监听端口 80/443 的站点的文档根目录中

相关内容