Kerberos Tickets bei Domänenanmeldung

german

#1

Hallo,

ich habe einen Webserver (Apache mit mod_auth_kerb auf Debian Etch) als Member-Server in ein bestehendes UCS-System eingebunden. Da mod_auth_kerb unbedingt HTTP/… als Service Principal nutzen möchte, hab ich dieses manuell per kadmin erzeugt und in einem keytab auf den Webserver kopiert.
Single-Sign-On funktioniert auch prima von einem per Kerberos an einem Ubuntu-Klienten angemeldeten Nutzer. Der Webserver, Firefox und das UCS-KDC einigen sich prima darauf, dass kein Passwort nötig ist und der Webserver begrüßt den Surfer mit seinem Anmeldenamen.

Nun meine Frage: Bei der Anmeldung an einem Windows-Rechner wird kein Kerberos-Ticket angefordert, oder? Von Windows aus ist Kerberos gar nicht in Betrieb?
Ist Single-Sign-On per Kerberos auf nicht-Samba-Dienste von Windows aus in einer UCS-Domäne möglich?

Davon war ich irgendwie still und heimlich ausgegangen und bin jetzt doch etwas überrascht, dass Windows zwar seit 2000 Kerberos nutzt, UCS ebenfalls, aber diese beiden sich dahingegen anscheinend gar nicht kennen. Oder übersehe ich da etwas?

Falls Kerberos nicht automatisch genutzt wird: Ist es möglich, bei der Windows-Domänen-Anmeldung gleich ein Kerberos-Ticket (vom UCS-KDC) für Single-Sign-On anzufordern? Oder bleibt als alternative nur mod_auth_ntlm_winbind (apache) o.ä. übrig?

Mit freundlichen Grüßen
Michael Heide


#2

Hallo,

leider gibt es bei der Anmeldung über Windows an eine Samba3-basierte Domäne keine Möglichkeit ein Kerberos Ticket zu bekommen. Mit Samba4 wird es diese Möglichkeit geben, da sich Samba4 für die Windows Clients wie eine Active Directory Domäne verhält.

Alternativ kann ein Kerberos Ticket über die Dienste wie “MIT Kerberos for Windows” bezogen werden, allerdings ist dies meines Wissens bei der Anmeldung an die Sama3 Domäne nicht möglich, sondern kann nur später manuell erfolgen.

Wir haben mit mod_auth_ntlm_winbind sehr gute Erfahrungen gemacht, damit wird eine Single-Sign-On Anmeldung bspw. aus dem Internet Explorer möglich.

Viele Grüße
Stefan Gohmann


#3

Hallo und danke für die Antwort.

mod_auth_ntlm_winbind wollte ich tatsächlich erst nutzen, fand dann aber (ohne näheres Wissen) die Lösung über Kerberos eleganter. Sicher, Plattformübergreifend und Zukunftsweisend. (solange es denn funktioniert :wink: )

MIT KfW hatte ich schon installiert und er fragte tatsächlich erst immer ein zweites mal nach dem Passwort. Als ich schon angefangen habe mich zu erkundigen, ob es vielleicht eine passende gina.dll gibt, die das Passwort der Windows-Anmeldung für diese Sache nutzt (ala tcgina für TrueCrypt) bzw. wie schwierig es wohl wäre, so etwas zu entwickeln (z.B. auf Basis tcgina oder als Modul für pGina) und auch etwas gefunden habe, was dies wohl schon tut (regina vom Reed College, wobei ich da noch gar nicht näher bei geguckt habe), viel mir plötzlich auf, dass MIT KfW “plötzlich” gar nicht mehr nach dem Kerberos-Passwort nach der Nutzeranmeldung fragt, dennoch aber ein gültiges Kerberosticket hat. Da dies auch nach Ablauf des Tickets und auch nach einem Neustart am nächsten Morgen der Fall ist, soweit ich weiß aber MIT KfW keine Ticketdaten auf der Festplatte speichert, gehe ich mal davon aus, dass MIT KfW doch schon das Anmeldepasswort abfangen kann und dies nur nach der Installation vor dem ersten Reboot nicht funktioniert hat.

Schade ist bei dieser Lösung allerdings, dass Windows-Programme standardmäßig für Kerberos-Anmeldungen die Windows-API verwenden (SSPI?) und nicht die MIT-KfW-Bibliothek und daher auch das Kerberosticket in diesem nicht verwenden (als Info für alle, die z.B. über eine Suchmaschine hier landen). Da wir aber eh Firefox als Default-Browser verwenden möchten, dieser sich aber über network.auth.use-sspi+co. umstellen lässt, stellt dies in unserem Fall keinen Nachteil dar.

Näheres weiß ich nicht, werde ich aber ergründen, falls ich mich nochmal damit beschäftige. Dies wird noch mindestens ein paar Tage dauern, da die Sache hier vorerst einmal “auf Eis” gelegt ist.

Gruß
Michael Heide

PS: SSO per mod_auth_ntlm_winbind geht wohl mittlerweile auch über firefox.


#4

Hallo,

wäre es möglich das Paket libapache2-mod-auth-ntlm-winbind auch für UCS 2.0/2.1 zu bauen und es zur Verfügung zustellen? Leider sind soviele Abhändigkeiten zu lösen dass ein selbstbauen sehr schwierig ist.

MfG


#5

Hallo,

ich werde dies in Form eines Feature-Request in unser internes Bug-Tracking System aufnehmen.

Mit freundlichen Grüßen
Janis Meybohm


#6

Das Pakete "libapache2-mod-auth-ntlm-winbind " kann nun für UCS 2.1 installiert werden.

Die Datei “/etc/apt/sources.list” ist um folgende Zeilen zu ergänzen:

deb http://apt.univention.de/2.1/unmaintained/component/ server/all/ deb http://apt.univention.de/2.1/unmaintained/component/ server/i386/ deb http://apt.univention.de/2.1/unmaintained/component/ server/amd64/ deb http://apt.univention.de/2.1/unmaintained/component/ server/extern/ deb-src http://apt.univention.de/2.1/unmaintained/component/ server/source/
Das Paket kann dann über “apt-get” installiert werden.

-> apt-get update -> apt-get install libapache2-mod-auth-ntlm-winbind
Einmal installiert muss das Modul im Apache aktiviert werden.

-> a2enmod auth_ntlm_winbind

Auf allen nicht Memberservern (z.B. UCS Master) muss der Rechner noch in die Domäne aufgenommen werden.

-> net rpc join -U Administrator

Nun kann durch einen entsprechenden Eintrag in der Apache Konfigurationsdatei
die Authentifizierung im Apache über ntml winbind aktiviert werden.

[code]# Beispiel Konfiguration

Alias /tmp /tmp
<Directory “/tmp”>
Options FollowSymLinks Indexes
Order allow,deny
allow from all

   <Files *>
       NTLMAuth on
       AuthType NTLM
       AuthName "Moodle NTLM Authentication"
       NTLMAuthHelper "/usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp"
       NTLMBasicAuthoritative on
       require valid-user
   </Files>
...[/code]

#7

vielen Dank.

Das Paket steht aber leider nur für 32bit zur Verfügung. Könnten Sie auch eine 64bit Version erstellen?


#8

Hallo,

das Paket wurde mittlerweile auch für amd64 erstellt und im angegebenen Repository veröffentlicht.

Mit freundlichen Grüßen
Janis Meybohm