15

У меня есть устройство Synology NAS (работает под управлением DSM 5.1), и я экспортировал каталог через NFS. Я пытаюсь установить его на свою коробку Ubuntu.

В основном это работает нормально, но у меня проблемы с отображением пользователей и групп. На Ubuntu box, я uid 1000 (Роджер), Гид 1000 (Роджер). В Synology у меня uid 1026 (роджер), группа 100 (пользователи).

Если я использую NFSv3, он использует числовые значения uid/gid, что означает, что право собственности нарушено в Synology.

Если бы я когда-либо получал доступ к монтированию NFS только из той же коробки Ubuntu, используя одного и того же пользователя, это было бы хорошо, но я также обращался к каталогу из коробки Windows, используя CIFS (SMB), что означает неправильно.

Если я использую NFSv4 (mount -o nfsvers=4) с настройками по умолчанию в Synology, тогда файлы, принадлежащие roger.users в Synology, будут принадлежать roger.users при просмотре из окна Ubuntu. Это хорошо.

Тем не менее, когда я touch файла:

roger@ubuntu$ touch /mounts/diskstation/music/foo

В конечном итоге он принадлежит 1000.1000 в Synology, а при просмотре из окна Ubuntu он отображается как nobody.4294967294 .

Все, что я могу найти в теме на форумах Synology, датировано 2011 годом, когда NFSv4 не поддерживался, или состоит из людей, которые задают тот же вопрос и затем сдаются.

Для полноты /etc/exports есть:

/volume1/music  10.0.0.0/24(rw,async,no_wdelay,root_squash,insecure_locks,sec=sys,anonuid=1025,anongid=100)

... и я монтирую его на коробку Ubuntu с помощью:

mount -t nfs diskstation:/volume1/music /mounts/diskstation/music/ -o rw,nfsvers=4

Я обнаружил некоторые подсказки, что sec=sys может быть проблемой: почему отображение uid/gid в NFSv4 не работает с AUTH_UNIX (AUTH_SYS), но это не имеет решения.

Есть ли простой способ обойти эту проблему? Есть ли более сложный (кашель Kerberos кашель) способ решить эту проблему?

Серьезно, если Kerberos - ответ, я приму этот удар, но я хотел бы знать, прежде чем тратить на это кучу времени.

Обновление: хотя в документации Synology говорится о различных параметрах Kerberos, я не могу найти их в пользовательском интерфейсе. В примечаниях к выпуску указывается «Если реализована защита Kerberos ...». Я нашел (но не могу найти снова) страницу, которая подразумевает, что она может отсутствовать на некоторых моделях. У меня DS211, в соответствии с информацией о системе. Может мне не повезло?

2 ответа2

6

Для правильной работы сопоставления идентификаторов NFSv4 на клиенте и сервере должен быть запущен демон сопоставления идентификаторов idmapd и один и тот же Domain должен быть настроен в /etc/idmapd.conf

Таким образом, ваш NFS-клиент отправляет свои учетные данные ID как roger@example.com в командах NFS на проводе, и ваш idmapper NFS-сервера сопоставляет их пользователю roger на NFS-сервере. UID и GID не имеют значения, они отображаются в каждой системе idmapper.

Однако я не беспокоюсь об этом в моей Synology. Моя общая папка имеет следующие разрешения:

  • права доступа
    • Локальные пользователи
      • Admin = чтение / запись
  • Разрешения NFS
    • Сквош
      • Сопоставить всех пользователей с админом

Это приводит к тому, что anonuid=1024,anongid=100 (пользователь- admin и группа users ) добавляются в экспорт в /etc/exports на NAS.

Мой NFS-клиент (на котором не работает ID Mapper) отправляет мои NFS-команды от имени моего пользователя (1000:1000) и, поскольку этого UID и GID не существует на NAS, он переводит мои UID и GID в 1024:100 поэтому я рассматриваюсь как пользователь с правами администратора.

Это ужасно непрофессиональное и небезопасное использование NFS для бизнес-среды, но только для меня, чтобы получить доступ к своим файлам дома, это злоупотребление поведением NFS, которое является приемлемым для меня.

Другим вариантом является , чтобы сделать roger «s UID и GID же на клиенте NFS и NAS, то вы можете использовать NFSv4 без ID карт, или вы могли бы использовать NFSv3 опирающийся только на UID и GID.

0

У меня была та же самая проблема, пытаясь выяснить модели, на которых это было. Оказывается, Kerberos является частью пакета Active Directory Server, и описание пакета включает в себя модели Synology, на которых он доступен. (Я получил 1515, а не 1515+, поэтому мне тоже не повезло.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .