Назад | Перейти на главную страницу

Возможна ли иерархия разрешений в OpenSolaris + ZFS + ACL?

Я провел некоторое исследование OpenSolaris и ZFS для использования в NAS.

К настоящему времени я создал следующее:

/ tank / projects

/ бак / хранение

/ tank / разработчик

/ бак / песочница

Общее пространство, выделенное для бака, составляет 3,4 Тбайт (RAIDZ2). Developers mount - это наш репозиторий Subversion, он должен быть заблокирован, чтобы только системные администраторы имели доступ к этому контенту, а также те, кто находится в группе suDevelopers.

SandBox - это игровая площадка, все открытые двери, чтение / запись / удаление чего угодно.

Мне интересно, как я достигну следующего, нужно ли мне использовать ACL или просто стандартные разрешения Unix.

Есть три основные группы пользователей этого NAS, это иерархия пользователей. Для совместного использования этого NAS нет никаких рекламных объявлений или чего-либо еще, кроме CIFS.

Проблема в том, что некоторые файлы в области хранения содержат конфиденциальную информацию (серийные номера, лицензионные ключи), которые подрядчики не должны видеть. Можем ли мы установить эти разрешения в Windows пользователем, который поместил туда файл, и они автоматически установятся в нужное место?

Я не уверен, как правильно сделать это и следует ли мне использовать ACL или просто CHMOD.

Что ж, независимо от того, используете ли вы традиционные разрешения POSIX или ACL, вы будете использовать chmod на Solaris. Я бы посоветовал вам использовать в этом случае ACL. Вам придется применить ACL отдельно к каждой файловой системе в пуле хранения резервуаров. Я предлагаю установить aclmode и aclinherit свойства каждой файловой системы для passthrough также.

Я думаю, что предпочтительнее устанавливать ACL на стороне Solaris, а не делать это через окна.

В основном это выглядело бы примерно так:

chmod -R A=\
group:suDevelopers:full_set,\
group:sysadmins:full_set,\
/tank/projects

chmod -R A=\
group:suDevelopers:full_set:allow,\
group:suStaff:full_set:allow,\
group:suContractors:full_set:allow
/tank/storage

chmod -R A=everyone@:full_set:allow /tank/sandbox

и т. д. по мере необходимости. Вы также можете использовать read_set для разрешений только для чтения.

Есть много других способов избавиться от вещей с помощью ACL, это чрезвычайно мощная система в Solaris. Ты можешь читать man chmod и man zfs для подробностей.

Есть также Эта статья что дает еще несколько примеров.

Также убедитесь, что вы используете /usr/bin/chmod вместо того /usr/gnu/bin/chmod который, я считаю, используется по умолчанию.