Todas las versiones de SSL /TLS protocolo antes de TLS 1.2 ahora están en desuso y se consideran inseguros. Muchas plataformas de servidores web todavía tienen TLS 1.0 y TLS 1.1 habilitado de forma predeterminada. Sin embargo, todos los navegadores web modernos son compatibles con TLS 1.2. Por esta razón, es una buena idea que los propietarios de sitios web verifiquen la configuración de su servidor para asegurarse de que solo las versiones actuales y seguras de SSL /TLS están habilitados y todos los demás (incluidos TLS 1.0, TLS 1.1 y SSL 3.0) están deshabilitados.
Esta guía incluye instrucciones para comprobar qué versiones de SSL /TLS están habilitados en un sitio web, deshabilitando versiones obsoletas de SSL /TLS en Apache y Nginx, y muestra ejemplos de errores del navegador resultantes de servidores que ejecutan solo versiones obsoletas e inseguras de SSL /TLS.
Marque SSL habilitado /TLS Source-Connect
Herramientas en línea
Puede comprobar rápidamente las versiones de SSL /TLS su sitio web admite visitando CDN77 TLS Cuadros e ingresando el nombre de dominio que desea verificar. Como se puede ver a continuación, https://example.com actualmente deshabilita las versiones 2 y 3 de SSL, pero habilita todas las versiones de TLS (incluido el obsoleto TLS 1.1 y 1.0):
Nmap
También puede verificar el SSL /TLS versiones y cifrados compatibles con un sitio web con el código abierto nmap herramienta de línea de comandos:
nmap --script ssl-enum-ciphers -p
El puerto predeterminado para SSL /TLS is 443
. El siguiente comando generará un informe para example.com
:
$ nmap --script ssl-enum-ciphers -p 443 example.com Iniciando Nmap 7.80 (https://nmap.org) en 2020-08-25 13:10 EDT Informe de escaneo de Nmap para example.com (93.184.216.34) El host está activo (latencia de 0.031 s). Otras direcciones para example.com (no escaneadas): 2606: 2800: 220: 1: 248: 1893: 25c8: 1946 PORT STATE SERVICE 443 / tcp open https | cifrados-ssl-enum: | TLSv1.0: | cifrados: | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A | TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A | TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | compresores: | NULL | preferencia de cifrado: servidor | TLSv1.1: | cifrados: | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A | TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A | TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | compresores: | NULL | preferencia de cifrado: servidor | TLSv1.2: | cifrados: | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (secp256r1) - A | TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (dh 2048) - A | TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 (dh 2048) - A | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (secp256r1) - A | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (secp256r1) - A | TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 (dh 2048) - A | TLS_DHE_RSA_WITH_AES_128_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 (dh 2048) - A | TLS_DHE_RSA_WITH_AES_256_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_AES_128_GCM_SHA256 (rsa 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA (dh 2048) - A | TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_AES_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_256_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_AES_128_CBC_SHA (rsa 2048) - A | TLS_RSA_WITH_CAMELLIA_128_CBC_SHA (rsa 2048) - A | TLS_DHE_RSA_WITH_SEED_CBC_SHA (dh 2048) - A | TLS_RSA_WITH_SEED_CBC_SHA (rsa 2048) - A | compresores: | NULL | Preferencia de cifrado: servidor | _ fuerza mínima: Nmap hecho: 1 dirección IP (1 host arriba) escaneada en 3.88 segundos
Configuración del servidor
APACHE
Deshabilitar TLS 1.0 y 1.1 en Apache, necesitará editar el archivo de configuración que contiene el SSLProtocol
directiva para su sitio web. Este archivo puede estar ubicado en diferentes lugares según su plataforma, versión u otros detalles de instalación. Algunas ubicaciones posibles son:
/usr/local/apache2/conf/extra/httpd-ssl.conf
(instalación de Apache predeterminada)/etc/apache2/mods-enabled/ssl.conf
(Ubuntu / Debian)/private/etc/apache2/extra/httpd-ssl.conf
(Mac OS)
Cuando haya localizado el archivo de configuración correcto, busque una línea que comience con SSLProtocol
. Este ejemplo, de una instalación MacOS Apache predeterminada, deshabilita SSLv3 con el -
operador pero habilita TLS 1.0 y 1.1:
SSLProtocol todo -SSLv3
Puede desactivar todas las versiones obsoletas de SSL /TLS compatible con Apache especificándolos de la siguiente manera:
SSLProtocol todo -SSLv3 -TLSv1 -TLSv1.1
La configuración anterior permite TLS 1.2, así como TLS 1.3 si está disponible en su entorno.
Apache y hosts virtuales
Apache puede ejecutar más de un sitio web en un solo servidor. Estas hosts virtuales puede basarse en el número de IP, puerto o nombre de dominio, y puede incluir configuraciones que anulan la configuración básica de Apache. Por esta razón, debe verificar la configuración de cada host virtual en sus archivos de configuración, especialmente si sus cambios en el SSL / baseTLS la configuración no parece estar funcionando.
Para las versiones de Apache anteriores a 2.4.42 (construido / vinculado con OpenSSL antes de 1.1.1), no era posible especificar diferentes SSL /TLS protocolos para hosts virtuales basados en nombre que comparten el mismo puerto y número de IP base: el SSLProtocol
del primer host virtual se aplicó a todos los demás. A partir de Apache 2.4.42 / OpenSSL 1.1.1, el SSLProtocol
de cada host virtual basado en nombre se respeta cuando el Indicación de nombre del servidor (SNI) es proporcionado por el cliente durante el SSL /TLS apretón de manos.
Una vez que haya realizado los cambios de configuración, vuelva a cargar Apache para ponerlos en práctica. Para obtener más información sobre SSLProtocol
directiva, consulte la directiva de Apache documentación.
Nginx
SSL /TLS La configuración del protocolo se puede especificar en el archivo de configuración principal de Nginx (generalmente ubicado en /etc/nginx/nginx.conf
) o en los archivos de configuración de su sitio. Busque una línea que comience con ssl_protocols
. Por ejemplo, lo siguiente es el predeterminado nginx.conf
archivo de una nueva instalación de Nginx en Ubuntu:
protocolos_ssl TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Eliminando SSLv3, ref: CANICHE
Puede editar esta línea para que solo las versiones actuales y seguras de SSL /TLS están incluidos:
protocolos_ssl TLSv1.2 TLSv1.3;
Tenga en cuenta que cualquier configuración en su configuración SSL predeterminada puede ser anulada por bloques de servidor que configuran nombres de dominio individuales, así que asegúrese de verificarlos si los cambios en la configuración de su protocolo no se reflejan en su sitio web.
Una vez que haya realizado los cambios de configuración, vuelva a cargar Nginx para ponerlos en práctica. Para obtener más información, consulte la documentación de Nginx sobre configurar servidores HTTPS.
TLS Errores del navegador 1.0 y 1.1
Gracias TLS Las versiones 1.0 y 1.1 actualmente se consideran inseguras, la mayoría de los navegadores modernos producirán un mensaje de error si encuentran un sitio web donde estos están obsoletos. TLS las versiones están habilitadas pero TLS 1.2 o 1.3 no lo es. A continuación se muestran ejemplos de estos errores:
Google Chrome
Google Chrome muestra el siguiente mensaje de error cuando se conecta a un sitio web en ejecución TLS 1.0 o 1.1:
Tu conexión no es completamente segura
Este sitio utiliza una configuración de seguridad desactualizada, que puede exponer su información (por ejemplo, contraseñas, mensajes o tarjetas de crédito) cuando se envía a este sitio.NET::ERR_SSL_OBSOLETE_VERSION
Al hacer clic en el Avanzada mostrará el siguiente mensaje, más un enlace para ir al sitio web, etiquetado inseguro:
La conexión utilizada para cargar este sitio utilizado TLS 1.0 o TLS 1.1, que están en desuso y se deshabilitarán en el futuro. Una vez desactivado, los usuarios no podrán cargar este sitio. El servidor debe habilitar TLS 1.2 o posterior.
Mozilla Firefox
Mozilla Firefox genera el siguiente mensaje de error cuando se conecta a un sitio web en ejecución TLS 1.0 o 1.1:
Error de conexión segura
Se produjo un error durante una conexión a [URL]. Peer usando una versión no compatible del protocolo de seguridad.
Código de error:SSL_ERROR_UNSUPPORTED_VERSION
...
Es posible que este sitio web no admita TLS 1.2, que es la versión mínima admitida por Firefox. Habilitar TLS 1.0 y 1.1 pueden permitir que esta conexión se realice correctamente.
TLS 1.0 y TLS 1.1 se desactivará permanentemente en una versión futura.
Apple Safari
El navegador Safari de Apple cargará sitios web HTTPS usando TLS 1.0 y 1.1, pero mostrará un mensaje "No seguro" en la barra de direcciones del navegador.
Para más información
Para leer sobre los problemas de seguridad asociados con versiones anteriores de TLS, por favor lea nuestro artículo, Desprecio temprano TLS para un Internet más seguro. Para obtener más información sobre las importantes diferencias entre TLS 1.2 y TLS 1.3, echa un vistazo TLS 1.3 llegó para quedarse.
Y, como siempre, si tiene alguna pregunta, comuníquese con nosotros por correo electrónico a Support@SSL.com, llamada 1-877-SSL-SECURE, o simplemente haga clic en el enlace de chat en la parte inferior derecha de esta página. También puede encontrar respuestas a muchas preguntas de soporte comunes en nuestro base de conocimientos. ¡Gracias por visitar SSL.com!
SSL.com proporciona una amplia variedad de SSL /TLS certificados de servidor para sitios web HTTPS, que incluyen: