將域 A 指向域 B 的 CNAME 會導致安全警告
我正在使用
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/
您必須擁有該名稱的有效證書。