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

Как создать правила sudo для доступа к локальным учетным записям без полномочий root, которые предотвращают выполнение каких-либо действий с определенным файлом?

У меня есть следующий набор правил, который позволяет группе запускать любую команду от имени пользователя "apache":

%Test_team ALL=(apache)  NOPASSWD:ALL

Я хочу ограничить возможность запуска любой команды (cat / cp / rm / vi и т. Д.) Для этого файла, чтобы обеспечить безопасность его содержимого. Я могу сделать это с помощью одной такой команды:

%Test_team ALL=(apache)  NOPASSWD: !/bin/cat /etc/httpd/conf/httpd.conf.bak

Как я могу сделать это для всех команд? Является ли это возможным?

Вы не можете ограничить доступ к файлу с помощью sudo.

Вы не сможете перечислить все возможные команды, которые могут разрешить доступ к этому файлу, особенно если вы разрешаете доступ к оболочке. sudo Конфигурация основана на командах, которые должны быть выполнены, а не на файлах, которые могут быть доступны или не доступны для этих команд.

Вы можете попытаться разрешить одну команду с помощью sudo который устанавливает контекст SELinux, который не разрешает доступ к этому конкретному файлу. Все процессы, запущенные этой командой, будут ограничены.