SSL 証明書サーバーの名前解決について
SSL 証明書サーバーの名前解決は、HTTPS 接続での安全な通信を確保する上で重要な役割を果たします。これがどのように機能するか、および keytool を使用して代替名に対処する方法の詳細な内訳は次のとおりです。
SSL 証明書サーバー名の解決方法
クライアントが HTTPS 接続を確立すると、 Server Name Indication (SNI) 拡張機能をサーバーに送信し、接続先のホスト名を指定します。次に、サーバーは、共通名 (CN) フィールドまたはサブジェクト代替名 (SAN) 拡張子のいずれかを介して、指定されたホスト名と一致する SSL 証明書を提示します。
ブラウザの動作と Java の検証メカニズム
ブラウザは通常、ホスト名検証に証明書の CN フィールドを使用します。ただし、Java の検証メカニズムは主に SAN 拡張を考慮しており、有効な SAN のない証明書は拒否される場合があります。この矛盾は、ホスト名検証標準を定義する前述の RFC から生じます。
Keytool を使用した代替名の追加
Java 7 以降の keytool を使用すると、SAN を-ext オプションを使用した SSL 証明書。 SAN の構文は、-ext san=dns:www.example.com または -ext san=ip:10.0.0.1 です。
代替としての OpenSSL
OpenSSL SAN の要求にも使用できます。 openssl.cnf 構成ファイルに、次のオプションを追加します。
[req] req_extensions = v3_req [ v3_req ] subjectAltName=IP:10.0.0.1 # or subjectAltName=DNS:www.example.com
実行時に SAN を指定する環境変数を設定することもできます。詳細については、CRSR.net の記事を参照してください。
以上がSSL 証明書サーバーの名前解決はどのように機能しますか?また、代替名を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。