Maison  >  Article  >  interface Web  >  Comprendre l'erreur « Impossible d'obtenir le certificat d'émetteur local »

Comprendre l'erreur « Impossible d'obtenir le certificat d'émetteur local »

王林
王林original
2024-09-03 15:13:59368parcourir

Understanding the
Dans le domaine de SSL/TLS, l'erreur « Impossible d'obtenir le certificat de l'émetteur local » est une pierre d'achoppement courante que les développeurs et les administrateurs système rencontrent lorsqu'ils travaillent avec des connexions sécurisées. Cette erreur survient généralement lorsqu'une chaîne de certificats ne peut pas être entièrement validée, ce qui signifie que le système est incapable de vérifier l'authenticité d'un certificat car il ne reconnaît pas l'émetteur. Comprendre cette erreur est crucial pour garantir une communication sécurisée dans les applications Web, les serveurs et autres systèmes qui reposent sur SSL/TLS.
Qu'est-ce que SSL/TLS ?
SSL (Secure Sockets Layer) et son successeur, TLS (Transport Layer Security), sont des protocoles cryptographiques conçus pour assurer une communication sécurisée sur un réseau informatique. Ils sont largement utilisés pour sécuriser le trafic Web, le courrier électronique et d’autres formes de communication. L'objectif principal de SSL/TLS est de garantir la confidentialité, l'intégrité des données et l'authentification entre les parties lors d'une session de communication.
SSL/TLS s'appuie sur des certificats pour établir la confiance. Ces certificats sont émis par des entités de confiance appelées autorités de certification (CA). Lorsqu'une connexion sécurisée est établie, le serveur présente son certificat au client et celui-ci vérifie ce certificat par rapport à une liste d'autorités de certification de confiance. Si le certificat est valide et que l'autorité de certification est approuvée, la connexion se poursuit. Sinon, des erreurs telles que « Impossible d'obtenir le certificat de l'émetteur local » peuvent se produire.
L'anatomie d'une chaîne de certificats
Une chaîne de certificats, également appelée chemin de certification, est une séquence de certificats dans laquelle chaque certificat de la chaîne est signé par le certificat suivant. La chaîne commence par le certificat de l'utilisateur final et monte jusqu'à un certificat racine auto-signé par l'autorité de certification. La structure typique d'une chaîne de certificats comprend :

  1. Certificat d'utilisateur final : il s'agit du certificat du site Web ou du service en question.
  2. Certificats intermédiaires : ces certificats comblent le fossé entre le certificat de l'utilisateur final et le certificat racine. Ils sont délivrés par l'AC et doivent être approuvés par le client.
  3. Certificat racine : le certificat racine est le certificat le plus élevé de la chaîne et est auto-signé par l'autorité de certification. Il est généralement préinstallé dans le magasin de certificats du système. Pour que le certificat soit fiable, toute la chaîne, depuis le certificat de l'utilisateur final jusqu'au certificat racine, doit être valide et reconnue par le système. Si un maillon de cette chaîne est manquant ou non reconnu, des erreurs se produiront. Quelles sont les causes de l'erreur « Impossible d'obtenir le certificat de l'émetteur local » ? L'erreur « Impossible d'obtenir le certificat de l'émetteur local » se produit lorsque le certificat présenté par le serveur ne peut pas être validé car le client ne parvient pas à localiser le certificat intermédiaire ou le certificat racine dans son magasin de confiance. Plusieurs facteurs peuvent conduire à cette erreur :
  4. Certificats intermédiaires manquants : o Si le serveur ne parvient pas à fournir la chaîne complète de certificats, le client risque de ne pas être en mesure de vérifier le certificat. Ceci est courant lorsque le serveur envoie uniquement le certificat de l'utilisateur final sans inclure les certificats intermédiaires.
  5. Magasin de certificats obsolètes ou incomplets : o Le magasin de certificats du client peut ne pas disposer des certificats intermédiaires ou racines requis. Cela peut se produire si le magasin de certificats du système est obsolète ou si un certificat nécessaire n'a pas été installé.
  6. Certificats auto-signés : o Si un certificat auto-signé est utilisé et que le client ne fait pas confiance à ce certificat, la connexion échouera avec cette erreur. Cela se voit souvent dans les environnements de développement où des certificats auto-signés sont utilisés à des fins de test.
  7. Configuration incorrecte : o Parfois, des erreurs de configuration sur le serveur, telles que des chemins incorrects vers les fichiers de certificat, peuvent amener le serveur à envoyer une chaîne de certificats incomplète ou incorrecte.
  8. Certificats expirés : o Si un certificat de la chaîne a expiré, le client peut ne pas réussir à valider la chaîne, conduisant à cette erreur. Dépannage et résolution de l'erreur Pour résoudre l'erreur « Impossible d'obtenir le certificat de l'émetteur local », plusieurs étapes peuvent être suivies en fonction de la cause première :
  9. Assurez-vous que la chaîne de certificats complète est envoyée : o Le serveur doit être configuré pour envoyer la chaîne complète de certificats, y compris le certificat de l'utilisateur final et tous les certificats intermédiaires. Cela se fait généralement en concaténant les certificats dans un seul fichier ou en s'assurant que le logiciel serveur est configuré pour référencer tous les certificats nécessaires.
  10. Mettre à jour le magasin de certificats du client : o Si le magasin de certificats du client est obsolète, il doit être mis à jour avec les derniers certificats. Sur la plupart des systèmes d'exploitation, cela peut être effectué via des gestionnaires de packages ou des mises à jour du système. Par exemple, sous Linux, la mise à jour du package ca-certificates peut actualiser le magasin de certificats.
  11. Ajouter manuellement les certificats manquants : o Si des certificats intermédiaires ou racines spécifiques sont manquants, ils peuvent être ajoutés manuellement au magasin de certificats du client. Cela se fait en obtenant les certificats manquants sur le site Web de l'autorité de certification et en les installant dans le magasin de confiance.
  12. Vérifiez les certificats expirés : o Utilisez des outils comme OpenSSL pour vérifier la validité des certificats dans la chaîne. Si des certificats ont expiré, ils doivent être renouvelés ou remplacés.
  13. Utilisez la configuration correcte du serveur : o Assurez-vous que le serveur est correctement configuré pour pointer vers les bons fichiers de certificat. Vérifiez la configuration SSL/TLS du serveur pour vérifier que les chemins de certificat sont correctement configurés et que les fichiers sont accessibles.
  14. Basculez vers une autorité de certification de confiance : o Si les certificats auto-signés sont à l'origine du problème, envisagez de passer à des certificats émis par une autorité de certification de confiance. De nombreux services proposent désormais des certificats SSL/TLS gratuits (tels que Let's Encrypt), qui peuvent être facilement installés et reconnus par la plupart des clients. Outils pour diagnostiquer l'erreur Plusieurs outils peuvent aider à diagnostiquer et à corriger l'erreur « Impossible d'obtenir le certificat de l'émetteur local » :
  15. OpenSSL : o OpenSSL est un outil largement utilisé pour gérer et dépanner les certificats SSL/TLS. Des commandes telles que openssl s_client -connect peuvent être utilisées pour inspecter la chaîne de certificats présentée par un serveur.
  16. Test SSL de SSL Labs : o Le test SSL de SSL Labs est un service en ligne qui analyse la configuration SSL/TLS d'un serveur et fournit des informations détaillées sur la chaîne de certificats et les problèmes potentiels.
  17. Curl avec l'option verbeuse : o L'outil de ligne de commande Curl, lorsqu'il est utilisé avec l'option -v, peut fournir des informations sur le processus de négociation SSL/TLS et identifier l'endroit où la vérification du certificat échoue.
  18. Outils de développement de navigateur : o Les navigateurs Web modernes sont dotés d'outils de développement comprenant des panneaux de sécurité. Ceux-ci peuvent être utilisés pour inspecter la chaîne de certificats de n’importe quel site Web et identifier les certificats manquants ou non fiables. Conclusion L'erreur « Impossible d'obtenir le certificat de l'émetteur local » est un problème courant qui survient lorsque vous travaillez avec SSL/TLS, en particulier dans les environnements où une communication sécurisée est essentielle. En comprenant la structure des chaînes de certificats et les facteurs pouvant conduire à cette erreur, vous pouvez diagnostiquer et résoudre efficacement le problème. Qu'il s'agisse de mettre à jour le magasin de certificats du client, de garantir l'envoi de la chaîne complète de certificats ou de passer à une autorité de certification de confiance, plusieurs stratégies sont disponibles pour atténuer ce problème et garantir une communication sécurisée et fiable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn