Dekodierung der Namensauflösung von SSL-Zertifikatservern
Das Verständnis der SSL-Zertifikatauflösung ist für den Aufbau einer sicheren Kommunikation von entscheidender Bedeutung. Lassen Sie uns Ihre Fragen untersuchen und umfassende Antworten geben.
Servernamensauflösung für SSL-Zertifikate
RFC 2818 und RFC 6125 definieren die Hostnamenüberprüfung für SSL-Zertifikate. Wenn kein „dNSName“-Subject Alternative Name (SAN) vorhanden ist, wird das Feld „Common Name“ (CN) verwendet. Die CN-Nutzung ist jedoch veraltet und SANs werden bevorzugt.
Browserverhalten im Vergleich zum Java-Mechanismus
Browser verarbeiten CN-basierte Servernamen oft unterschiedlich und ermöglichen Verbindungen auch dann, wenn Der CN stimmt nicht mit der Domäne überein. Java hingegen hält sich strikt an den RFC und akzeptiert nur SANs oder passende CNs.
Hinzufügen alternativer Namen mit Keytool
Java's Keytool enthält jetzt das „- ext“-Option zum Hinzufügen von SANs zu Zertifikaten. Verwenden Sie „-ext san=dns:www.example.com“ oder „-ext san=ip:10.0.0.1“, um die gewünschten alternativen Namen einzuschließen.
OpenSSL als Alternative
Wenn Sie keytool nicht verwenden möchten, kann OpenSSL für diesen Zweck verwendet werden. Durch Ändern von openssl.cnf oder Festlegen der Umgebungsvariablen „OPENSSL_CONF“ können Sie OpenSSL so konfigurieren, dass ein SAN in Zertifikaten angefordert wird.
Beispielkonfiguration für OpenSSL
In openssl. cnf, fügen Sie Folgendes unter „[req]“ und „[v3_req]“ hinzu. Abschnitte:
[req] req_extensions = v3_req [ v3_req ] subjectAltName=IP:10.0.0.1 # or subjectAltName=DNS:www.example.com
Alternativer Umgebungsvariablen-Trick
Alternativ können Sie eine Umgebungsvariable festlegen, um das SAN anzugeben. Weitere Informationen finden Sie unter http://www.crsr.net/Notes/SSL.html.
Das obige ist der detaillierte Inhalt vonWie funktioniert die Namensauflösung des SSL-Zertifikatservers?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!