Accueil
/
Aide du site web
/
SSL Handshake Failed: Ce que c'est et comment le résoudre

SSL Handshake Failed: Ce que c'est et comment le résoudre

L’erreur « SSL Handshake Failed » fonctionne comme une poignée de main classique : elle symbolise un accord entre deux parties. Plus précisément, un serveur web et un client web (par exemple, un navigateur) s’authentifient mutuellement, définissent les protocoles de cryptage avec les certificats SSL/TLS, et établissent une connexion sécurisée entre eux.

C’est un processus simplifié, adopté universellement par la plupart des sites web et des applications en ligne. Que vous fassiez des achats en ligne, utilisiez votre application préférée ou visitiez simplement un site web, la poignée de main SSL s’effectue discrètement en arrière-plan.

Cependant, il arrive parfois que quelque chose bloque la poignée de main SSL, vous empêchant ainsi de vous connecter à votre site web préféré. En conséquence, vous verrez l’erreur «SSL Handshake Failed », ce qui peut être assez frustrant, voire inquiétant.

Mais ne vous inquiétez pas : bien qu’elle puisse sembler intimidante, l’erreur «SSL Handshake Failed» n’est pas aussi complexe qu’elle en a l’air. Seul un petit nombre de problèmes peuvent l’entraîner, et ils sont généralement faciles à résoudre. Ce guide explorera l’erreur «SSL Handshake Failed», ses déclencheurs les plus courants et la manière de la résoudre.

L’erreur « SSL Handshake Failed», se produit lorsqu’un client web (tel qu’un navigateur ou une application web) et un serveur web ne peuvent pas établir une connexion sécurisée et cryptée. L’erreur est généralement due à un échec de la négociation des méthodes de cryptage, à un certificat SSL manquant ou invalide, à un logiciel ou une extension tiers, à une mauvaise configuration du serveur, ou à des paramètres d’heure système incorrects.

L’erreur «SSL Handshake Failed » est généralement accompagnée d’un message d’erreur. Toutefois, ce message peut apparaître différemment selon le serveur web, le navigateur ou l’application utilisée. Il est également possible que vous voyiez d’autres erreurs SSL, telles que Votre connexion n’est pas privée ou ERR_SSL_VERSION_OR_CIPHER MISMATCH.

Les utilisateurs de Cloudflare sont plus susceptibles de détecter cette erreur lorsque leurs sites web présentent une mauvaise configuration du certificat SSL. Elle s’accompagne alors du code d’erreur 525. Voici à quoi cela peut ressembler.

Erreur SSL Handshake Failed sur Cloudflare

Qu’est-ce qui peut causer l’interruption du processus de handshake SSL ?

L’erreur «SSL Handshake Failed » indique un problème évident : le serveur et le client ne parviennent pas à établir une connexion sécurisée avec le protocole SSL. Cependant, il peut être nécessaire d’examiner plusieurs éléments pour identifier précisément la cause. Parmi les raisons les plus fréquentes, nous retrouvons :

  • Heure et date système incorrectes : Les certificats SSL sont horodatés, ils ont donc une durée limitée. S’il y a un écart de temps considérable entre le serveur et le client, l’une des deux peut percevoir le certificat SSL comme expiré, ce qui entraîne l’échec de la connexion.
  • Version de navigateur obsolète : Les navigateurs doivent être régulièrement mis à jour afin de prendre en charge les derniers protocoles de sécurité. Un navigateur trop ancien peut ne pas reconnaître ou valider le certificat SSL du serveur, ce qui empêche l’établissement de la connexion sécurisée.
  • Paramètres SSL/TLS incompatibles : Le navigateur et le serveur doivent s’entendre sur une version commune du protocole. Si chacun est configuré avec des paramètres SSL/TLS différents, ils ne pourront pas initier correctement la poignée de main SSL.
  • Suites de chiffrement non prises en charge : Une suite de chiffrement est un ensemble d’algorithmes qui aident à sécuriser les connexions réseau en utilisant le protocole SSL/TLS. Si le serveur web utilise des suites de chiffrement non compatibles avec celles du client, la connexion SSL échouera.
  • Extensions de navigateur problématiques : Certaines extensions peuvent perturber le processus de handshake SSL.
  • Pare-feu ou logiciel antivirus trop restrictis : Bien qu’essentiels à la sécurité, ces logiciels peuvent parfois être trop agressifs et bloquer le processus de handshake SSL.
  • Certificat SSL expiré ou invalide : Le certificat du serveur doit être valide et reconnu, sinon les navigateurs refuseront la connexion.
  • Serveur ne prenant pas en charge SNI : Le SNI permet d’héberger plusieurs certificats SSL sur une même adresse IP. Sans ce support, le client web risque de se connecter au mauvais certificat, souvent expiré, ce qui entraîne l’échec du processus de handshake SSL.

