PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kerberos: realm db <-> keytab



Stephanw
12.05.08, 12:25
Moin zusammen,

ich evaluiere gerade NFS v4 für unser Firmennetzwerk. In diessem Zusammenhang muss ich die Authentifizierung mittels Kerberos ebenfalls untersuchen. Dazu habe ich jetzt einen Kerberos-Server auf Solaris 10 aufgesetzt, indem ich den Anweisungen der Sun-Dokumente gefolgt habe. Das ganze funktioniert nun auch mehr oder weniger, nur habe ich 70% dessen, was ich da gemacht habe, gar nicht verstanden. Auch die Literatur im Internet lässt mich als Anfänger doch ein wenig wie den Ochs vorm Berge stehen.

Was mehr oder weniger logisch ist, ist das anlegen der principals für die Hosts (KDC-Server, NFS-Client, NFS-Server), den root-User auf dem NFS-Client, der die Freigabe mountet sowie den nfs-Dienst auf dem NFS-Server. Jetzt gibt es noch so eine keytab-Datei, dessen Sinn sich mir überhaupt nicht erschließt. Meinem Verständnis nach befinden sich alle principals in der realm-db auf dem KDC-Server, richtig? Wer braucht dann wozu diese keytab und woher weiss ich, welche principals auf welchem Server dort eingetragen werden müssen? Fragen über Fragen...

Gruß Stephan

Sven_R
12.05.08, 17:14
hallo



Jetzt gibt es noch so eine keytab-Datei, dessen Sinn sich mir überhaupt nicht erschließt.

das war bei mir anfangs auch so.



Meinem Verständnis nach befinden sich alle principals in der realm-db
auf dem KDC-Server, richtig?
Wer braucht dann wozu diese keytab und woher weiss ich,
welche principals auf welchem Server dort eingetragen werden müssen?

also ich benutze kerberos für meine OpenAFS Fileserver weill OpenAFS
alle user gegen kerberos authentifizieren kann.

das keytab ist eigentlich dafür gedacht das der "service" NFS, OpenAFS, usw
sich ohne anmeldung anmelden kann. ohne keytab müsstest du jedes mal
eine manuele anmeldung am kerberos server machen.
die keytab ist so ne art ssh mit schlüsseldatei.
also anmelden ohne ein passwort einzugeben.

zur anmeldung wird die keytab verwendet, der service
sendet eine art hashwert des schlüssels zum kerkeros.
kerberos überprüft das, wenn das richtig ist geht kerberos davon aus das
service der sich anmeldet der richtige ist.
daher solltest du für alle services am auch den hostnamen und die domain
mit in den kerberos aufnehmen.

im kerberos muss der service, hier NFS, als add_princ eingetragen werden.
was noch hinzu kommt ist ein "randkey" (zufallsschlüssel).

diesen randkey musst du in die keytab exportieren.
beim starten von nfs wird dieser randkey an kerberos gesendet und
die anmeldung damit gestartet.

des weiteren solltest du auf dem kdc das logging hochschrauben
um zu sehen ob alle princs auch richtig in der db liegen.

wenn sich ein service am kdc anmeldet siehst du auch gleich ob das alles
richtig ist.

bei mir hat ein howto für OpenAFS auf Gentoo (http://de.gentoo-wiki.com/OpenAFS_mit_MIT-Kerberos5) richtig weitergeholfen,
incl ein bisschen probieren mit kadmin und den princ's.

viel spass
cu