Cómo solucionar errores de conexión SSL: causas y soluciones
Cómo solucionar errores de conexión SSL: causas y soluciones

Cómo solucionar el error de conexión SSL en Apache: causas y soluciones

0 acciones
0
0
0
0

Introducción

Los errores de conexión SSL son un problema común pero crítico que puede impedir una conexión segura entre un cliente y un servidor. Estos errores ocurren cuando falla el protocolo de enlace TLS; es decir, el navegador o el cliente y el servidor no pueden establecer una conexión HTTPS segura. Fallos en cualquier etapa, desde la negociación del protocolo hasta la validación final del certificado, pueden causar este tipo de error.

Cuando ocurre un error de este tipo, aparecen mensajes como La conexión SSL falló, ERROR DE PROTOCOLO SSL O Error en el protocolo de enlace SSL En tu navegador o aplicación. Este problema puede afectar la navegación en el sitio, las API, el correo electrónico o cualquier servicio que utilice comunicación cifrada.

En este artículo, le mostraré cómo detectar y solucionar el "error de conexión SSL" en una variedad de escenarios, incluidos navegadores, herramientas de línea de comandos y configuraciones de servidor, para mantener su sitio o aplicación conectado de forma segura.


Conclusiones clave

  • La mayoría de los errores de SSL (alrededor del 80%) se deben a tres razones principales:

    1. Certificado caducado o autofirmado que necesita ser renovado o reemplazado.

    2. Discrepancia de nombre de dominio (CN/SAN) En el certificado del dominio solicitado. .

    3. Sin CA intermedioEsto significa que la cadena de certificados está incompleta y no se realiza una validación completa. .

  • Para diagnosticar problemas con precisión, puede utilizar herramientas como:

    • curl -v https://ejemplo.com (modo verboso)

    • openssl s_client -connect host:443 -nombre del servidor host -showcerts Para comprobar la cadena de certificados completa

  • Nunca No desactive la verificación SSL en un entorno de producción (por ejemplo, rizo -k O verificar=Falso) — Esto sólo oculta el problema y pone en duda la seguridad.

  • Recomendado: Hacer que los certificados se renueven automáticamente, habilitar el uso de TLS 1.3 y configurar un sistema para monitorear el estado de los certificados y OCSP. DigitalOcean


Requisitos previos para comprobar el error de conexión SSL

Antes de comenzar a solucionar problemas, debe tener los siguientes requisitos: un servidor que ejecute un sistema operativo Linux (como Ubuntu), acceso root o sudo, familiaridad básica con la línea de comandos, un dominio configurado en el servidor y una comprensión básica de los conceptos SSL/TLS.


¿Qué es un error de conexión SSL?

Al establecer una conexión TLS, el cliente y el servidor deben acordar la versión del protocolo, el conjunto de cifrado y la cadena de certificados, y el certificado debe verificarse. Si alguno de estos pasos falla, el cliente interrumpe la conexión y se produce un error de conexión SSL. 

El mensaje de error puede variar, incluyendo:

  • curl: (35) Error de conexión SSL

  • SSL: CERTIFICADO_VERIFICADO_FALLÓ (en solicitudes de Python)

  • ERROR DE PROTOCOLO SSL (En el navegador)

  • fallo del apretón de manos (en OpenSSL)


Causas principales del error de conexión SSL y solución rápida

