Toutes les versions du SSL /TLS protocole avant TLS 1.2 sont désormais obsolètes et considérés comme non sécurisés. De nombreuses plates-formes de serveurs Web ont encore TLS 1.0 et TLS 1.1 activé par défaut. Cependant, tous les navigateurs Web modernes sont compatibles avec TLS 1.2. Pour cette raison, il est conseillé aux propriétaires de sites Web de vérifier la configuration de leur serveur pour s'assurer que seules les versions actuelles et sécurisées de SSL /TLS sont activés et tous les autres (y compris TLS 1.0 TLS 1.1 et SSL 3.0) sont désactivés.
Ce guide comprend des instructions pour vérifier quelles versions de SSL /TLS sont activés sur un site Web, désactivant les versions obsolètes de SSL /TLS dans Apache et Nginx, et montre des exemples d'erreurs de navigateur résultant de serveurs exécutant uniquement des versions obsolètes et non sécurisées de SSL /TLS.
Cochez SSL activé /TLS versions
Outils en ligne
Vous pouvez vérifier rapidement les versions de SSL /TLS votre site Web prend en charge en visitant CDN77 TLS Checker et saisissez le nom de domaine que vous souhaitez vérifier. Comme on peut le voir ci-dessous, https://example.com désactive actuellement les versions 2 et 3 de SSL, mais active toutes les versions de TLS (y compris la version obsolète TLS 1.1 et 1.0):
Nmap
Vous pouvez également vérifier le SSL /TLS versions et chiffrements pris en charge par un site Web avec l'open-source nmap outil de ligne de commande:
nmap --script ssl-enum-ciphers -p
Le port par défaut pour SSL /TLS is 443
. La commande ci-dessous générera un rapport pour example.com
:
$ nmap --script ssl-enum-ciphers -p 443 example.com Démarrage de Nmap 7.80 (https://nmap.org) à 2020-08-25 13:10 EDT Rapport d'analyse Nmap pour example.com (93.184.216.34) L'hôte est actif (latence de 0.031 s). Autres adresses par exemple.com (non scannées): 2606: 2800: 220: 1: 248: 1893: 25c8: 1946 SERVICE D'ÉTAT DU PORT 443 / tcp open https | ssl-enum-ciphers: | TLSv1.0: | chiffrements: | 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 | compresseurs: | NULL | préférence de chiffrement: serveur | TLSv1.1: | chiffrements: | 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 | compresseurs: | NULL | préférence de chiffrement: serveur | TLSv1.2: | chiffrements: | 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 | compresseurs: | NULL | préférence de chiffrement: serveur | _ force minimale: A Nmap effectuée: 1 adresse IP (1 hôte en place) analysée en 3.88 secondes
Configuration du serveur
Apache
Pour désactiver TLS 1.0 et 1.1 dans Apache, vous devrez éditer le fichier de configuration contenant le SSLProtocol
directive pour votre site Web. Ce fichier peut être situé à différents endroits selon votre plate-forme, votre version ou d'autres détails d'installation. Certains emplacements possibles sont:
/usr/local/apache2/conf/extra/httpd-ssl.conf
(installation Apache par défaut)/etc/apache2/mods-enabled/ssl.conf
(Ubuntu / Debian)/private/etc/apache2/extra/httpd-ssl.conf
(macOS)
Lorsque vous avez localisé le fichier de configuration correct, recherchez une ligne commençant par SSLProtocol
. Cet exemple, à partir d'une installation par défaut de macOS Apache, désactive SSLv3 avec le -
opérateur mais active TLS 1.0 et 1.1:
SSLProtocol tout -SSLv3
Vous pouvez désactiver toutes les versions obsolètes de SSL /TLS pris en charge par Apache en les spécifiant comme suit:
SSLProtocol tout -SSLv3 -TLSv1 -TLSv1.1
La configuration ci-dessus permet TLS 1.2, ainsi que TLS 1.3 s'il est disponible dans votre environnement.
Apache et hôtes virtuels
Apache peut exécuter plusieurs sites Web sur un seul serveur. Celles-ci Hôtes virtuels peut être basé sur le numéro IP, le port ou le nom de domaine, et peut inclure des paramètres qui remplacent la configuration de base pour Apache. Pour cette raison, vous devez vérifier les paramètres de chaque hôte virtuel dans vos fichiers de configuration, en particulier si vos modifications du SSL de base /TLS la configuration ne semble pas fonctionner.
Pour les versions d'Apache antérieures à 2.4.42 (construites / liées à OpenSSL avant 1.1.1), il n'était pas possible de spécifier différents SSL /TLS protocoles pour les hôtes virtuels basés sur le nom partageant le même numéro IP de base et le même port - le SSLProtocol
du premier hôte virtuel a été appliqué à tous les autres. À partir d'Apache 2.4.42 / OpenSSL 1.1.1, le SSLProtocol
de chaque hôte virtuel basé sur le nom est honoré lorsque le Indication de nom de serveur (SNI) est fourni par le client pendant la SSL /TLS poignée de main.
Une fois que vous avez effectué vos modifications de configuration, rechargez Apache pour les appliquer. Pour plus d'informations sur le SSLProtocol
directive, veuillez vous référer à Apache Documentation.
Nginx
SSL /TLS les paramètres de protocole peuvent être spécifiés dans le fichier de configuration principal Nginx (généralement situé à /etc/nginx/nginx.conf
) ou dans les fichiers de configuration de votre site. Recherchez une ligne commençant par ssl_protocols
. Par exemple, ce qui suit est de la valeur par défaut nginx.conf
fichier d'une nouvelle installation de Nginx sur Ubuntu:
protocoles_ssl TLSv1 TLSv1.1 TLSv1.2 TLSv1.3; # Suppression de SSLv3, réf: POODLE
Vous pouvez modifier cette ligne de sorte que seules les versions actuelles et sécurisées de SSL /TLS sont inclus:
protocoles_ssl TLSv1.2 TLSv1.3 ;
Notez que tous les paramètres de votre configuration SSL par défaut peuvent être remplacés par des blocs de serveur configurant des noms de domaine individuels, assurez-vous donc de les vérifier si les modifications apportées à vos paramètres de protocole ne sont pas reflétées sur votre site Web.
Une fois que vous avez effectué vos modifications de configuration, rechargez Nginx pour les appliquer. Pour plus d'informations, veuillez consulter la documentation de Nginx sur configuration des serveurs HTTPS.
TLS Erreurs du navigateur 1.0 et 1.1
Parce que TLS les versions 1.0 et 1.1 sont actuellement considérées comme non sécurisées, la plupart des navigateurs modernes produiront un message d'erreur s'ils rencontrent un site Web où ils sont obsolètes. TLS les versions sont activées mais TLS 1.2 ou 1.3 ne l'est pas. Des exemples de ces erreurs sont présentés ci-dessous:
Google Chrome
Google Chrome affiche le message d'erreur suivant lorsqu'il se connecte à un site Web en cours d'exécution TLS 1.0 ou 1.1:
Votre connexion n'est pas entièrement sécurisée
Ce site utilise une configuration de sécurité obsolète, qui peut exposer vos informations (par exemple, mots de passe, messages ou cartes de crédit) lors de leur envoi sur ce site.NET::ERR_SSL_OBSOLETE_VERSION
En cliquant sur le Avancé affichera le message suivant, plus un lien pour accéder au site Web, étiqueté le danger:
La connexion utilisée pour charger ce site utilisée TLS 1.0 ou TLS 1.1, qui sont obsolètes et seront désactivées à l'avenir. Une fois désactivé, les utilisateurs ne pourront plus charger ce site. Le serveur doit activer TLS 1.2 ou plus tard.
Mozilla Firefox
Mozilla Firefox produit le message d'erreur suivant lorsqu'il se connecte à un site Web en cours d'exécution TLS 1.0 ou 1.1:
Connexion sécurisée Échec
Une erreur s'est produite lors d'une connexion à [URL]. Peer utilisant une version non prise en charge du protocole de sécurité.
Code d'erreur:SSL_ERROR_UNSUPPORTED_VERSION
...
Ce site Web peut ne pas prendre en charge le TLS 1.2 protocole, qui est la version minimale prise en charge par Firefox. Activation TLS 1.0 et 1.1 pourraient permettre à cette connexion de réussir.
TLS 1.0 et TLS 1.1 sera définitivement désactivé dans une prochaine version.
Apple Safari
Le navigateur Safari d'Apple chargera les sites Web HTTPS en utilisant TLS 1.0 et 1.1, mais affichera un message «Non sécurisé» dans la barre d'adresse du navigateur.
Pour plus d'informations
Pour en savoir plus sur les problèmes de sécurité associés aux versions antérieures de TLS, veuillez lire notre article, Déprécier tôt TLS pour un Internet plus sûr. Pour plus d'informations sur les différences importantes entre TLS 1.2 et TLS 1.3, vérifier TLS 1.3 est là pour rester.
Et, comme toujours, si vous avez des questions, veuillez nous contacter par e-mail à Support@SSL.com, appel 1-877-SSL-SECURE, ou cliquez simplement sur le lien de discussion en bas à droite de cette page. Vous pouvez également trouver des réponses à de nombreuses questions d'assistance courantes dans notre knowledgebase. Merci d'avoir visité SSL.com!
SSL.com fournit une grande variété de SSL /TLS certificats de serveur pour les sites Web HTTPS, y compris: