二級域的 SSL 通用名稱
在我的 Apache 伺服器中配置 SSL 和證書時,我遇到了一些二級域的問題,例如
.com.pt.
如果我要求一個
www.xpto.com
域的證書,它將為www.xpto.com
和頒發xpto.com
。如果我要求提供證書,
www.xpto.com.pt
它將僅適用於www.xpto.com.pt
但不適用於xpto.com.pt
(由 RapidSSL 頒發)這樣做有技術原因嗎?
是的。對於沒有經驗的人,讓我們把它分解成小塊:
當您請求帶有伺服器身份驗證擴展的標準 x509 證書(通常稱為 SSL 證書)時,您必須提供主題名稱 (SN)。此 SN 必須與使用者鍵入的內容相匹配,才能使用證書,而不會出現警告消息。
從技術上講,證書應該只適用於您提供給 CA 的確切 SN。因此,如果您要求
www.example.com
,那麼它應該只適用於該域名,它不example.com
應該適用於www.example.com
.但是,許多網站也使用備用域名。預設域名起作用是很常見的。所以在這個例子中
www.example.com
;www
是主機名,example.com
是域名。證書被請求並頒發給www.example.com
,並且如前一段所述,這不匹配example.com
(因為example.com
正在請求域的預設主機 (A) 記錄example.com
;很明顯,主機www
和預設主機不是在 DNS 意義上相同,當然不必是同一個網站)。大多數人實際上在兩個主機名上都有相同的網站。此外,大多數使用者希望他們可以輸入任何一個名稱,然後會出現正確的網站。因此,大多數 CA 不會頒發您請求的證書。他們實際上使用您提供的 SN 頒發證書(如上所述),並且還包含一個主題備用名稱(SAN;顧名思義,它提供使用者可以輸入的備用名稱,並且應該在沒有警告消息的情況下接受該名稱) . 這通常僅在您請求二級域名(例如
example.com
)時才有效,並且它們通常會忽略www
為三級域名(例如,出於證書的目的)www.example.com
。example.com
通常,當您申請證書
example.com
或www.example.com
實際獲得 SNexample.com
和 SAN 的證書時www.example.com
。TLD 通常可以是任何東西。但是,當您請求具有更具體名稱的證書時,例如您的範例(來自問題),其中有4 級(或更多)域名,它們不包括此備用名稱。
您可以專門要求一個。有時只需詢問他們,他們就會免費發行。其他時候,您必須申請 UCC 或多個 SAN 證書(相同的東西,不同的名稱)。萬用字元證書也可以使用,儘管它們往往更昂貴,並且通常需要更高程度的購買者身份驗證。