Maison >Java >javaDidacticiel >Comment fonctionne la résolution de noms de serveur de certificats SSL ?

Comment fonctionne la résolution de noms de serveur de certificats SSL ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-14 12:13:20945parcourir

How Does SSL Certificate Server Name Resolution Work?

Décodage de la résolution du nom du serveur de certificats SSL

Comprendre la résolution des certificats SSL est crucial pour établir une communication sécurisée. Explorons vos questions et fournissons des réponses complètes.

Résolution du nom de serveur pour les certificats SSL

RFC 2818 et RFC 6125 définissent la vérification du nom d'hôte pour les certificats SSL. En l'absence d'un nom alternatif de sujet (SAN) "dNSName", le champ Nom commun (CN) est utilisé. Cependant, l'utilisation du CN est obsolète et les SAN sont préférés.

Comportement du navigateur par rapport au mécanisme de Java

Les navigateurs gèrent souvent différemment les noms de serveurs basés sur le CN, autorisant les connexions même lorsque le CN ne correspond pas au domaine. Java, en revanche, adhère strictement à la RFC, n'acceptant que les SAN ou les CN correspondants.

Ajout de noms alternatifs à l'aide de Keytool

Le keytool de Java inclut désormais le "- ext" pour ajouter des SAN aux certificats. Utilisez "-ext san=dns:www.example.com" ou "-ext san=ip:10.0.0.1" pour inclure les noms alternatifs souhaités.

OpenSSL comme alternative

Si vous préférez ne pas utiliser keytool, OpenSSL peut être utilisé à cet effet. En modifiant openssl.cnf ou en définissant la variable d'environnement "OPENSSL_CONF", vous pouvez configurer OpenSSL pour demander un SAN dans les certificats.

Exemple de configuration pour OpenSSL

Dans openssl. cnf, ajoutez ce qui suit sous "[req]" et "[v3_req]" sections :

[req]
req_extensions = v3_req

[ v3_req ]
subjectAltName=IP:10.0.0.1
# or subjectAltName=DNS:www.example.com

Astuce de variable d'environnement alternative

Vous pouvez également définir une variable d'environnement pour spécifier le SAN. Reportez-vous à http://www.crsr.net/Notes/SSL.html pour plus de détails.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn