Klient GitHub Windows za proxy
Próbuję uruchomić klienta GitHub Dla Windows. Jestem na korporacyjnym komputerze Win 7 x64 za korporacyjnym proxy i firewallem. Śledząc różne inne posty i eksperymentując z wieloma kombinacjami zmiennych środowiskowych i zmiennych konfiguracyjnych znalazłem jedyny sposób, aby uzyskać klonowanie i aktualizacje push do pracy, to użycie zmiennej środowiskowej HTTPS_PROXY, w tym mój pełny identyfikator użytkownika domeny korporacyjnej i hasło.
Jest to niedopuszczalne z punktu widzenia bezpieczeństwa punkt widzenia. Jest jakiś inny sposób, żeby to zadziałało?
Uwagi dodatkowe:
:
- Dodaj zmienną środowiskową o nazwie
HTTPS_PROXY
z wartościąhttp://[domain]\[userid]:[password]@someproxy.mycorp.com:8080
Następująca praca Nie :
- pominięcie identyfikatora użytkownika i hasła ze zmiennej
HTTPS_PROXY
- użycie zmiennej środowiskowej o nazwie
HTTP_PROXY
(noS
) - dodanie zmiennej
http.proxy
do globalnego pliku konfiguracyjnego (.gitconfig
) - dodawanie
https.proxy
varaible do globalnego pliku konfiguracyjnego
We wszystkich przypadkach Klient GitHub nadal nie rozpoznaje serwera proxy: zawartości pliku TheLog.txt
zawsze pokazuje następujące przy starcie:
[time]|INFO|thread:4|GitHub.Helpers.StartupLogger|Proxy information: (None)
[time]|INFO|thread:4|GitHub.Helpers.StartupLogger|Couldn't fetch creds for proxy
I następuje wyjście kilku nieudanych prób uwierzytelniania przez serwer proxy, z których wszystkie wskazują "brak danych uwierzytelniających."
9 answers
Dodaj te wpisy do swojego".plik gitconfig w katalogu użytkownika (przejdź do %USERPROFILE%):
[http]
proxy = http://<proxy address>:<proxy port>
[https]
proxy = https://<proxy address>:<proxy port>
A jeśli nie chcesz przechowywać hasła w postaci zwykłego tekstu, użyłbym lokalnego spedytora proxy, takiego jak CNTLM, który pozwala kierować cały ruch przez niego i może przechowywać hasła zahaszowane.
W przeciwieństwie do oryginalnego pytania, Jeśli nie obchodzi cię, czy Twoje hasło jest w zwykłym tekście dodaj te:
[http]
proxy = http://<username>:<password>@<proxy address>:<proxy port>
[https]
proxy = https://<username>:<password>@<proxy address>:<proxy port>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-26 21:55:28
Próbowałem wszystkiego powyżej - i nie udało mi się, Jedyne co mi pomogło to CNTLM - http://cntlm.sourceforge.net/.
Zainstaluj go i uruchom cntlm-H, a następnie Uwierzytelnij do proxy corp, edytuj cntlm.plik ini z wyjściem cntlm, uruchom ponownie usługę windows. Aktualizacja .gitconfig with:
[https] proxy = localhost:3128
[http] proxy = localhost:3128
Teraz cntlm zrobi wszystkie uwierzytelnianie, a Ty będziesz mógł używać GitHub (i Dropbox, btw) za proxy corp. Przynajmniej do następnej zmiany hasła:) (niż cntlm-H stuff again)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-12-10 07:36:29
Udało mi się stworzyć GitHub Shell do współpracy z naszym korporacyjnym proxy. Uruchamiam GitHub Shell i wykonuję następujące polecenie:
export http_proxy=http://<username>:<password>@<corporate proxy>:3128
Bardzo chciałbym, aby GUI też działało. Ale nie chcę ustawiać globalnej zmiennej środowiskowej Windows, która zawiera moje firmowe informacje poświadczające.
O dziwo Klient GUI GitHub jest w stanie połączyć się z GitHub w celu uwierzytelnienia użytkownika, ale jedynym problemem jest klonowanie, ciągnięcie i pchanie projektów z I do Githuba. Wygląda na to, że problem tkwi w implementacji Gita. Udało mi się skonfigurować git tak, aby działał przez nasz serwer proxy bez umieszczania moich danych uwierzytelniających w globalnych Ustawieniach git. Ale to działało tylko w Git Shell.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-12 11:51:43
Jeśli używasz GitHub Dla Windows w firmie, są duże szanse, że jesteś za wielkim złym firmowym firewallem/Proxy. GitHub dla Windows nie ma jeszcze parametrów proxy w interfejsie GUI dla opcji ustawiania.
Aby skonfigurować GitHub Dla Windows do korzystania z firmowego serwera proxy, edytuj .plik gitconfig zazwyczaj znajduje się na C:\Users\.gitconfig lub C:\Documents & Ustawienia\.gitconfig
Zamknij GitHub dla Windows; In .gitconfig, wystarczy dodać
[https] plotdata = proxy.yourcompany. com:port
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-04 11:59:03
Również natknąłem się na ten problem i próbowałem się do niego trochę zagłębić (zdemontowałem klienta).
Fragment kodu, który generuje komunikaty dziennika, które widzimy, jest następujący:
private static void LogProxyServerConfiguration()
{
WebProxy defaultProxy = WebProxy.GetDefaultProxy();
string str = defaultProxy.Address != (Uri)null ? defaultProxy.Address.ToString() : "(None)";
StartupLogger.log.Info((IFormatProvider)CultureInfo.InvariantCulture, "Proxy information: {0}", str);
try
{
if (defaultProxy.Credentials == null)
{
StartupLogger.log.Info((IFormatProvider)CultureInfo.InvariantCulture, "Couldn't fetch creds for proxy", new object[0]);
}
else
{
NetworkCredential credential = defaultProxy.Credentials.GetCredential(GitHubClient.GitHubDotComUri, "Basic");
StartupLogger.log.Info((IFormatProvider)CultureInfo.InvariantCulture, "Proxy is authenticated: {0}", credential != null && !string.IsNullOrWhiteSpace(credential.UserName));
}
}
catch (Exception ex)
{
StartupLogger.log.InfoException("Couldn't fetch creds for proxy", ex);
}
}
Więc ten blok rejestruje tylko informacje proxy, które są ustawione w IE. Komunikat dziennika wydaje się nie mieć wpływu na to, co skonfigurowaliśmy w plikach konfiguracyjnych lub zmiennych środowiskowych.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-06-13 15:49:59
Nie wiem jak twój firewall, ale mój kampus używa proxy
Używasz jakiegoś Git gui? EDIT : właśnie zauważyłem, że używasz klienta github dla windows
Używam tortoisegit i bardzo łatwo jest ustawić proxy. Wystarczy kliknąć prawym przyciskiem myszy w dowolnym miejscu, tortoisegit>sieć, włączyć serwer proxy i ustawić adres serwera, nazwę użytkownika i hasło. done
Z tego, co pamiętam, tortoisegit będzie działał również po wyjęciu z pudełka z github.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-22 17:51:50
Oto sposób na ustawienie proxy w github
git config --global http.proxy http://<username>:<pass>@<ip>:<port>
git config --global https.proxy http://<username>:<pass>@<ip>:<port>
Tutaj w mojej uczelni nie mamy nazwy użytkownika i hasła, więc jeśli nasza uczelnia ip: 172.16.10.10 i port to 8080
git config --global http.proxy http://172.16.10.10:8080
git config --global https.proxy http://172.16.10.10:8080
P. s - > polecam użycie tej metody do Ustawienia proxy, ponieważ wszystko się ułoży, jak dowiesz się dalej
Źródło
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-28 09:06:03
Uznałem Ten blog za przydatny. Opisuje ntlmapy proxy. Prawdopodobnie jest mniej bezpieczny, ale działał sprawnie. Nie mogłem uruchomić cntlm.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-04 18:32:42
Dla nas rozwiązanie wiązało się z dwiema różnymi rzeczami. Po pierwsze, jak opisano w odpowiedzi Soggera, należy dodać wpisy do pliku .gitconfig
, znajdującego się w %USERPROFILE%
.
[http]
proxy = http://<proxy address>:<proxy port>
[https]
proxy = https://<proxy address>:<proxy port>
Po drugie (i to był brakujący element dla nas), musisz skonfigurować wyjątek na serwerze proxy, aby umożliwić nieautentyfikowane proxy traffic to *.github.com
Problem polega nie tyle na proxy, ale na uwierzytelnianie . Pominięcie wymogu uwierzytelniania pozwala potrzebnej komunikacji klonować i pracować z projektami za pomocą klienta GitHub desktop.
Należy również zauważyć, że to podejście nie wymagało przechowywania poświadczeń proxy w pliku .gitconfig
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-09-23 19:22:54