CausaBreve explicación/solución
Certificado caducado o autofirmadoRenueve el certificado (por ejemplo, con Certbot/Let's Encrypt) o instale un certificado de una CA confiable
Discrepancia de nombre de dominio (CN/SAN)Vuelva a emitir el certificado con el dominio correcto, asegurándose de que el CN/SAN coincida con el dominio referenciado. 
Sin CA intermedioInstalación de la cadena de certificados completa (hoja + intermedio) en el servidor 
Versión de TLS o cifrado incorrectosHabilitación de TLS 1.2/1.3 y selección de cifrados modernos en la configuración del servidor web 
La hora del sistema (reloj) es incorrecta.Sincronizar el reloj del sistema con NTP (timedatectl set-ntp verdadero)
Configuración de firewall o redAsegúrese de que el puerto 443 esté abierto y que el tráfico HTTPS no esté bloqueado
CA no válidaUtilice un certificado CA válido o agregue la CA a las raíces confiables del sistema.

Diagnóstico y solución de problemas comunes del servidor cuando se produce un error de conexión SSL

Cuando con error Error de conexión SSL Si encuentra este error, suele deberse a un problema en algún punto del proceso para establecer una conexión segura entre el cliente (su sistema) y el servidor de destino. Este error puede deberse a una configuración incorrecta de SSL, versiones de protocolo incompatibles, problemas de DNS, problemas con el certificado o incluso con el firewall. En esta sección, explicaremos en detalle cómo diagnosticar y solucionar este error paso a paso en el servidor.

1. Verifique el certificado SSL en el servidor

El primer paso es asegurarse de que el certificado SSL instalado en el servidor sea válido:

  • El certificado no ha caducado.

  • El nombre de dominio (CN o SAN) coincide con la dirección solicitada.

  • La cadena de certificados está configurada correctamente (Certificados intermedios).

Para una revisión detallada:

openssl s_client -connect example.com:443 -servername example.com

En la salida, verifique lo siguiente:

  • Verificar código de retorno: 0 (ok)

  • La existencia de una cadena completa (Cadena de certificados)

  • Ver un emisor confiable (por ejemplo, Let's Encrypt, Cloudflare, Sectigo)

Si el código de retorno no es cero, significa que hay un problema de SSL del lado del servidor.


2. Verifique las versiones de TLS y los algoritmos de cifrado (conjuntos de cifrado)

Los clientes y servidores deben compartir al menos un protocolo y un cifrado. Es posible que el servidor solo admita TLS 1.3, pero el cliente heredado solo admita TLS 1.0.

Para comprobar los protocolos:

nmap --script ssl-enum-ciphers -p 443 example.com

Puntos a considerar:

  • Estar activo TLS 1.2 o TLS 1.3

  • Deshabilitar versiones inseguras como TLS 1.0 y SSLv3 (opcional pero recomendado)

  • La existencia de cifrados estándar como:

    • TLS_AES_256_GCM_SHA384

    • ECDHE-RSA-AES256-GCM-SHA384

Si no hay una versión o cifrado compatible, la conexión se interrumpe y se muestra un error de conexión SSL.


3. Verifique la configuración del firewall y del puerto

A veces, el firewall bloquea la conexión SSL incluso antes de que comience el protocolo de enlace.

Puntos importantes:

  • Puerto 443/TCP Estar abierto.

  • El firewall de software (UFW / firewalld / CSF) permite el tráfico HTTPS.

Revisión rápida:

sudo ufw status

O:

sudo iptables -L -n

Si utiliza Cloudflare o una CDN, asegúrese de:

  • El modo SSL/TLS es correcto (Completo/Completamente estricto)

  • Las direcciones IP de CDN están en la lista de permitidos.


4. Pruebe la conexión del servidor al destino

Para comprobar si hay problemas de red:

curl -v https://example.com

La salida puede revelar los siguientes problemas:

  • conexión rechazada

  • Problema con el certificado SSL

  • No se puede obtener el certificado del emisor local

  • fallo del apretón de manos

  • se acabó el tiempo

O prueba de ping y traceroute:

ping example.com traceroute example.com

Si se interrumpe la ruta de la red, no se realizará el protocolo de enlace SSL.


5. Compruebe si hay problemas de DNS

Si el servidor DNS proporciona una dirección incorrecta, la conexión se envía a otro servidor y se produce una falta de coincidencia de SSL.

Prueba:

dig example.com nslookup example.com

Puntos de control:

  • La IP es correcta.

  • La propagación del DNS está completa.

  • El registro AAAA (IPv6) no es inconsistente (si lo hay)

A veces deshabilitar IPv6 soluciona el problema.


6. Verifique la hora y la fecha en el servidor

SSL depende en gran medida de la hora exacta. Incluso un error de 5 minutos puede causar problemas.

Revisar:

timedatectl

En caso de problema:

sudo timedatectl set-ntp true

Si la hora del servidor es incorrecta, el sistema pensará que el certificado aún no es válido o ha expirado.


7. Verifique el sistema de paquetes de CA

Si su sistema no reconoce las CA confiables, incluso un certificado en buen estado generará un error.

En distribuciones de Linux:

sudo update-ca-certificates

O:

sudo yum update ca-certificates

8. Compruebe si hay herramientas Proxy o MitM

Si hay un proxy o un filtro de tráfico en la ruta de conexión, es posible que se reemplace el certificado y se produzca una discordancia.

Puntos de control:

  • Configuración de proxy en curl o entorno del sistema

  • Desactivar antivirus o IDS/IPS como Suricata

  • Prueba sin proxy:

curl -v --noproxy '*' https://example.com

9. Comprobación de errores en el lado de la aplicación o del servidor web

La configuración de Nginx/Apache puede tener problemas:

Nginx:

  • Ruta de la cadena:

ssl_certificate /etc/ssl/certs/fullchain.pem;
ssl_certificate_key /etc/ssl/private/privkey.pem;

Apache:

SSLCertificateFile /etc/ssl/certs/cert.pem
SSLCertificateChainFile /etc/ssl/certs/chain.pem
SSLCertificateKeyFile /etc/ssl/private/key.pem

Si el orden de la cadena es incorrecto → Error de conexión SSL es seguro.

Sincronización horaria del sistema

Si el reloj del servidor es incorrecto, el certificado podría no ser válido. Sincronice la hora con NTP.


Errores comunes a evitar

  • Usando opciones como -k En rizo O verificar=Falso En Python, para omitir SSL, esto debilita la seguridad y solo oculta el error. DigitalOcean

  • Uso de un certificado autofirmado en un entorno de producción

  • Suponiendo que SSL siempre funciona, sin supervisar las fechas de vencimiento ni las cadenas de certificados

  • El servidor no comprueba la cadena de certificados completa


Conclusión final

El error de conexión SSL es uno de los obstáculos más comunes para una conexión segura entre un navegador o cliente y un servidor. Sin embargo, al diagnosticar con precisión la causa (ya sea un certificado caducado, una discrepancia de dominio o una configuración incompleta) y aplicar las mejores soluciones, este problema se puede resolver de forma fácil y segura. No sacrifique siempre la seguridad por la comodidad; deshabilitar la autenticación SSL solo funciona temporalmente y supone un riesgo para la seguridad.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

También te puede gustar