Comment résoudre l’erreur «SSL Handshake Failed » (8 méthodes éprouvées)

En résumé, une erreur d’échec de la poignée de main SSL peut être déclenchée par divers problèmes. Cependant, ils ne sont pas si complexes, et vous n’avez besoin que de quelques étapes pour résoudre le problème. Alors, commençons par les solutions les plus courantes.

8 façons de corriger l’erreur SSL Handshake Failed

Vérifiez les paramètres de l’heure et de la date sur votre ordinateur

Si la date et l’heure de votre ordinateur ne sont pas correctement configurées, cela peut entraîner l’erreur «SSL Handshake Failed». Ce problème survient fréquemment après un changement de fuseau horaire, lorsque l’heure du système ne s’est pas mise à jour automatiquement, créant ainsi un décalage avec celle du serveur. Ainsi, régler l’heure automatiquement devrait être l’une des premières étapes.

Par exemple, si vous utilisez un Mac, ouvrez Réglages Système > Général > Date et heure.

Paramètres de Date & Heure sur Mac

Activez l’option Régler la date et l’heure automatiquement pour vous assurer que les paramètres de l’heure de votre ordinateur sont corrects.

Régler l'heure et la date automatiquement sur Mac

Mettez à jour votre navigateur

Les mises à jour des navigateurs incluent souvent la prise en charge des protocoles de chiffrement et des suites de chiffrement les plus récents. Par conséquent, la mise à jour de votre navigateur web est souvent un moyen simple et efficace de vous débarrasser de l’erreur « SSL Handshake Failed ».

Prenons l’exemple de Google Chrome, l’un des navigateurs les plus utilisés: Ouvrez son menu kebab (menu à trois points verticaux) en haut à droite, et cliquez sur Paramètres.

Paramètres dans Google Chrome

Sur la page Paramètres, accédez à la section À propos de Chrome. Bien que Chrome se mette généralement à jour automatiquement, il se peut qu’une nouvelle version ne se soit pas installée correctement.

Si votre navigateur est à jour, le message « Chrome est à jour » s’affichera. Dans le cas contraire, vous serez invité à installer la dernière version disponible.

Vérificateur de version de Chrome

Vérifiez les paramètres de prise en charge des versions SSL/TLS

Le chiffrement a évolué au fil du temps et a connu plusieurs révisions majeures. Il a d’abord été assuré par le protocole SSL (Secure Socket Layer), avant d’être remplacé par TLS (Transport Layer Security).

Les principaux navigateurs (tels que Chrome et Firefox) ont tendance à suivre les derniers protocoles de sécurité. Toutefois, il se peut que votre navigateur ne prenne pas en charge la version SSL/TLS utilisée par un site web. Ce décalage de protocole entre le client et le serveur pourrait être à l’origine de l’erreur «SSL Handshake Failed ».

Vous pouvez examiner les paramètres par défaut de votre navigateur, mais cela implique de naviguer profondément dans les menus avancés. Une méthode beaucoup plus simple et rapide pour vérifier quelles versions SSL/TLS sont prises en charge par votre navigateur consiste à utiliser un outil en ligne comme le SSL Client Test de Qualys.

Cet outil effectuera un diagnostic rapide et vous fournira une évaluation complète des capacités de votre navigateur en matière de prise en charge SSL/TLS.

Page de test SSL Client de Qualys

Vous pouvez également vérifier les versions SSL/TLS prises en charge par un site web grâce à un outil en ligne tel que Test TLS. Il suffit d’entrer l’adresse du site qui affiche l’erreur «SSL Handshake Failed » puis cliquez sur Test TLS.

L’outil testera le serveur web contre toutes les principales versions SSL/TLS et fournira les résultats dans une page de résumé.

Résultats du Test TLS pour le serveur d'un site web

Si les mêmes protocoles TLS sont pris en charge par le client et le serveur, vous pouvez exclure un décalage de protocole et passer à la solution suivante

Vérifiez les suites de chiffrement

Les suites de chiffrement définissent comment les données sont cryptées, authentifiées et échangées entre le serveur et le client. Lorsque le serveur web utilise un ensemble de suites de chiffrement qui ne sont pas prises en charge par l’application cliente, vous êtes susceptible de rencontrer l’erreur«SSL Handshake Failed ».

