我正在尝试在服务器上安装 letsencrypt,www 和根域都由该框托管。我可以使用 www 子域安装,没有问题,但不能使用根域。这是我收到的错误
Failed authorization procedure. domain.com (tls-sni-01): urn:acme:error:connection :: The server could not connect to the client to verify the domain :: Failed to connect to host for DVSNI challenge
进一步调查后发现,我可以使用 www 子域远程登录到端口 443,但不能使用根域或 IP 地址。我推测后一个问题的解决方案将解决前一个问题。
谢谢你的帮助,凯文
答案1
此问题可能与以下一项或多项问题相关:
1) Let's Encrypt 证书是按域生成的(因此 www 和 root 是分开的)。您可以为多个域(SAN)创建证书,但如果不需要,我建议您为每个域创建单独的证书。您可能为 www 创建了证书,但没有为 root 创建证书。与大多数 CA 不同,此功能不会自动提供。
2) 根域也必须位于您的虚拟主机中,由 ServerName 标识。
3) DNS 记录必须指向您的服务器。
您也可以尝试使用以下方法安装:
sudo git clone https://github.com/letsencrypt/letsencrypt /opt/letsencrypt
cd /opt/letsencrypt
./letsencrypt-auto --apache -d example.com
或者
./letsencrypt-auto --apache -d example.com -d www.example.com