Hauptanwendung ist sicheres NFS.
Voraussetzung ist ein funktionierendes DNS. Alle beteiligten Systeme müssen
auflösbar sein. Sowohl mit A
- als auch PTR
-Record.
Der Server stellt sowohl den KDC als auch den Admin-Server zur Verfügung.
apt-get install krb5-kdc krb5-admin-server
Konfiguration
krb5_newrealm
kadmin.local
list_principals
zum überprüfen was gerade eingetragen istaddprinc root/admin
addprinc -randkey host/server.example.com
ktadd host/server.example.com
/etc
quit
/etc/krb5kdc/kadm5.acl
bearbeitenroot/admin *
, Berechtigung für den zuvor erzeugten Admin-Principal/etc/default/nfs-kernel-server
NEED_SVCGSSD=„yes“
krb5-kdc
kadmind
apt-get install krb5-user
Konfiguration
kadmin
kadmind
auf dem Serveraddprinc -randkey host/client.example.com
ktadd host/client.example.com
quit
/etc/default/nfs-common
NEED_IDMAPD=yes
NEED_GSSD=yes
nfs-common
Hinweis: mit ktutil
kann man sich den Inhalt einer Keytab-Datei anzeigen lassen, zur Überprüfung, ob alles so funktioniert hat wie gewünscht.
Manuell anlegen einer Keytab welche einen Namen enthält und ein zugeordnetes Kennwort.
Dieses kann dann für den kinit
-befehl verwendet werden, so daß dieser keine
Eingabeaufforderung für ein Kennwort mehr benötigt:
ktutil ktutil: addent -password -p username@EXAMPLE.COM -k 1 -e rc4-hmac ktutil: wkt /home/username/example.keytab ktutil: exit
Überprüfen:
klist -e -k -t example.keytab
kinit
automatisieren:
kinit username@EXAMPLE.COM -k -t /home/username/example.keytab
Bereitstellen von NFS-Verzeichnissen durch den Server
TODO noch unklar ob das die „optimalen“ Einstellungen sind oder es ggf. bessere / elegantere Möglichkeiten gint
/export gss/krb5p(rw,fsid=0,insecure,no_subtree_check,async,anonuid=65534,anongid=65534) /export/volume1 gss/krb5p(rw,nohide,insecure,no_subtree_check,async,anonuid=65534,anongid=65534)
Anbinden von NFS-Freigaben an den Client
mount -t nfsv4 -osec=krb5p server:/volume1 /mnt