LINUX.ORG.RU
решено ФорумAdmin

Отличия в правах NFS+ZFS для FreeBSD и Linux

 , ,


1

1

Здравствуйте, Подскажите, пожалуйста, куда копать по следующей проблеме. Или, может быть, подскажите, почему так происходит. Установил TrueNAS 13, он на базе FreeBSD 13. В основе - ZFS, если это важно, но дело, думаю, не в ней.

Экспортирую директорию с TrueNAS: всем полные права, maproot/mapgroup отсутствует (для начала). Владелец root/wheel со стороны ZFS.

Монтирую директорию на Linux системе как root, создаю поддиректорию. Она создается вроде бы корректно:

drwxrwxr-x 2 nfsnobody root 2 Nov 25 13:40 test1

Ну хорошо, усилим безопасность. Теперь я хочу избавиться от root привилегий, когда я захожу root. Мне бы на NAS сделать преобразование maproot user->winuser, maproot group->dc (обе обитают в NIS, но TrueNAS их видит и нормально получает). Вношу своё желание в настройки шары директории:

  • Maproot user: winuser (NIS provided user)
  • Maproot group: dc (NIS provided group)

Снова монтирую с Linux машины, захожу root, монтирую директорию, создаю новую - что за ерунда?

drwxrwxr-x 2 winuser root 2 Nov 25 13:42 test2

Почему не отработал maproot group? - GID=0

Ну ладно, захожу на шару теперь winuser, пробую создать тестовую папку:

drwxrwxr-x 2 winuser root 2 Nov 25 13:45 test3

Как тут-то GID=0?? winuser входит в следующие группы так-то:

uid=5020(winuser) gid=5000(dc) groups=5000(dc)

Почему такое поведение?

Я проверил все то же самое под Linux c NFS сервером, поднятым вручную - там ожидаемо все работает как я и думал.

Спасибо



Последнее исправление: ahnenerbe (всего исправлений: 1)

В фрибсд созданные директории по дефолту наследуют группу родительской, права создающего юзера ни при чём, файловая система и nfs тоже ни при чём. Никаких привилегий никому это не даёт, если что.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от firkax

Так а в чем тогда смысл вообще использовать параметры типа maproot user/maproot group для NFS? И к чему тогда вообще разные пользователи при подключении к NFS шаре на FreeBSD? Как рулить правами тогда?

ahnenerbe
() автор топика
Ответ на: комментарий от ahnenerbe

Смысл в том что у подключённого юзера получаются указанные права на доступ к файлам соответствующих владельцев/групп. Повторю, nfs тут совершенно ни при чём. Ты можешь залогиниться в консоль как winuser:dc и будет ровно то же самое. В чём проблема то вообще? Какую ты задачу хочешь решить конкретно?

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Да задачу простую - создать структуру папок для пользователей, чтоб запереть каждого в своей папке и не пущать. Это мне понятно как сделать. Мне не очень понятно почему при явном указании map-группы и map-пользователя для root у последнего при создании объектов ФС в правах стоит какая-то ерунда, которая затем блокирует работу. Я так понимаю, что если две системы имеют одинаковые значения для UID/GID то и права должны быть соответствующие. А они нулевые почему-то.

ahnenerbe
() автор топика
Ответ на: комментарий от ahnenerbe

Каким образом оно что-то блокирует? Поставь разных юзеров, права на директорию 750 или 700, и всё. Группы нужны если ты хочешь как-то группировать юзеров и выдавать групповые права, но судя по всему это тебе не нужно, так что незачем возиться.

при создании объектов ФС в правах стоит какая-то ерунда

В правах у него группа dc как ты и хотел. А директории создаются с группой родительской директории. К правам создающего это никакого отношения не имеет.

Я так понимаю, что если две системы имеют одинаковые значения для UID/GID то и права должны быть соответствующие

А тут вообще непонятно, что имелось ввиду. Что за «системы»? Чьи и где права ты с чем сравниваешь?

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)