Am 18.10.23 um 11:01 schrieb Marcel Mueller:
> Am 17.10.23 um 16:02 schrieb Markus Schaaf:
>> Am 17.10.23 um 14:28 schrieb Marcel Mueller:
>>
>>> ich habe NFS4 mit Kerberos (krb5p). Ich würde gerne den Root User des
>>> Clients auf einen /anderen/ dedizierten User des Servers mappen. Also
>>> ich möchte nicht auf Squashroot verzichten, sondern einfach einen
>>> weniger privilegierten User auf dem Server dafür nutzen.
>>
>> Das geschieht doch automatisch über das Mapping des Machine-Principals.
>> Auf dem Client habe ich z.B. (gekürzt)
>
> Tut es das? Das war mir bei der Umstellung auf NFS4 damals nicht
> bekannt. Es gebt ja auch noch gar keine Unix-User, die den Kerberos
> Maschinen-Usern entsprechen würden. Die müsste ich erst mal einrichten.
> Wie finden die denn dann zueinander, nur über den Hostnamen?
Wenn sec=krb5 benutzt wird, werden nicht mehr direkt UIDs
übertragen, sondern der Server ordnet jedem Kerberos-Pricipal per
definiertem Mapping einen lokalen User zu. Du könntest in
/etc/krb5.conf Mapping-Regeln für Principal/UID-Übersetzungen
definieren. Aber die Default-Regeln reichen, wenn man nur ein
Realm hat. Dann wird für user@DEFAULTREALM lokal user gesucht.
Wenn der nicht existiert, wird nobody genommen.
Ja, die Konvention host$ ist eine Windows-Erfindung, und wird von
Linux-NFSv4 unterstützt. Die hat den Vorteil, dass man eben viel
einfacher einen lokalen User zuordnen kann. Sonst würde IIRC das
Pricipal nfs/host verwendet, welches man dann explizit einem
lokalen User zuordnen müsste, da die Default-Regeln dafür nicht
funktionieren.
MfG