git - renovar - Agregar un certificado SSL autofirmado sin deshabilitar los firmados por la autoridad
instalar certificado ssl cpanel gratis (2)
Tengo un servidor corporativo de git trabajando a través de https usando un certificado autofirmado. El clon local contiene dos remotos: el origen que apunta a ese servidor y otro que apunta a github. Por defecto, tirando del origen falla:
$ git pull
fatal: unable to access ''https://[email protected]/git/fizzbuzz.git/'': SSL certificate problem: self signed certificate
El mando a distancia Github funciona bien.
Hay dos soluciones a menudo sugeridas:
git config http.sslVerify false
lo cual es una mala idea, y la sugerida en configurar Git para aceptar un certificado de servidor autofirmado en particular para un https remoto particular :
git config http.sslCAInfo <downloaded certificate>.pem
que arregla el tirar desde el origen, pero rompe el mando de github:
$ git pull github
fatal: unable to access ''https://github.com/user/fizzbuzz.git/'': SSL certificate problem: unable to get local issuer certificate
¿Cómo hacer que el tirar desde el servidor corporativo funcione sin romper el tirón desde github?
A partir de v2.5.0 de Git para Windows (git-for-windows.github.io), el archivo de certificado instalado se ha movido a "C: / Archivos de programa (x86) / Git / mingw32 / ssl / certs / ca-bundle. crt ". Tienes que agregar tus certificados en este archivo.
Si está utilizando git 1.8.5+ (agosto de 2013), puede especificar directivas http por url (!) .
En tu caso:
git config http."https://code.example.com/".sslVerify false
Eso cancelaría la verificación ssl, solo para la url code.example.com
, no para las otras.
O:
git config http."https://code.example.com/".sslCAInfo <downloaded certificate>.pem
La misma idea: sslCAInfo
apuntaría a <downloaded certificate>.pem
solo para code.example.com
urls de code.example.com
.
Es posible agregar su certificado en el almacén de certificados del sistema git, que, con git-for-windows , en C:/path/to/PortableGit-2.6.1-64-bit/usr/ssl/certs/ca-bundle.crt
.
Sin embargo, no es la mejor práctica, a menos que tenga que distribuir una distribución git con certificados internos.