====== Списки доступа (POSIX ACL) ====== Управление списками доступа POSIX ACL (Access Control Lists). http://savannah.nongnu.org/projects/acl/ [[https://wiki.debian.org/Permissions#Access_Control_Lists_in_Linux|Access Control Lists in Linux]] [[samba:samba#ntfs-acls|Использование в Samba]] [[Eiciel:Eiciel|Графический интерфейс Eiciel]] ====== Порядок определения доступа ====== Может ли пользователь выполнить действие над файлом или папкой определяются следующим образом: - Используются права владельца, если пользователь им является. - Используются права, указанные конкретно для этого пользователя. - Если действие разрешено хотя бы для одной из группы в которую входит пользователь. - Если пользователь не входит ни в одну группу описанную в ACL, то используются права для other. ====== Установка ====== apt-get install acl ====== Проверка поддержки ====== Для того, чтобы проверить поддерживаются ли списки доступа (ACL) нужно выполнить команду: tune2fs -l /dev/sdaX | grep acl где''/dev/sdaX'' это имя устройства. Для систем с [[lvm:lvm|LVM]] нужно использовать такой вариант: tune2fs -l /dev/mapper/vg01-home | grep acl где ''/dev/mapper/vg01-home'' это имя логического тома Если ACL поддерживаются то в выводе команды будет примерно это: Default mount options: user_xattr acl ====== setfacl ====== Установка прав доступа FIXME Пример: Рекурсивно ''-R'' удаляем существующие права ''-b'' и из файла ''-M'' заданного в ''$acl_file'' применяем права и умолчания. #!/bin/bash # Путь path=/srv/share01 # Права acl_file=/tmp/tmp.acl cat << 'EOF' |tee $acl_file user::rwx group::rwx group:Group_F:rwx group:Group_R:r-x user:User_F:rwx user:User_R:r-x mask::rwx other::--- default:group:Group_F:rwx default:group:Group_R:r-x default:user:User_F:rwx default:user:User_R:r-x default:mask::rwx default:other::--- EOF setfacl -b $path setfacl -R -b -M $acl_file $path rm $acl_file ====== getfacl ====== FIXME Отображение списка контроля доступа к файлам и папкам. ===== Сохранение списка прав в файл ===== getfacl -R ИМЯ_ОБЪЕКТА > ИМЯ_ОБЪЕКТА.acl ====== Ссылки ====== **[[http://help.ubuntu.ru/wiki/access_control_list|Access Control List - списки контроля доступа]]** [[http://www.calculate-linux.org/main/ru/setting_filesystem_acl|Настройка прав доступа ACL]] [[https://help.ubuntu.com/community/FilePermissionsACLs|File Permissions ACLs]] [[http://rus-linux.net/MyLDP/BOOKS/Linux_Foundations/32/ch32.html|Библиотека сайта rus-linux.net: Фундаментальные основы Linux. Часть VIII. Механизмы безопасной работы с файлами]] [[https://www.computerhope.com/unix/ugetfacl.htm|Linux getfacl command]] [[https://www.computerhope.com/unix/usetfacl.htm|Linux setfacl command]] {{tag>Admin Linux Debian}}