為什麼不能申請內網主機網址或私有 IP?
`server01.local`、`192.168.1.10` 這類網域名稱全世界的內網都在使用,沒有人可以宣稱「擁有」它們
不具唯一性的網域名稱,沒辦法驗證該網域是否屬於您
公開信賴憑證的驗證前提是「這個網域名稱於全世界只屬於一個人」。公開網域名稱與公開 IP 位址都有註冊制度,能查到持有人是誰;但內部名稱(server01、mail.local、intranet)與私有 IP(10.0.0.0/8、172.16.0.0/12、192.168.0.0/16)是每個組織團體於自己內網都能使用的網址,沒有任何網域登記管理機關接受此類內網網址╱IP 註冊。所以 CA 無從判斷申請者是否有權使用它。
更麻煩的是,這種憑證一旦簽發,它在任何網路環境裡都是有效。一家公司的 server01.local 憑證,在別家公司的內網同樣會被瀏覽器接受——攻擊者只要取得一張,就能在任何組織的內網冒充同名主機。名稱不具唯一性,憑證的保障對象就不存在(憑證另有主機身分鑑別功能,如同自然人的身分證或駕照),這是全面禁止內網網址╱IP 申請憑證的根本原因。
範例
申請者想替內部郵件主機 mail.local 或後台 https://192.168.1.10 申請憑證,理由是「瀏覽器一直跳警告」。但這張憑證無法被公開 CA 簽發,因為 CA 無法證明申請者是 mail.local 的持有人,同時那可能也是別人內網某台主機的名稱。
可行的替代方法有三種:
- 用自己擁有的公開網域名稱替內部主機命名,例如使用
mail.corp.example.com申請憑證,再讓內部 DNS 把它解析對映至私有 IP。因為公開網域名稱是可驗證的(控管權驗證是針對example.com這個網域進行),即使主機平常不開放對外連線仍可用於內網,這樣就能申請公開信賴憑證,解除瀏覽器的不安全連線警告。這是最常見的解法。 - 改由企業自建的內部 CA 簽發(也就是自簽憑證),並把企業內部 CA 的自簽根憑證配發至員工電腦與裝置的憑證信賴庫。內網網址與私有 IP 都可以由內部 CA 簽發憑證,因為企業內部 CA 的根憑證不會被常見的瀏覽器廠商預先植入於瀏覽器憑證信賴庫中,瀏覽器廠商也不對使用者內部環境的連線安全負責,所以企業內部 CA 不須要遵守 TLS BR 規定的驗證流程。(缺點是公司 MIS 須要每台電腦都要安裝企業內部 CA 根憑證,如果公司電腦眾多且資訊外包商也須要連線進公司內部主機的話,這些連線的電腦都須要安裝企業內部 CA 根憑證。)
- 若服務本來就要對外,改用公開網域名稱與公開 IP。
《基本要求》的規定
- 第 4.2.2 節:CA 不得(SHALL NOT)簽發含有內部名稱(Internal Name)或保留 IP 位址(Reserved IP Address)之憑證,理由明文寫在條文裡——這類名稱無法依第 3.2.2.4 節或第 3.2.2.5 節完成驗證。同節另規定自 2026-03-15 起,不得簽發其所含網域名稱以 IP 反向區域後綴結尾之憑證。
- 第 7.1.2.7.12 節:用戶憑證主體別名(
subjectAltName)欄位的規定同樣寫明,dNSName項目不得包含內部名稱、iPAddress項目不得包含保留 IP 位址。
這兩節一個規定 CA「不准簽發」內部網址及內部 IP、一個規定憑證「欄位不准出現」內部網址及內部 IP,實務上是同一件事的兩道管制關卡。