Oto przewodnik dotyczący korzystania z cntlm
Co to jest cntlm?
cntlm to uwierzytelniający serwer proxy HTTP NTLM / NTLMv2
Pobiera adres serwera proxy i otwiera gniazdo nasłuchujące, przekazując każde żądanie do nadrzędnego serwera proxy
Dlaczego cntlm?
Używając cntlm umożliwiamy uruchamianie narzędzi takich jak choro, pip3, apt-get
z linii poleceń
pip3 install requests
choco install git
Główną zaletą cntlm jest ochrona hasłem.
Dzięki cntlm możesz używać skrótów haseł.
Więc NO PLAINTEXT PASSWORD w %HTTP_PROXY%
i %HTTPS_PROXY%
zmienne środowiskowe
Zainstaluj cntlm
Najnowszą wersję cntlm można pobrać ze strony sourceforge
Uwaga! Nazwa użytkownika i domena
Moja nazwa użytkownika to zezulinsky
Moja domena to local
Kiedy uruchamiam polecenia, których używam zezulinsky@local
Umieść swoją nazwę użytkownika podczas uruchamiania poleceń
Wygeneruj skrót hasła
Uruchom polecenie
cntlm -u zezulinsky@local -H
Wprowadź hasło:
Password:
W rezultacie otrzymujesz zaszyfrowane hasło:
PassLM AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Sprawdź, czy wygenerowany hash jest prawidłowy
Uruchom polecenie
cntlm -u zezulinsky@local -M http://google.com
Wprowadź hasło
Password:
Wynik wynikowy
Config profile 1/4... OK (HTTP code: 301)
----------------------------[ Profile 0 ]------
Auth NTLMv2
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
------------------------------------------------
Uwaga! sprawdź, czy hash PassNTLMv2 jest taki sam. Wynikowy skrót jest taki sam dla obu poleceń
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Zmień plik konfiguracyjny
Umieść wygenerowane skróty w cntlm.ini
pliku konfiguracyjnym
C:\Program Files (x86)\Cntlm\cntlm.ini
Oto jak cntlm.ini
powinien wyglądać Twój
Username zezulinsky
Domain local
PassLM AB7D42F42QQQQ407552C4BCA4AEBFB11
PassNT PE78D847E35FA7FA59710D1231AAAF99
PassNTLMv2 46738B2E607F9093296AA4C319C3A259
Proxy PROXYSERVER:8080
NoProxy localhost, 127.0.0.*
Listen 3128
Uwaga! nowa linia na końcu cntlm.ini
Ważne jest, aby dodać nową linię na końcu cntlm.ini
pliku konfiguracyjnego
Ustaw zmienne środowiskowe
HTTPS_PROXY=http://localhost:3128
HTTP_PROXY=http://localhost:3128
Sprawdź, czy działa cntlm
Zatrzymaj wszystkie procesy nazwane za cntlm.exe
pomocą eksploratora procesów
Uruchom polecenie
cntlm -u zezulinsky@local -H
Wynik wygląda jak
cygwin warning:
MS-DOS style path detected: C:\Program Files (x86)\Cntlm\cntlm.ini
Preferred POSIX equivalent is: /Cntlm/cntlm.ini
CYGWIN environment variable option "nodosfilewarning" turns off this warning.
Consult the user's guide for more details about POSIX paths:
http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
section: local, Username = 'zezulinsky'
section: local, Domain = 'local'
section: local, PassLM = 'AB7D42F42QQQQ407552C4BCA4AEBFB11'
section: local, PassNT = 'PE78D847E35FA7FA59710D1231AAAF99'
section: local, PassNTLMv2 = '46738B2E607F9093296AA4C319C3A259'
section: local, Proxy = 'PROXYSERVER:8080'
section: local, NoProxy = 'localhost, 10.*, 127.0.0.*
section: local, Listen = '3128'
Default config file opened successfully
cntlm: Proxy listening on 127.0.0.1:3128
Adding no-proxy for: 'localhost'
Adding no-proxy for: '10.*'
Adding no-proxy for: '127.0.0.*'
cntlm: Workstation name used: MYWORKSTATION
cntlm: Using following NTLM hashes: NTLMv2(1) NT(0) LM(0)
cntlm: PID 1234: Cntlm ready, staying in the foreground
Otwórz nowy cmd i uruchom polecenie:
pip3 install requests
Powinieneś mieć zainstalowany pakiet żądań pythona
Uruchom ponownie komputer
Gratulacje, teraz masz zainstalowany i skonfigurowany cntlm
http://user:passwords@my_proxy_server.com:80
administratora systemu lub zapytać o nie?