![NFS: управление доступом к файлам/папкам с использованием групп на сервере](https://rvso.com/image/770111/NFS%3A%20%D1%83%D0%BF%D1%80%D0%B0%D0%B2%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%BE%D0%BC%20%D0%BA%20%D1%84%D0%B0%D0%B9%D0%BB%D0%B0%D0%BC%2F%D0%BF%D0%B0%D0%BF%D0%BA%D0%B0%D0%BC%20%D1%81%20%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5%D0%BC%20%D0%B3%D1%80%D1%83%D0%BF%D0%BF%20%D0%BD%D0%B0%20%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5.png)
Я чувствую себя немного глупо, задавая этот вопрос, поскольку мне кажется, что это очень простой вопрос, но в любом случае я пока не нашел решения:
У меня есть сервер данных Linux и несколько рабочих станций, которые монтируют папки на этом сервере данных с помощью NFS. Система настроена таким образом, что пользователи имеют одинаковые uid на сервере и рабочих станциях. Централизованного управления пользователями нет, но учетные записи являются локальными учетными записями на соответствующих компьютерах.
Теперь я хотел бы контролировать доступ к файлам на сервере данных, создавая группы для определенных целей и добавляя соответствующих пользователей в эти группы на сервере. Однако при монтировании каталогов на рабочих станциях я сталкиваюсь с проблемой, что группы существуют только на сервере, и рабочие станции, похоже, не знают, является ли конкретный пользователь членом группы на сервере. Я хотел бы избежать создания всех групп также на каждой из рабочих станций, а управлять ими только на сервере. Возможно ли это?
Заранее спасибо за любые ответы!
решение1
Поскольку вы думаете о локальных учетных записях, я предполагаю, что вы используете аутентификацию rpc на основе AUTH_SYS. Это означает, что клиент отправляет с каждым запросом uid и gid. IOW, сервер nfa просто использует информацию о членстве в группе, предоставленную клиентами.
Есть две возможности (насколько мне известно) исправить это:
сложный
Используйте RPCSEC_GSS — керберизованный доступ и сопоставьте принципалов пользователей на стороне сервера с желаемыми uid и gid или запросите сервер LDAP.
простой
Настройте сервер (rpc.mountd) так, чтобы он запускался с --manage-gids
опцией, которая сообщит серверу игнорировать идентификаторы GID, предоставленные клиентом, и выполнять локальные запросы на основе идентификатора UID.