CNTLM – NTLM Proxy Authentifikation

Das klassische Problem hinter einer NTLM Proxy ist, dass viele Clients wie Dropbox, FileZilla oder PuTTY manchmal sogar iOS und Android die Authentifikation nicht unterstützen.
Vielen bleibt nichts anderes übrig, als weiter den eigenen Mobilfunkdatentarif zu belasten.

Das Programm CNTLM schafft hierbei die Lösung!
CNTLM „übersetzt“ hierbei die NTLM Proxy in eine normale lokale Proxy ohne Authentifikation. Somit ist es möglich, Dropbox hinter einer solchen Proxy zu betrieben. FileZilla oder PuTTY verwenden andere Ports wie zum Beispiel Port 21 und 22. Diese werden je nach Konfiguration vom NTLM Proxy Server blockiert. Hierbei bleibt einem leider nur noch der Griff zum Mobilfunk oder ein Umweg über Tor. Wie dies umzusetzen ist, folgt demnächst.

Werbung

Download

Unter http://sourceforge.net/projects/cntlm/ kann CNTLM für Windows, OS X und Linux heruntergeladen werden.

Für Linux, in meinem Fall Debian/Ubuntu ist CNTLM ebenfalls über Paketquellen verfügbar.

Konfiguration

Windows

Hierbei benötigen wir die Setup. (setup.exe)
Nach der Installation muss die Datei cntlm.ini bearbeitet werden. Diese befindet sich im Ordner der bei der Installation angegeben wurde. Wurde dieser Ordner nicht verändert, befindet sich die Datei entweder im Ordner
C:\Programme (x86)\Cntlm\“ auf 64Bit Systemen oder im Ordner
C:\Programme\Cntlm\“ auf 32Bit Systemen.

Um die Datei zu bearbeiten, muss der Editor mir Administratorrechten gestartet werden.

Windows Vista, 7

win7 admin editor
„Als Administrator ausführen“ Windows 7

win8 admin editor

„Als Administrator ausführen“ Windows 8

 

 

Wurde dieser mit Administratorrechten gestartet, kann nun die CNTLM Konfigurationsdatei geöffnet werden. Was hierbei eingestellt werden muss, ist weiter unten zu lesen.

Linux und OS X

Unter Linux sowie OS X befinden sich die Einstellungsdateien, je nach /usr/local/etc/cntlm.conf oder in /etc/cntlm.conf. Beachte hierbei bitte, dass vor allem unter /etc/ zur Bearbeitung der Datei root Rechte benötigt werden.

Konfiguration

Die Konfigurationsdatei kann beliebig der eigenen Bedürfnisse angepasst werden. Im allgemeinen sieht die Konfigurationsdatei ähnlich dieser hier aus:

#
# Cntlm Authentication Proxy Configuration
#

Username Benutzername
Domain domain.tld
Password password
# NOTE: Use plaintext password only at your own risk
# Use hashes instead. You can use a "cntlm -M" and "cntlm -H"
# command sequence to get the right config for your environment.
# See cntlm man page
# Example secure config shown below.
# PassLM 1AD35398BE6565DDB5C4EF70C0593492
# PassNT 77B9081511704EE852F94227CF48A793
### Only for user 'testuser', domain 'corp-uk'
# Auth NTLMv2
# PassNTLMv2 D5816E9C645C37C80B53367D9C07BACB

# Specify the netbios hostname cntlm will send to the parent
# proxies. Normally the value is auto-guessed.
#
Workstation hostname

# List of parent proxies to use. More proxies can be defined
# one per line in format <proxy_ip>:<proxy_port>
#
Proxy 10.0.10.11:8080

# List addresses you do not want to pass to parent proxies
# * and ? wildcards can be used
#
NoProxy localhost, 127.0.0.*, 10.*, 192.168.*

# Specify the port cntlm will listen on
# You can bind cntlm to specific interface by specifying
# the appropriate IP address also in format <local_ip>:<local_port>
# Cntlm listens on 127.0.0.1:3128 by default
#
Listen 3128

# If you wish to use the SOCKS5 proxy feature as well, uncomment
# the following option. It can be used several times
# to have SOCKS5 on more than one port or on different network
# interfaces (specify explicit source address for that).
#
# WARNING: The service accepts all requests, unless you use
# SOCKS5User and make authentication mandatory. SOCKS5User
# can be used repeatedly for a whole bunch of individual accounts.
#
#SOCKS5Proxy 8010
#SOCKS5User dave:password

# Use -M first to detect the best NTLM settings for your proxy.
# Default is to use the only secure hash, NTLMv2, but it is not
# as available as the older stuff.
#
# This example is the most universal setup known to man, but it
# uses the weakest hash ever. I won't have it's usage on my
# conscience. Really, try -M first.
#
#Auth LM
#Flags 0x06820000

# Enable to allow access from other computers
#
#Gateway yes

# Useful in Gateway mode to allow/restrict certain IPs
# Specifiy individual IPs or subnets one rule per line.
#
Allow 127.0.0.1/8
#Allow 192.168.0.0/16
Deny 0/0

# GFI WebMonitor-handling plugin parameters, disabled by default
#
#ISAScannerSize 1024
#ISAScannerAgent Wget/
#ISAScannerAgent APT-HTTP/
#ISAScannerAgent Yum/

# Headers which should be replaced if present in the request
#
#Header User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows 98)

# Tunnels mapping local port to a machine behind the proxy.
# The format is <local_port>:<remote_host>:<remote_port>
#
#Tunnel 11443:remote.com:443

Richtig angepasst, ist es nun möglich, Dropbox, Tor und andere Programme mittels einer HTTP/HTTPS Proxy in der Schule, Uni oder am Arbeitsplatz zu nutzen.

Falls zum Beispiel SSH Zugriff oder sogar Spiele weitergeleitet werden sollen, sollte Tor genutzt werden. Hierbei ist es sogar möglich, UDP Pakete (Meist bei Spielen wie Minecraft oder Steam Spiele) über HTTP (TCP) Verbindungen weiterleiten zu lassen. Es muss aber beachtet werden, dass es hierbei zu einem hohen Ping kommen kann, da Tor die Verbindungen über die ganze Welt verteilt.

Einstellungen

Für diesen Zweck, habe ich eine Assistenzseite zum Einrichten der Konfigurationsdatei erstellt. Damit ist es möglich, vorgefertigte Profile abzurufen und zu vervollständigen.

http://blog.unterhaltungsbox.com/content/cntlm.php

Um den Dienst zu erweitern, hinterlasse als Kommentar bitte den Namen des Zugriffspunktes (z.B. HTL Mödling), evt. eine Beschreibung, Land, Proxy-Adressen (10.0.0.1:8080, 10.0.0.2:8080, …), NoProxy Adressen (Domains, IPs, wo die Proxy nicht aktiv sein soll), Domäne für die Anmeldung (htl-md.schule, work.tld) optional auch ob für die Verbindungsherstellung eine VPN Verbindung hergestellt werden muss und ob Verbindungen zu Tor blockiert werden.
Vielen Dank. 😉

Ich hoffe, dass ich euch helfen konnte, Blockaden der IT Administration bzw. die Einschränkungen vieler Programme die NTLM nicht unterstützen, zu umgehen.

Wie immer der rechtliche Teil des Artikels: Ich hafte für keinerlei Beschädigungen am System oder Gerät, die im Zuge der Verwendung dieser Erklärung auftreten können.

Author: Thomas2500

Rate this post

Kommentar verfassen