La situation: je veux simplement pouvoir accéder à un Synology NAS à partir d’un serveur Ubuntu avec un utilisateur non root.
Sur le NAS, j'ai ceci dans le fichier exports:
/Directory <client-ip>/255.255.255.0(rw,async,no_wdelay,no_root_squash,insecure_locks,sec=sys,anonuid=1003,anongid=1004)
Sur Ubuntu-Server sous fstab, j'ai eu ceci:
<server-ip>:/Directory /Mountpoint nfs noauto,user,rw 0 0
Je souhaite maintenant autoriser UserA, qui est utilisé pour certains processus automatiques, à monter le partage et à y écrire.
mount /Mountpoint
Le montage en tant que UserA fonctionne bien, mais je n’ai même pas l’autorisation de lire le contenu de ce répertoire. En tant qu'utilisateur root, je le fais. La liste du dossier mountpoint indique les autorisations suivantes:
drwxrwx--- 4 UserA root 4096 Sep 17 13:58 Mountpoint
J'ai essayé de définir les anon-ids dans les exportations sur les ids de UserA, mais cela n'a pas aidé. Faire de UserA le propriétaire du dossier n'a pas aidé non plus. Y a-t-il une chose simple qui me manque?
En outre: il doit s'agir d'un partage nfs, car il transférera de grandes quantités de données.
Edit: Je préférerais éviter d’accorder des autorisations de lecture et d’écriture aux "autres" pour des raisons de sécurité.
Soit usera
le groupe principal de UserA (groups usera
). Vous pouvez trouver le GID en utilisant: id -g usera
sur le système client, par exemple, 1256
. Ajoutez maintenant votre utilisateur au groupe usera
:
Sudo adduser ayven usera
Maintenant, sur le serveur, faites:
chown :1256 /Directory # Replace 1256 with the correct GID
chmod g+rwxs /Directory
Remontez-le sur le client:
Sudo umount /Directory
Sudo mount /Directory
(Vous devrez peut-être vous reconnecter pour que vos nouveaux groupes prennent effet.)
Vous et usera
avez maintenant un accès complet au partage NFS. J'ai utilisé le bit setgid
; vous devrez peut-être l'activer, je ne m'en souviens pas. Ajoutez les utilisateurs auxquels vous souhaitez accéder à ce répertoire dans le groupe usera
.