El cliente de Windows GitHub detrás del proxy



github-for-windows (6)

Estoy tratando de hacer funcionar el cliente de GitHub para Windows. Estoy en una computadora corporativa Win 7 x64 detrás de un proxy corporativo y un firewall. Después de varias otras publicaciones y de experimentar con múltiples combinaciones de variables de entorno y variables de configuración, he encontrado que la única forma de hacer que clonen y actualicen las actualizaciones es mediante el uso de la variable de entorno HTTPS_PROXY, incluida mi identificación de usuario y contraseña de dominio corporativo completo.

Esto es inaceptable desde el punto de vista de la seguridad. ¿Hay alguna otra forma de hacer que esto funcione?

Notas adicionales:

Lo siguiente funcionó:

  • Agregue una variable de entorno llamada HTTPS_PROXY con el valor http://[domain]\[userid]:[password]@someproxy.mycorp.com:8080

Lo siguiente no funcionó:

  • Omitir identificación de usuario y contraseña de la variable HTTPS_PROXY
  • Usar una variable de entorno llamada HTTP_PROXY (no S )
  • Agregar la variable http.proxy al archivo de configuración global ( .gitconfig )
  • Agregar el https.proxy varaible al archivo de configuración global

En todos los casos, el cliente de GitHub aún no reconoce el proxy: el contenido del archivo TheLog.txt siempre muestra lo siguiente al inicio:

[time]|INFO|thread:4|GitHub.Helpers.StartupLogger|Proxy information: (None)
[time]|INFO|thread:4|GitHub.Helpers.StartupLogger|Couldn't fetch creds for proxy

Y es seguido por el resultado de varios intentos fallidos de autenticación del proxy, todos los cuales indican "Faltan las credenciales".

https://ffff65535.com


Agregue estas entradas a su archivo '.gitconfig' en su directorio de usuario (vaya a% USERPROFILE%):

[http]
    proxy = http://<proxy address>:<proxy port>

[https]
    proxy = https://<proxy address>:<proxy port>

Y si no quiere almacenar su contraseña en texto plano, usaría un reenviador de proxy local como CNTLM que le permite dirigir todo el tráfico a través de él y puede almacenar las contraseñas hash.

A diferencia de la pregunta original, si no le importa si su contraseña está en texto sin formato, agregue estos:

[http]
    proxy = http://<username>:<password>@<proxy address>:<proxy port>

[https]
    proxy = https://<username>:<password>@<proxy address>:<proxy port>

Aquí está la forma de establecer el proxy en github

git config --global http.proxy http://<username>:<pass>@<ip>:<port>
git config --global https.proxy http://<username>:<pass>@<ip>:<port>

Aquí en mi universidad no tenemos nombre de usuario y contraseña, así que si nuestra IP de la universidad es 172.16.10.10 y el puerto es 8080

git config --global http.proxy http://172.16.10.10:8080
git config --global https.proxy http://172.16.10.10:8080

PD -> Recomiendo usar este método para configurar el proxy ya que las cosas se pondrán en su lugar ya que aprenderás más
Source


Intenté todo lo anterior - y no tuve éxito, lo único que me ayudó fue CNTLM - http://cntlm.sourceforge.net/ .

Instálelo y ejecute cntlm -H, luego de autenticar al proxy corp, edite el archivo cntlm.ini con el resultado de cntlm, reinicie el servicio de Windows. Actualiza .gitconfig con:

[https] proxy = localhost:3128
[http] proxy = localhost:3128

Ahora cntlm hará toda la autenticación, y usted podrá usar GitHub (y Dropbox, btw) detrás del proxy corp. Al menos hasta la próxima contraseña cambiar :) (que hacer cntlm -H cosas de nuevo)


No sé acerca de su firewall, pero mi proxy de uso del campus

usas cualquier git gui? EDITAR : acaba de notar que está utilizando el cliente github para Windows

Estoy usando tortoisegit y es muy fácil configurar el proxy. Simplemente haga clic derecho en cualquier lugar, escriba> red, habilite el servidor proxy y configure la dirección del servidor, el nombre de usuario y la contraseña. hecho

por lo que recuerdo, tortoisegit también funcionará de fábrica con github.


Pude hacer que GitHub Shell trabajara con nuestro proxy corporativo. Estoy comenzando GitHub Shell y ejecuto el siguiente comando:

export http_proxy=http://<username>:<password>@<corporate proxy>:3128

Realmente me gustaría hacer que la GUI también funcione. Pero no quiero configurar la variable de entorno global de Windows que contiene mi información de credenciales corporativas.

Extrañamente, GitHub GUI Client puede conectarse a GitHub para la autenticación de usuarios, pero el único problema es clonar, arrastrar y empujar proyectos desde y hacia GitHub. Parece que el problema es con la implementación de git. Pude configurar git para ejecutar a través de nuestro proxy sin poner mis credenciales en la configuración global de git y estaba pidiendo mis credenciales al realizar solicitudes de extracción o de inserción. Pero eso solo funcionaba en Git Shell.


Si está utilizando GitHub para Windows en una empresa, es muy probable que esté detrás de un gran firewall / proxy corporativo. GitHub para Windows aún no tiene los parámetros de proxy en su GUI para configurar las opciones.

Para configurar GitHub para que Windows use su proxy corporativo, edite el archivo .gitconfig que se encuentra típicamente en C: \ Users \ .gitconfig o C: \ Documents & Settings \ .gitconfig

Cierre GitHub para Windows; En .gitconfig, solo agrega

[https] proxy = proxy.yourcompany.com:port





github-for-windows