Name

ntlm_auth — Werkzeug für den externen Zugriff auf die NTLM-Authentifikationsfunktion von Winbind.

Synopsis

ntlm_auth [-d DebugEbene] [-l LogVerz] [-s <smb KonfigDatei>]

BESCHREIBUNG

Dieses Werkzeug ist Teil der Samba(7)-Suite.

ntlm_auth ist ein Hilfswerkzeug, das Benutzer mit einer NT/LM-Authentifikation identifiziert. Es gibt 0 zurück, falls der Benutzer erfolgreich identifiziert wird und 1, falls der Zugriff verweigert wurde. ntlm_auth verwendet winbind für den Zugriff auf die Benutzer- und Authentifikationsdaten für eine Domain. Dieses Werkzeug ist nur dafür gedacht, dass es von anderen Programmen benutzt wird (im Moment Squid).

FUNKTIONALE ANFORDERUNGEN

Damit viele dieser Befehle funktionieren, muss der Daemon winbindd(8) laufen.

Manche dieser Befehle benötigen auch einen Zugriff auf das Verzeichnis winbindd_privileged in $LOCKDIR. Dies sollte entweder durch Ausführen dieses Befehls als root oder durch Ermöglichen des Gruppenzugriffs auf das Verzeichnis winbindd_privileged geschehen. Aus Sicherheitsgründen sollte dieses Verzeichnis nicht für alle Benutzer zugreifbar sein.

OPTIONEN

--helper-protocol=PROTO

Funktioniert als stdio-basiertes Hilfsprogramm. Gültige Protokolle dafür sind:

squid-2.4-basic

Serverseitiges Hilfsprogramm für den Einsatz mit der einfachen Authentifikation von Squid 2.4 (Klartext).

squid-2.5-basic

Serverseitiges Hilfsprogramm für den Einsatz mit der einfachen Authentifikation von Squid 2.5 (Klartext).

squid-2.5-ntlmssp

Serverseitiges Hilfsprogramm für den Einsatz mit der NTLMSSP-Authentifikation von Squid 2.5.

Benötigt Zugriff auf das Verzeichnis winbindd_privileged in $LOCKDIR. Das verwendete Protokoll wird hier beschrieben: http://devel.squid-cache.org/ntlm/squid_helper_protocol.html

ntlmssp-client-1

Clientseitiges Hilfsprogramm für den Einsatz mit beliebigen externen Programmen, die Sambas Fähigkeit zur NTLMSSP-Authentifikation nutzen möchten.

Dieses Hilfsprogramm ist ein Client und darf daher von allen Benutzern ausgeführt werden. Das verwendete Protokoll ist im Prinzip die Umkehrung des vorherigen Protokolls.

gss-spnego

Serverseitiges Hilfsprogramm, das GSS-SPNEGO implementiert. Dabei wird ein Protokoll benutzt, das fast identisch ist mit squid-2.5-ntlmssp, aber einige subtile Unterschiede dazu aufweist, die im Moment außerhalb der Quellen noch undokumentiert sind.

Benötigt Zugriff auf das Verzeichnis winbindd_privileged in $LOCKDIR.

gss-spnego-client

Clientseitiges Hilfsprogramm, das GSS-SPNEGO implementiert. Dabei wird ebenfalls ein ähnliches Protokoll wie bei den obigen Hilfsprogrammen verwendet, was aber im Moment nicht dokumentiert ist.

--username=USERNAME

Gibt den Namen des zu identifizierenden Benutzers an.

--domain=DOMAIN

Gibt die Domäne des zu identifizierenden Benutzers an.

--workstation=WORKSTATION

Gibt die Workstation an, auf der sich der Benutzer identifiziert hat.

--challenge=STRING

NTLM-Aufgabe (in HEXADEZIMAL-Form).

--lm-response=RESPONSE

LM-Antwort zur Aufgabe (in HEXADEZIMAL-Form).

--nt-response=RESPONSE

NT- oder NTLMv2-Antwort zur Aufgabe (in HEXADEZIMAL-Form).

--password=PASSWORD

Passwort des Benutzers in Klartext.

Wird wenn nötig abgefragt, falls es nicht auf der Kommandozeile angegeben wird.

--request-lm-key

Empfängt LM-Sitzungsschlüssel.

--request-nt-key

NT-Abfrageschlüssel

--diagnostics

Führt eine Diagnose der Authentifikationskette durch. Verwendet das Passwort von --password oder fragt eines ab.

--require-membership-of={SID|Name}

Verlangt, dass der Benutzer Mitglied der angegebenen Gruppe (entweder Name oder SID) ist, damit die Authentifikation klappt.

-V

Gibt die Versionsnummer des Programms aus.

-s <Konfigurations-Datei>

Die angegebene Datei enthält die Konfigurationdetails, die der Server benötigt. Die Information in dieser Datei ist zum Teil Server-spezifisch, z.B. welche printcap-Datei benutzt werden soll, enthält aber auch Beschreibungen aller Dienste, die der Server anbieten soll. Siehe smb.conf für weitere Informationen. Der Standardname der Konfigurationsdatei wird beim Kompilieren bestimmt.

-d|--debug=Debug-Ebene

Debug-Ebene ist ein Integer von 0 bis 10. Falls dieser Parameter nicht angegeben wird, ist der Vorgabewert dafür Null.

Je höher der Wert ist, desto mehr Details über die Serveraktivität werden in den Log-Dateien abgespeichert. Auf der Ebene 0 werden nur kritische Fehler und ernstzunehmende Warnungen geloggt. Ebene 1 ist eine vernünftige Ebene beim alltäglichen Betrieb - dabei wird eine kleine Informationsmenge über die ausgeführten Operationen erzeugt.

Die Ebenen höher als 1 erzeugen beachtliche Mengen von Logdaten, und sollten nur bei der Suche nach Problemen verwendet werden. Die Ebenen größer als 3 sind nur für Entwickler gedacht und erzeugen RIESIGE Mengen an Logdaten, von denen die meisten extrem kryptisch sind.

Beachten Sie, dass durch die Angabe dieses Parameters an dieser Stelle der Parameter log level in der Datei smb.conf überschrieben wird.

-l|--logfile=logbasename

Dateiname für Log-/Debug-Dateien. Die Dateierweiterung ".client" wird angefügt. Die Log-Datei wird vom Client niemals entfernt.

-h|--help

Gibt eine Zusammenfassung der Kommandozeilenoptionen aus.

BEISPIELEINSTELLUNG

Um ntlm_auth für den Einsatz mit Squid 2.5 sowohl mit einfacher wie auch mit NTLMSSP-Authentifikation einzurichten, sollte folgendes in die Datei squid.conf platziert werden:

auth_param ntlm program ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param basic program ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours

Anmerkung

Bei diesem Beispiel wird angenommen, dass ntlm_auth in Ihrem Pfad installiert wurde und dass die Gruppenrechte von winbindd_privileged so sind, wie oben beschrieben wurde.

Um ntlm_auth für den Einsatz mit Squid 2.5 zusätzlich zu obigem Beispiel mit einer Gruppenbeschränkung einzurichten, sollte folgendes zur Datei squid.conf hinzugefügt werden:

auth_param ntlm program ntlm_auth --helper-protocol=squid-2.5-ntlmssp --require-membership-of='WORKGROUP\Domain Users'
auth_param basic program ntlm_auth --helper-protocol=squid-2.5-basic --require-membership-of='WORKGROUP\Domain Users'

TROUBLESHOOTING

Sollten Sie im Internet Explorer unter MS Windows 9X oder Millenium Edition Probleme bei der Authentifizierung mittels des NTLMSSP-Authentifikationshilfsprogramms ntlm_auth haben (--helper-protocol=squid-2.5-ntlmssp), dann lesen Sie bitte den Artikel #239869 in der Microsoft Knowledge Base und befolgen Sie die dortigen Anweisungen.

VERSION

Diese Manpage ist korrekt für die Version 3.0 der Samba-Suite.

AUTOR

Die originale Samba-Software und die zugehörigen Werkzeuge wurden von Andrew Tridgell geschrieben. Samba wird nun vom Samba-Team als ein Open-Source-Projekt entwickelt, ähnlich wie der Linux-Kernel.

Die ntlm_auth-Manpage wurde von Jelmer Vernooij und Andrew Bartlett geschrieben.