Cuando intento conectarme a cualquier servidor HTTPS git
, aparece el siguiente error:
error: gnutls_handshake() failed: A TLS packet with unexpected length was received. while accessing ...
fatal: HTTP request failed
Creo que tal vez algunos paquetes relacionados gnutls_handshake
están rotos. Entonces, quiero reinstalarlos.
¿Qué paquetes pueden estar relacionados con estos errores? ¿O cómo soluciono este tipo de error?
Respuestas:
Tengo razón del problema, fue
gnutls
paquete. Funciona raro detrás de un proxy. Peroopenssl
está funcionando bien incluso en redes débiles. Así solución es que debemos compilargit
conopenssl
. Para hacer esto, ejecute los siguientes comandos:(Recuerde reemplazar
1.7.9.5
con la versión real de git en su sistema).Luego, edite el
debian/control
archivo (ejecute el comandogksu gedit debian/control
:) y reemplace todas las instancias delibcurl4-gnutls-dev
conlibcurl4-openssl-dev
.Luego compile el paquete (si falla en la prueba, puede eliminar la línea
TEST=test
del archivodebian/rules
):Instalar nuevo paquete:
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
Inspirado desde aquí: https://github.com/xmendez/wfuzz/wiki/PyCurlSSLBug
fuente
Para mí, terminó siendo que el certificado SSL fue autofirmado. Prueba esto
git config --global http.sslVerify false
fuente
git
, eliminando su protección contra ataques de hombre en el medio.