Lorsque j'essaie de me connecter à un serveur HTTPS avec git
, cela donne l'erreur suivante:
error: gnutls_handshake() failed: A TLS packet with unexpected length was received. while accessing ...
fatal: HTTP request failed
Je pense que certains paquets liés à gnutls_handshake
ont peut- être été cassés. Donc, je veux les réinstaller.
Quels paquets peuvent être liés à ces erreurs? Ou comment résoudre ce type d'erreur?
Réponses:
Vous avez la raison du problème, c'était un
gnutls
paquet. Cela fonctionne bizarre derrière un proxy. Maisopenssl
fonctionne bien même dans un réseau faible. Donc, la solution consiste à compilergit
avecopenssl
. Pour ce faire, exécutez les commandes suivantes:(N'oubliez pas de remplacer
1.7.9.5
par la version actuelle de git dans votre système.)Ensuite, éditez le
debian/control
fichier (exécutez la commandegksu gedit debian/control
:) et remplacez toutes les instances delibcurl4-gnutls-dev
aveclibcurl4-openssl-dev
.Puis construisez le paquet (si ça échoue lors du test, vous pouvez supprimer la ligne
TEST=test
du fichierdebian/rules
):Installer un nouveau paquet:
i386:
sudo dpkg -i ../git_1.7.9.5-1_i386.deb
x86_64:
sudo dpkg -i ../git_1.7.9.5-1_amd64.deb
Inspiré d'ici: https://github.com/xmendez/wfuzz/wiki/PyCurlSSLBug
la source
Pour moi, le certificat SSL a été auto-signé. Essayez ceci
git config --global http.sslVerify false
la source
git
, supprimant ainsi votre protection contre les attaques de type "man-in-the-middle".