El único revestimiento que probablemente esté buscando para detectar la presencia de un encabezado de extensión de indicación de nombre de servidor SSL / TLS es:
openssl s_client -servername www.SERVERNAME.com -tlsextdebug -connect www.YOURSERVER.com:443 2>/dev/null | grep "server name"
donde www.SERVERNAME.comestá el valor SNI que está probando y www.YOURSERVER.comes el nombre de dominio o la dirección IP del servidor compatible con TLS que está probando.
La línea de comando usa openssl's s_client(vea s_client (1) ) para conectarse al servidor en www.YOURSERVER.comel puerto 443. La -tlsextdebugopción activa la salida de depuración de la extensión TLS. La -servernameopción le dice al s_clientprograma que pase www.SERVERNAME.comcomo el valor del campo SNI en el paquete ClientHello durante el protocolo de enlace TLS.
Finalmente, 2>/dev/nullsimplemente oculta la salida stderr (que puede ser ruidosa), y la | grep "server name"tubería filtra stdout para mostrar la extensión TLS llamada "nombre del servidor" en s_clientla salida de depuración de la extensión TLS.
Si ve una línea de salida como
TLS server extension "server name" (id=0), len=0
entonces el servidor está devolviendo la información del encabezado SNI en su respuesta ServerHello. Si no lo hace, es posible que el servidor no sea compatible con SNI o que no haya sido configurado para devolver información SNI dado el nombre que está solicitando. En este caso, verifique que esté usando un nombre de dominio en la -servernameopción que el servidor debe responder con información SNI.
openssl. Algunos detalles están disponibles: se proporcionaopenssl s_client -servername alice.sni.velox.ch -tlsextdebug -msg -connect alice.sni.velox.ch:443alguna indicación de uso de SNI durante la prueba Qualys SSL .