Ich habe gerade cntlm auf meinem neuen Ubuntu 12.04 installiert. In der Konfigurationsdatei etc/cntlm.conf
habe ich meine Netzwerkkonfiguration wie folgt eingefügt:
Username: myUsername
Domain : myDomain
Password: myPassword
Proxy : myProxy:8080
Listen: 3128
Wenn ich aber 127.0.0.1:3128
meinen Browser als Netzwerkproxy einstelle und eine Website besuchen möchte, erscheint das Popup-Menü von cntlm und verlangt die Eingabe von Benutzername und Passwort.
Was ist die Lösung für dieses Problem? Wie kann ich meinen Netzwerkdomänennamen erhalten? Ich glaube, mein Domänenname oder andere Angaben sind möglicherweise falsch.
Antwort1
1) Installieren Sie CNTLM im Standardverzeichnis (unter Windows C:\Programme (x86)\cntlm\ ).
2) Ausführencmd.exe
3) Typ:cd "C:\Programme (x86)\cntlm\"
4) Typ:cntlm.exe -H -d Ihre_Domäne -u Ihr_Benutzername
Sie werden nach Ihrem Passwort gefragt. Geben Sie Ihr Passwort ein und cntlm gibt Ihnen einige Hashes. Etwa so:
c:\Program Files (x86)\Cntlm>cntlm -H -d your_domain -u your_username
Password:
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassNTLMv2 2A0B7C2457FB7DD8DA4EB737C4FA224F
Jetzt haben Sie ein gehashtes Passwort. Speichern Sie es in einem Texteditor.
5) Typ:cntlm -Mhttp://www.google.com
Geben Sie Ihr Passwort erneut ein. Sie erhalten dann so etwas wie
c:\Program Files (x86)\Cntlm>cntlm -M http://www.google.com
Password:
Config profile 1/4... Credentials rejected
Config profile 2/4... OK (HTTP code: 302)
----------------------------[ Profile 1 ]------
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
------------------------------------------------
Jetzt sehen Sie, dass Profil 2 erfolgreich ist. Weil für Profil 2 OK angezeigt wird. Auf Ihrem System kann es anders sein.
Der Trick ist,
- Wenn die Authentifizierung NT ist, müssen Sie nur PassNT verwenden
- Wenn die Authentifizierung LM ist, dürfen Sie nur PassLM verwenden
- Wenn die Authentifizierung NTLM ist, müssen Sie sowohl PassLM als auch PassNT verwenden
- Wenn die Authentifizierung NTLMv2 ist, dürfen Sie nur PassNTLMv2 verwenden
Jetzt haben wir alles, was wir wollen. Für meine Konfiguration sagt Auth NTLM, also werde ich sowohl PassNT als auch PassLM in der Konfigurationsdatei cntlm.ini verwenden.
Dies ist eine Beispielkonfigurationsdatei gemäß den gegebenen Antworten:
#
# Cntlm Authentication Proxy Configuration File
#
Username yourusername
Domain yourdomain
Auth NTLM
PassNT 6E9F120B83EEA0E875CE8E6F9730EC9A
PassLM 4E9C185900C7CF0B6FFCB2044F81920C
Workstation yourhostname.yourdomain
# Most probably proxy.yourdomain:8080
Proxy yourProxyIP:yourProxyPort
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*
Listen 3132
Gateway yes
Jetzt können Sie die IP-Adresse und den Port 3132 Ihres Computers als Proxy verwenden.
Hinweis 1: Verwenden Sie als Benutzernamen nicht „Domäne\Benutzername“. Hinweis 2: Wenn ja, vergessen Sie nicht, die Erweiterung „.intra“ nach Ihrer Domäne zu verwenden (IhreDomäne.intra).
Antwort2
Ersetzen Sie das Feld in der cntlm.conf
Datei unbedingt Password
durch eines der folgenden Felder:
PassLM
(wenn Sie LM-Hash verwenden)PassNT
(wenn Sie NT-Hash verwenden)PassNTLMv2
(wenn Sie NTLMv2-Hash verwenden)
Dann sollten Sie nicht das Klartext-Passwort schreiben, sondern den entsprechenden Hash, der berechnet werden kann mitcntlm -H -d <domain> -u <user>
Antwort3
Ich hatte das gleiche Problem.
Versuchen Sie zunächst diesen Befehl:
sudo cntlm -M http://www.google.com
Sehen Sie sich die Ergebnisse an. Wenn die einzige MethodeOKIstAuth = LM, dann müssen Sie die Konfigurationsdatei ändern (entkommentieren Sie diese Zeilen):
Auth LM
Flags 0x06820000
Wenn Sie nicht wissen, wie Sie die Konfigurationsdatei ändern, gehen Sie wie folgt vor:
gksudo gedit /etc/cntlm.conf
Denken Sie daran, CNTLM neu zu starten:
sudo service cntlm restart