Автор Тема: Samba / Разграничение доступа [решено]  (Прочитано 11920 раз)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Так она там по умолчанию есть!
Ну, а через обычный mount ? :-) Зачем мне etremount... я через обычный монтирую.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Кстати, такая проблема с acl нарисовалась.
Создаю правило для group - rx.
Каталоги и файлы создаются нормально, но если у файлы попытаться изменить права, то они спрыгивают на rw:rwx:r, то есть для группы x прибавляется зачем-то... хотя должно быть rw:rw:r
У вас такое присутствует ?
Здесь что-то подобное нашёл http://superuser.com/questions/180545/setting-differing-acls-on-directories-and-files, но не помогает что-то...
Сноси Винду, переходи на Линукс ! :)

Оффлайн flint1975

  • Завсегдатай
  • *
  • Сообщений: 1 425
    • Email
Ну у меня etermount нужен для запуска 1с еще и из под вина, дабы торговое оборудование подцепить, а иначе под вином периодически рушит базу.
Внятного понимания работы acl + samba у меня нет, мне было достаточно, чтобы на 1с папку были полные права.
Нормального источника по работе с acl не нашел, везде либо примеры (что хорошо, но не совсем), либо очень уж общие принципы, которые я и так знаю.
Например: мне надо наследовать права на создаваемые внутри каталоги, как бы я ни бился без umask=002 в bashrc не получается, а это мне не нужно, поскольку мне это надо только в одном ресурсе, а не во всех.
Как это сделать до сих пор не понимаю.

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Например: мне надо наследовать права на создаваемые внутри каталоги, как бы я ни бился без umask=002 в bashrc не получается, а это мне не нужно, поскольку мне это надо только в одном ресурсе, а не во всех.
Как это сделать до сих пор не понимаю.
Если для шары, то вот так можно попробовать:
directory mask = 0775
force directory mode = 0775
directory security mask = 0000
force directory security mode = 0775
В этом случае все каталоги будут с 775 и никто их не сможет сменить. При попытке сменить, будут сбрасываться на умолчальные.
Ну а с acl да, есть непонятные моменты и работает всё как-то странно порой...

В моём случае, пока так и не разобрался. Получается, если файл копировать с правами rw:rw:rw в шару, а у меня в самбе указано 644, то в этом случае тоже сбрасывается в rw:rwx:r. Если же файл создавать из шаблона (Файл->Создать документ), то права нормально присваиваются — rw:rw:r. Может маски наслаиваются (samba + acl), может ещё чего — не знаю. Но как по ссылке написано, что мол нужно rwX указывать для каталогов — не работает, да и в мане я не нашёл про это, хотя и не ругается :-) Буду ещё пробовать потихоньку.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Кажется, немного приблизился к разгадке.
Маска почему-то распространяется на group, хотя в мане встречал, что маска должна распространяться только на дополнительные атрибуты, какого лешего она лезет к group не знаю...
# getfacl share/

# file: share/
# owner: root
# group: root
user::rwx
user:olga:rwx #effective:r-x
group::rwx #effective:r-x
mask::r-x
other::r-x
default:user::rwx
default:user:olga:rwx #effective:r-x
default:group::rwx #effective:r-x
default:mask::r-x
default:other::r-x
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
directory mask = 0775
force directory mode = 0775
directory security mask = 0000
force directory security mode = 0775
Кстати, не помогу повторить на другой машине, то есть не срабатывает защита прав доступа :-) Буду в понедельник смотреть, что там ещё я нахимичил, что там работает.

