Права доступа к ресурсу
Открытие ресурса зависит от SMB-аутентификации, настроек Samba и прав файловой системы. Успех одной проверки не подтверждает остальные.
Что проверять
| Уровень | Вопрос |
|---|---|
| Идентичность SMB | Под каким пользователем клиент действительно подключён? Нет ли сохранённых старых реквизитов? |
| Конфигурация ресурса | Разрешён ли ресурс, входит ли пользователь в valid users, нет ли запрещающего правила? |
| Группы | Каково фактическое членство пользователя? Совпадает ли имя группы с реальной Linux-группой? |
| Файловая идентичность | Заданы ли force user / force group, меняющие пользователя или группу операций? |
| Каталоги пути | Есть ли право x на каждом родительском каталоге? |
| Сам объект | Допускают ли mode bits и ACL нужные операции над каталогом и файлом? |
Видимость ресурса в списке не означает право открытия. browseable=no скрывает ресурс,
но не является запретом обращения по имени. Успешный testparm подтверждает принятие
конфигурации, а не доступ конкретного пользователя.
Чтение и запись
- Для прохода через каталог нужно
x; для просмотра его списка —rвместе с возможностью прохода. - Для чтения файла нужно право чтения файла и прохода по всем родителям.
- Для создания файла обычно нужны
wиxна целевом каталоге и разрешение Samba. read only/write listрегулируют Samba, но не обходят ограничения Linux.create mask/directory maskне пересчитывают права всех существующих файлов. Сохранение ресурса в Sambryx не меняет права и владельцев существующих объектов. Для отсутствующего пути создаются каталоги с правами по правилам сервера — см. последствия сохранения. Это изменение послеv0.15.0; в выпущенной версии сохранение ещё может применятьchmodи рекурсивныйchown.
Не используйте chmod -R 777 для исправления отказа: он открывает права всем
и изменяет вложенные объекты. Сначала установите нужную идентичность, объект и причину.
Практический порядок проверки
- Уточните ресурс, пользователя, клиент и требуемое действие: открыть, прочитать или записать.
- В UI выберите Проверить доступ для ресурса и явно задайте локального пользователя.
- Сопоставьте найденные факты с реальным SMB-подключением. Диагностика панели не вычисляет группы, AD, ACL и доступ от имени пользователя; полные границы отчёта.
- На Samba-сервере проверьте идентичность и путь. Например:
- Если используются ACL, проверьте их средствами администрирования сервера;
простой вывод
statне описывает весь набор разрешений. - Изменяйте только подтверждённую причину. После изменения создайте новое SMB-подключение и проверьте разрешённого и постороннего пользователя.
Наличие force user/force group требует проверки назначенной файловой идентичности;
одного id alice тогда недостаточно. Отказ в тесте от имени исходного Linux-пользователя
сам по себе не доказывает отказ Samba при этих настройках.