Назад | Перейти на главную страницу

NFS игнорирует вторичные группы

Мой сервер NFS, похоже, игнорирует вторичные группы. У меня меньше 16 групп на пользователя, но есть --manage-gids на. Если этот параметр отсутствует, общий ресурс NFS не подключается. Пользователи и группы управляются с помощью LDAP, а аутентификация выполняется с помощью Kerberos. Мой экспорт настроен следующим образом:

> cat /etc/exports
/srv/nfs4 *(rw,sync,fsid=root,crossmnt,no_subtree_check,sec=krb5i,insecure)
> grep /srv/nfs4 /etc/fstab
/home   /srv/nfs4/home  none    bind    0   0
/var/backups/home   /srv/nfs4/archive   none    bind    0   0
> hostname -f
nfs.example.com

Монтирование NFS монтируется следующим образом, как на самом сервере, так и на нескольких других клиентских машинах:

> grep nfs4 /etc/fstab
nfs.example.com:/ /mnt/nfs nfs rw,exec,nfsvers=4 0 0

UID верны, поскольку файловая система NFS смонтирована на самом сервере. Это также происходит, когда я устанавливаю его на другую машину.

> id
uid=1027(kai) gid=1027(kai) groups=1027(kai),27(sudo),100(users)
> ls -n /mnt/nfs/home/kai/test
total 0
drwxr-xr-- 1 1001  100 0 Mar 27 11:44 test1/
drwxr-xr-x 1 1001  100 0 Mar 27 11:44 test2/
drwxr-xr-- 1 1001 1027 0 Mar 27 11:44 test3/

В локальном каталоге (/home/kai/test и /srv/nfs4/home/kai/test), Я могу cd во все каталоги тестов. В /mnt/nfs/home/kai/test, Я не могу cd к test1/. Мой вывод таков, что разрешение группы (r-x) на вторичной группе users игнорируется - есть идеи, почему это может быть?

изучение

После дальнейшего исследования с wirehark выяснилось, что это проблема на стороне хоста. Клиент выдает LOOKUP вызовы и получение ожидаемого ответа (что и должно быть, поскольку правильные разрешения показаны с ls). Однако он не получает правильный ответ на ACCESS звонки - клиент отправляет Check: Read/Lookup/Modify/Extend/Delete и получает Allowed: Read/Lookup для test2 и test3, но только Allowed: Read для test1.