Ssl-Certificate

由於子域有多個 IP 地址,無法獲取證書

  • March 18, 2020

如果我錯了,請糾正我,因為我是所有伺服器的新手。

我有一個example.com託管在主機 A 上的網站。我想sub.example.com在主機 B 上創建子域 - 在這種情況下是 EC2 實例。現在我通過更改子域上的 A 記錄來指向此 EC2 實例的彈性 IP 來做到這一點。我訪問sub.example.com並且它有效。耶。

但是,當我嘗試使用 LetsEncrypt 添加 SSL 證書時,出現錯誤:

  To fix these errors, please make sure that your domain name was
  entered correctly and the DNS A/AAAA record(s) for that domain
  contain(s) the right IP address.

https://www.whatsmydns.net/給了我所有 dns 伺服器上的完整標記

https://dnschecker.org/all-dns-records-of-domain.php顯示我有同一個域名的兩個 IP 地址。一個是Ec2實例,另一個是主域ip。

https://letsdebug.ne​​t/給出警告:

WARNING
sub.example.com has multiple IP addresses in its DNS records. While they appear to be accessible on the network, we have detected that they produce differing results when sent an ACME HTTP validation request. This may indicate that some of the IP addresses may unintentionally point to different servers, which would cause validation to fail.
[Address=ec2.ip.addr,Address Type=IPv4,Server=nginx/1.10.3 (Ubuntu),HTTP Status=404] vs [Address=main.domain.ip.addr,Address Type=IPv4,Server=nginx,HTTP Status=301,Number of Redirects=1,Final HTTP Status=404]

我在這一切中的錯誤在哪裡,我是否遺漏了一些明顯的東西?如何為子域創建正確的 SSL 證書,或從我的子域中刪除不正確的 IP 地址,使其仍指向 ec2 實例。

這甚至可能嗎?非常感謝

您的子域目前有兩條A記錄。Let’s Encrypt 需要在頒發新證書之前驗證這兩個地址。只需刪除重複的一個,留下您的 EC 實例之一。

引用自:https://serverfault.com/questions/1007328