web-dev-qa-db-fra.com

Git - "Problème de certificat SSL: certificat auto-signé dans la chaîne de certificats"

Je viens de commencer à avoir cette erreur en essayant de pousser mes modifications. Je ne sais pas ce qui a changé sur mon système et il ne devrait pas y avoir de certificats auto-signés à cet égard. 

Git a été désinstallé et réinstallé. Git semble utiliser le bon paquet: http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt

Désactiver la vérification de certificat n'est pas une option.

Comment puis-je résoudre ce problème?

L'objectif est de transmettre mon code à GitHub, mais comment un certificat auto-signé est-il entré dans cette connexion et comment puis-je le sortir?

3
SCote

J'ai découvert que l'antivirus de Kaspersky avait commencé à utiliser des certificats auto-signés dans sa fonction "Web Anti-Virus", ce qui provoquait une plainte de Git.

Kaspersky Web Anti-Virus doit être désactivé pour que vous puissiez utiliser la télécommande de quelque manière que ce soit sur HTTP (Push, fetch, fetch, etc.). Vous devez également désactiver ce référentiel Git dans la liste d'exclusions.

4
SCote

Premièrement, vous avez la possibilité de passer à ssh, à condition que vous ayez généré une clé SSH privée simple (pas de phrase secrète pour le moment, juste pour les tests) et publier votre clé SSH publique sur votre compte :

git remote set-url [email protected]:me/myrepo.git

Mais en ce qui concerne votre problème actuel, essayez d’appuyer en premier après avoir défini un chemin simplifié :

set G=c:\path\to\latest\git
set PATH=%G%\bin;%G%\usr\bin;%G%\mingw64\bin
set PATH=%PATH%;C:\windows\system32;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0\

En utilisant le plus petit PATH (pour le test), vous vous assurez que seul votre Git est utilisé et qu'il devrait pouvoir transmettre à GitHub.

0
VonC

J'ai eu exactement le même problème, mais j'ai utilisé une solution différente. Plutôt que de désactiver l’antivirus Web ou de s’appuyer sur des exclusions, j’ai ajouté le certificat Kaspersky à mon compte Git for Windows Trust.

Trouver le certificat Kaspersky n’était pas si simple. Dans ma version Kaspersky, il a été enterré à l'emplacement ci-dessous:

Paramètres> Autres> Réseau> Analyse des connexions cryptées - Paramètres avancés> Installer le certificat> Afficher le certificat> Détails> Copier dans fichier> X.509 codé en base 64 (.cer)

Une fois que vous avez le certificat, vous devez localiser votre magasin de confiance Git, puis l’ajouter. Référence ici pour plus de détails.