Введение
Когда-то давным-давно, еще в мои до'linux'овые времена, мне приходилось администрить Novell'овский сервер,
и после перехода на Linux было сложно привыкнуть к тому скудному, по сравнению с Novell Netware, набору
средств управления правами доступа к файлам. Если в Netware я мог беспроблемно напрямую дать двум юзерам одновременно
доступ на чтение-запись к одному и тому же файлу, еще трем - только на чтение к тому же файлу, а остальным - запрет на доступ,
то в Linux'е такая задача просто не имела решения. Как, впрочем, и многие другие.
Проблема заключается в том, что вся система доступа к файлам в Unix-системах сводиться к установке девяти бит, три из которых
определяют режим доступа к файлу пользователя-владельца ( чтение, запись, запуск ), три - режим доступа к файлу группы-владельца и три - всех остальных.
( Есть еще дополнительные специальные три бита, но они к теме разговора не имеют отношения.:)) В большинстве случаев
этого достаточно, но, к сожалению, не во всех.
Существует решение данной проблемы. Называется оно Linux ACLs -
Access Control Lists - списки контроля доступа, являющиеся версией POSIX ACLs для Linux.
Linux ACLs - это набор патчей для ядра и программ для работы с файловой
системой и пара утилит, дающие возможность устанавливать права доступа к файлам не только для пользователя-владельца и группы-владельца файла, но и для любого
пользователя или группы в отдельности. Т.е., например, если файл принадлежит пользователю root и группе users и имеет
права доступа 0640 ( чтение и запись пользователю-владельцу и чтение группе-владельцу), то можно дать к этому файлу доступ на запись
еще и пользователю user1 из группы lamers, права на чтение пользователю hacker5 из группы crackers и дать
права на чтение и запись группе admins, а пользователю badadmin из группы admins вообще какой-либо доступ запретить.
Версии Linux ACLs есть для всех ядер, начиная с 2.2.12, но нормально работающие
есть только для ядер, начиная с 2.2.17. Linux ACLs работают на машинах с любой архитектурой и предназначены
(на данный момент) только для файловой системы ext2.
Автором данной системы является Andreas Grunbacher,
a.gruenbacher@computer.org. Домашняя страница здесь.
(c)Ерижоков А.А., 2000.
Использование данного документа разрешено только с согласия автора и с указанием первоисточника:
DH's Linux Site