解碼 SSL 憑證伺服器名稱解析
了解 SSL 憑證解析對於建立安全通訊至關重要。讓我們探討您的問題並提供全面的答案。
SSL 憑證的伺服器名稱解析
RFC 2818 和 RFC 6125 定義 SSL 憑證的主機名稱驗證。如果缺少「dNSName」主題備用名稱 (SAN),則使用通用名稱 (CN) 欄位。然而,CN 的使用已被棄用,而 SAN 是首選。
瀏覽器行為與Java 機制
瀏覽器通常以不同的方式處理基於CN 的伺服器名稱,即使在以下情況下也允許連接CN 與網域不匹配。另一方面,Java 嚴格遵守 RFC,僅接受 SAN 或符合的 CN。
使用 Keytool 新增備用名稱
Java 的 keytool 現在包含「- ext」選項,用於將 SAN 新增至憑證。使用“-ext san=dns:www.example.com”或“-ext san=ip:10.0.0.1”包含所需的備用名稱。
OpenSSL 作為替代
如果您不想使用 keytool,可以使用 OpenSSL 來實現此目的。透過修改 openssl.cnf 或設定環境變數“OPENSSL_CONF”,您可以設定 OpenSSL 以在憑證中請求 SAN。
OpenSSL 的範例設定
在 openssl 中。 cnf,在「[req]」和「[v3_req]」下加入以下內容部分:
[req] req_extensions = v3_req [ v3_req ] subjectAltName=IP:10.0.0.1 # or subjectAltName=DNS:www.example.com
取代環境變數技巧
或者,您可以設定環境變數來指定SAN。詳情請參閱http://www.crsr.net/Notes/SSL.html。
以上是SSL 憑證伺服器名稱解析如何運作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!