Tester les suites de chiffrement prises en charge par un serveur peut vous aider à déterminer si une incompatibilité est à l’origine du problème. Des outils en ligne tels que le SSL Server Test de Qualys fournissent des rapports détaillés sur la configuration SSL/TLS d’un serveur, incluant les suites de chiffrement compatibles. Vous devez simplement soumettre l’adresse du site web et cliquer sur Submit. Ensuite, dans la page des résultats, faites défiler jusqu’à la section Configuration pour voir les suites de chiffrement prises en charge.

Informations sur les suites de chiffrement pour un serveur web

Si votre client et le serveur utilisent les mêmes suites de chiffrement, passez à la solution suivante.

Désactivez les extensions de navigateur

Les extensions sont très utiles pour enrichir les fonctionnalités de votre navigateur, mais parfois, elles peuvent perturber le processus de SSL Handshake. Essayez de désactiver les plugins et extensions installés, car ils pourraient être à l’origine du problème.

Pour Chrome, ouvrez le menu kebab (trois points), et sélectionnez Extensions > Gérer les extensions.

Menu Gérer les extensions dans Google Chrome

Désactivez une extension, puis essayez de visiter le site web qui générait l’erreur «SSL Handshake Failed ». Si l’erreur persiste, passez à la suivante, et ainsi de suite, jusqu’à trouver celle qui pose problème.

Paramètres des extensions de navigateur dans Google Chrome

Désactivez votre pare-feu ou logiciel antivirus

L’erreur « SSL Handshake Failed » peut également s’expliquer par un antivirus ou un pare-feu trop restrictif. Essayez de désactiver temporairement votre logiciel de sécurité pour vérifier s’il est responsable du problème.

Si c’est le cas, ajoutez l’adresse du site web à la liste blanche afin de pouvoir continuer à y accéder tout en gardant votre antivirus et pare-feu activés.

Assurez-vous que le site web dispose d’un certificat SSL valide

Si le certificat SSL d’un site web est manquant ou expiré, le client et le serveur ne peuvent pas établir une connexion sécurisée. Que vous soyez simplement visiteur ou propriétaire du site, il est important de vérifier la validité du certificat afin de s’assurer qu’il n’est pas à l’origine de l’échec de handshake SSL.

Un moyen simple et rapide de vérifier si le certificat SSL est valide consiste à utiliser un outil en ligne tel que le SSL Checker de SSL Shopper. Il vous suffit simplement de saisir le nom de domaine du site dans le champ prévu à cet effet, puis de cliquer sur Check SSL pour obtenir un rapport de statut, qui affichera la date d’expiration, les noms communs, la signature et d’autres informations importantes.

Si tout apparaît en vert, vous n’avez pas à vous inquiéter du certificat SSL. Cependant, si des avertissements s’affichent et que vous êtes le gestionnaire du site, vous devrez réinstaller le certificat.

SSL Checker de SSL Shopper

Vérifiez si votre serveur prend en charge SNI

SNI (Server Name Indication) est une fonctionnalité essentielle des serveurs web modernes, leur permettant d’héberger plusieurs certificats SSL. Sans celle-ci, un client risque de recevoir le certificat d’un autre site, ce qui peut entraîner des erreurs ou des confusions.

Pour vérifier si le serveur du site web prend en charge SNI, vous pouvez utiliser Terminal (sur Mac) ou l’Invite de commandes (sur Windows). Ainsi, saisissez la commande suivante :

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

Remplacez votresiteweb.com par le domaine du site web que vous souhaitez vérifier. La commande affichera des informations relatives au certificat SSL du domaine. Si tout est en ordre, les détails retournés doivent correspondre au nom de domaine saisi. Pour plus de certitude, exécutez la commande plusieurs fois. Si le serveur renvoie systématiquement les mêmes informations, cela confirme qu’il prend bien en charge SNI, car un serveur compatible associe toujours le bon certificat au nom d’hôte spécifié.

Utilisation de Terminal pour vérifier si un serveur est compatible SNI

Cependant, si le résultat varie et que vous voyez des détails de certificat correspondant à différents noms d’hôte, cela signifie que le serveur ne prend pas en charge SNI.

Conclusion : Résolution de l’erreur « SSL Handshake Failed »

SSL Handshake est une étape cruciale du processus de chiffrement, permettant la transmission sécurisée des données lors des communications entre le client et le serveur. Certaines erreurs de configuration peuvent perturber ce processus et empêcher l’établissement d’une connexion sécurisée, entraînant la redoutée erreur « SSL Handshake Failed», qui peut compromettre vos sessions en ligne et nuire à l’expérience utilisateur.

Ce guide vous fournit une compréhension essentielle de cette erreur ainsi que de ses causes les plus fréquentes, afin que vous puissiez la résoudre rapidement avant qu’elle ne cause de réels désagréments.

Partager cet article