Tecnología · GUÍA PRÁCTICA
¿OpenSSL dice wrong version number? Pruebe puerto, protocolo y proxy antes de cambiar TLS
Conserve la ruta y los primeros bytes; distinga texto plano, puerto incorrecto, proxy HTTP, STARTTLS, inspección o framing dañado.

wrong version number es una pista de la capa de registros, no prueba que el servidor solo admita TLS antiguo. Puede aparecer antes de recibir un certificado porque los primeros bytes no parecen un registro TLS.
Conserve URL, host, puerto, proxy y error. Pruebe la misma ruta como TLS directo, HTTP CONNECT o STARTTLS correcto. Repare una frontera y exija identidad TLS y respuesta de aplicación.
Fije la ruta exacta y el error original
Registre aplicación, versión OpenSSL, URL, dirección resuelta, puerto, variables proxy, NO_PROXY y cualquier mesh o inspección. Conserve el primer fallo antes de reintentar.
Si no hay certificado y solo se leen pocos bytes, investigue la frontera de protocolo antes del trust store. No publique credenciales ni capturas con secretos.
Clasifique TLS directo, CONNECT y STARTTLS
Para TLS inmediato use openssl s_client -connect host:port -servername host -brief; aun conectando a una IP, SNI debe ser el virtual host previsto.
Para proxy HTTP use -proxy y CONNECT; el endpoint suele ser HTTP plano. Para correo, LDAP, PostgreSQL y otros use el -starttls correspondiente.
Lea la primera respuesta como evidencia
Un registro TLS tiene header y secuencia definidos. Un estado HTTP, banner SMTP, bloqueo de proxy o texto de error prueba que respondió un componente anterior al TLS previsto. Conserve una muestra corta y censurada.
Asigne la respuesta al listener, reverse proxy, health endpoint, sidecar, proxy saliente, gateway de inspección o protocolo de aplicación. Diferencias entre redes son diferencias de ruta.
Repare solo la frontera probada
Corrija scheme, puerto, proxy/CONNECT, STARTTLS, listener, upstream mapping o framing que la evidencia identificó. No use TLS obsoleto, cipher débil ni verification off.
Si los primeros bytes son TLS y falla después, abra otro caso con alert, version, cipher, certificate o SNI reales.
Exija aceptación TLS y de aplicación en la misma ruta
Desde runtime y ruta originales registre certificate identity, hostname verification, protocol, cipher, SNI, proxy/STARTTLS y remote address; la aplicación debe verificar.
Obtenga una respuesta de aplicación inocua. Que desaparezca el mensaje anterior no basta; conserve el route ledger.