Как выше писал, сброс прав для группы, где добавляется x, происходит из-за маски (mask), причём та, что является по умолчанию для вновь создаваемых файлов и папок (default mask). Как с этим бороться — непонятно. Странно то, что нет возможности отдельно указать маску для каталогов и отдельно для файлов. Такая же история повторяется, если сказать самбе 'inherit permissions = yes'. Тогда все файлы вообще создаются с правами rw- rwx rw-. Но. всё-таки выход есть, может быть не лучший, но зато работает. Достаточно назначить владельцем всех файлов и папок root'а, для этого: включить в самбе нужные маски, присвоить шаре 'chown root:root' и сказать самбе 'inherit owner = yes'. В результате все файлы создаются с владельцем root и никто их не может сменить. Только одна проблема всё же присутствует, при попытке скопировать в шару файл с правами rw- rw- rw-, когда в шаре указана маска 644, вылазит ошибка "Невозможно изменить права доступа. Отказано в доступе", но сам файл копируется.
Нужно, наверно, добавить, что где защита прав доступа работает, там сервер — p6, клиент — p7, а я пытаюсь это повторить на p7 с обеих сторон — не получается пока.
« Последнее редактирование: 28.04.2014 16:45:05 от berkut_174 »
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
directory mask = 0775
force directory mode = 0775
directory security mask = 0000
force directory security mode = 0775
Кстати, не помогу повторить на другой машине, то есть не срабатывает защита прав доступа  Буду в понедельник смотреть, что там ещё я нахимичил, что там работает.
Убрали эти параметры из Samba4 https://www.samba.org/samba/history/samba-4.0.0.html, поэтому и не работают.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Как выше писал, сброс прав для группы, где добавляется x, происходит из-за маски (mask), причём та, что является по умолчанию для вновь создаваемых файлов и папок (default mask). Как с этим бороться — непонятно.
На багтрекер Samba обратиться бы, но я не осилю общение на английском...
Сноси Винду, переходи на Линукс ! :)

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 8 999
На багтрекер Samba обратиться бы
А ежели через местную багзилу, обратиться, так сказать, с просьбой донести до апстрима ?

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
А ежели через местную багзилу, обратиться, так сказать, с просьбой донести до апстрима ?
Можно, но наверно неэффективно... хотя всё лучше,чем ничего. Попробую позже обратиться.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Только одна проблема всё же присутствует, при попытке скопировать в шару файл с правами rw- rw- rw-, когда в шаре указана маска 644, вылазит ошибка "Невозможно изменить права доступа. Отказано в доступе", но сам файл копируется.
Да и вообще, при копировании любого файла или каталога, права доступа которого отличны от указанного mask.

Всё же немного напрягает это сообщение, хотя проблем не создаёт.

Кто с самбой в ладах, подскажите есть ли заветная опция, чтобы избавиться от этого сообщения ? :-)

PS. Между нами говоря, при копирование каталога с правами 700 в шару, когда directory mask = 775, например, каталог принимает права 775 — как и положено, а вот с файлами — беда какая-то, create mask = 664, при копировании файла 600 он и в шару переносится с этими правами. Опять же, возможно, причина в Thunar (Simply 7), надо смотреть на других ФМ.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Наклёвывается...

Решение опишу ниже. При использовании acl присутствует та же проблема http://forum.altlinux.org/index.php/topic,32433.msg228315.html#msg228315 (для группы маска настойчиво прописывает rwx)

И так, шара:
[share]
path = /srv/share
read only = no
create mask = 0644
force create mode = 0644
directory mask = 0755
force directory mode = 0755

При монтировании нужно указать опции: nounix, uid=<uid>,gid=<gid>,file_mode=0644,dir_mode=0755.

Всё. При этом владелец вроде бы может менять права доступа и даже группу у файлов/каталогов, но на самом деле это иллюзия, права сбрасываются на указанные в параметрах монтирования. Даже create mask и directory mask при этом можно убрать.

PS. Работает как маска защиты, только на Samba4. Ну и на Samba3 должно работать.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
Ну и на Samba3 должно работать.
На Samba3 (сервер), как то странно работает с параметром nounix. На клиенте шара монтируется, но файлы при первом входе видно, а потом просто пропадают. При попытке создать файл/каталог он создаётся так: \<указанное_имя> (вначале слэш подрисовывается ещё). Ни открыть, ни удалить такое творение не получается.
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
А ежели через местную багзилу, обратиться, так сказать, с просьбой донести до апстрима ?
https://bugzilla.altlinux.org/show_bug.cgi?id=30069
Сноси Винду, переходи на Линукс ! :)

Оффлайн berkut_174

  • Мастер
  • ***
  • Сообщений: 7 147
    • Email
При монтировании нужно указать опции: nounix, uid=<uid>,gid=<gid>,file_mode=0644,dir_mode=0755.
Чё то блин через раз работает... почему бы...
Сноси Винду, переходи на Линукс ! :)