Domain-Name-System

將域 A 指向域 B 的 CNAME 會導致安全警告

  • February 13, 2019

我正在使用banana.com允許我使用我的域 ( orange.com) 登錄的服務 ( )。

他們提到要像這樣添加 CNAME 記錄:

an.orange.com. 3600 IN CNAME service.banana.com.

我這樣做了,但是當我訪問 URL 時,我得到(在 Chrome 上)一個錯誤Your connection is not private""

你的連接不是私人的

我的伺服器在 Apache 上執行。

為什麼伺服器必須證明它是an.orange.com?為什麼它甚至首先擊中我的伺服器?地址不應該解析為service.banana.com嗎?

CNAME記錄聲明這是an.orange.com規範名稱的別名service.banana.com

這意味著當客戶端A在響應中查找某些記錄類型(例如)時an.orange.com,將有效地獲得該A記錄service.banana.com

在正常應用程序中,例如您的範例中的 Web 瀏覽器,應用程序不知道或不關心CNAME作為名稱解析過程的一部分的記錄形式的間接性(它在很大程度上對),它只使用生成的 IP 地址。

考慮到這一點,當使用者https://an.orange.com/在他們的網路瀏覽器中導航到時,瀏覽器設置為連接到 url ( an.orange.com) 的主機部分,它解析這個名稱,獲取一個 IP 地址,連接,然後它完全期望一個有效的證書對於來自目前 URL 的主機,如果是 HTTPS,它會發送帶有目前 URL 的主機部分的 Host 標頭 ( an.orange.com) 作為其請求的一部分。

這與 Web 瀏覽器對 HTTP 重定向的反應截然不同,後者被告知導航到不同的 URL,以所有新的期望重新啟動整個導航過程(例如,現在嘗試連接到https://service.banana.com/)。

對於 HTTPS,這意味著如果您想允許使用者導航到https://an.orange.com/您必須擁有該名稱的有效證書。

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