Frage zu nfs4 und kerberos
Hallo, gerade versuche ich ein ubuntu 23.10 bzw.24.04 System an einen kerberos nfs Server mit einem Oracle Linux 9.4 anzubinden. Leider bekomme ich beim nfs mount ein permission denied. Ich denke also, dass meine nfs Server Konfiguration nicht ganz richtig ist. ubuntu 23.10 hat kernel 6.5 / ubuntu 24.04 hat kernel 6.8. Wenn ich ubuntu 23.10 mit dem kernel 5.15 von ubuntu 22.04 boote, dann funktioniert das nfs4+kerberos mount. nfs4 mount ohne kerberos funktioniert auch mit kernel 6.x mount -t nfs -o vers=4,sec=krb5 -vvvv fileserver.igpm.rwth-aachen.de:/ /mnt gibt bei 6.x kernel mount.nfs: trying text-based options 'sec=krb5,vers=4.2,addr=xx.xx.xx.xx,clientaddr=yy.yy.yy.yy' mount.nfs: mount(2): Permission denied bei kernel 5.15 geht das mount ohne Fehler durch. Was habe ich auf dem Server falsch konfiguriert? Viele Grüße Frank Knoben
Hallo Frank, ich weiß jetzt spontan nicht, was bei dir falsch sein könnte, aber vielleicht hilft dir ja schonmal eine bei uns funktionierende Konfiguration: Aus der /etc/exports auf dem Server (Debian 10, Kernel 4.19): /exports/home 137.226.75.0/27(rw,async,no_subtree_check,sec=krb5p,no_root_squash) In der /etc/krb5.keytab sind hier Keys für die Principals `host/nfs.fsmpi.rwth-aachen.de@FSMPI.RWTH-AACHEN.DE` und `nfs/nfs.fsmpi.rwth-aachen.de@FSMPI.RWTH-AACHEN.DE`. Aus der /etc/auto.nfs auf einem Client (Debian 12, Kernel 6.1): home -noatime,hard,intr,nodev,nosuid,vers=4,sec=krb5p nfs.fsmpi.rwth-aachen.de:/exports/home Wenn ich mich als User einlogge, habe ich neben dem TGT ein Ticket für das nfs/… Principal von oben. Was neueres als 6.1 habe ich spontan nicht, könnte ich aber möglicherweise mal versuchen. Viele Grüße, Thomas Am Montag, dem 13.05.2024 um 11:15 +0200 schrieb Frank Knoben:
Hallo,
gerade versuche ich ein ubuntu 23.10 bzw.24.04 System an einen kerberos nfs Server
mit einem Oracle Linux 9.4 anzubinden.
Leider bekomme ich beim nfs mount ein permission denied. Ich denke also, dass meine
nfs Server Konfiguration nicht ganz richtig ist.
ubuntu 23.10 hat kernel 6.5 / ubuntu 24.04 hat kernel 6.8.
Wenn ich ubuntu 23.10 mit dem kernel 5.15 von ubuntu 22.04 boote, dann funktioniert das
nfs4+kerberos mount. nfs4 mount ohne kerberos funktioniert auch mit kernel 6.x
mount -t nfs -o vers=4,sec=krb5 -vvvv fileserver.igpm.rwth- aachen.de:/ /mnt gibt bei 6.x kernel mount.nfs: trying text-based options 'sec=krb5,vers=4.2,addr=xx.xx.xx.xx,clientaddr=yy.yy.yy.yy' mount.nfs: mount(2): Permission denied
bei kernel 5.15 geht das mount ohne Fehler durch.
Was habe ich auf dem Server falsch konfiguriert?
Viele Grüße
Frank Knoben
-- Fachschaft I/1 Mathematik/Physik/Informatik der RWTH Aachen Thomas Schneider Campus Mitte: Augustinerbach 2a, 52062 Aachen Telefon: +49 241 80 94506 Informatikzentrum: Ahornstraße 55, Raum 2014, 52074 Aachen Telefon: +49 241 80 26741 https://www.fsmpi.rwth-aachen.de
Hallo, falls noch wer in das Problem mit dem nicht funktionierenden kerberos mount bekommt, bei mir hat der Fix von https://www.spinics.net/lists/linux-nfs/msg102724.html geholfen.
# echo "mac@Kerberos = -HMAC-SHA2-*" /usr/share/crypto-policies/policies/modules/NFS.pmod # update-crypto-policies --set DEFAULT:NFS # systemctl restart gssproxy
but note that would be turning off the SHA2 enctypes for everything krb5-related, not just NFS.
auf einem weiteren Post stand: Or, you could test the patches I sent to the list yesterday (this would be on the client, not the server). The problem is those patches don't apply cleanly to the current version of nfs-utils shipped in EL9. At a quick glance, it looks like nfs-utils would need: 49567e7d configure: check for rpc_gss_seccreate 15cd5666 gssd: handle KRB5_AP_ERR_BAD_INTEGRITY for user credentials 2bfb59c6 gssd: handle KRB5_AP_ERR_BAD_INTEGRITY for machine credentials 3abf6b52 gssd: switch to using rpc_gss_seccreate() f05af7d9 gssd: revert commit 513630d720bd 20c07979 gssd: revert commit a5f3b7ccb01c 14ee4878 gssd: handle KRB5_AP_ERR_BAD_INTEGRITY for user credentials 4b272471 gssd: handle KRB5_AP_ERR_BAD_INTEGRITY for machine credentials 75b04a9b gssd: fix handling DNS lookup failure f066f87b gssd: enable forcing cred renewal using the keytab and you'd also need to patch libtirpc to include: 22b1c0c gssapi: fix rpc_gss_seccreate passed in cred Viele Grüße Frank Knoben
participants (2)
-
Frank Knoben
-
Thomas Schneider