у нас есть группа под названием JBossAdmins, и пользователи этой группы должны редактировать некоторые файлы / etc на RHEL 6:
Моя первая идея заключалась в том, чтобы дать следующие разрешения sudo:
%JBossAdmins ALL=(root) /bin/vi /etc/httpd/*
%JBossAdmins ALL=(root) /bin/vi /etc/java/*
%JBossAdmins ALL=(root) /bin/vi /etc/jboss/*
Очевидно, что теперь пользователи могут запустить vi как root, а затем отредактировать любой файл, выполнив f.e. :e /etc/passwd
Итак, sudo - не очень хорошая идея.
Тогда мне пришло в голову сделать chgrp JBossAdmins -R path
а затем chmod g+rw -R path
.
Но я не совсем уверен, хорошая ли это идея.
Итак, учитывая последствия для безопасности, как лучше всего разрешить группе пользователей редактировать какой-либо файл / etc? Есть ли лучшие альтернативы, чем sudo или chgrp / chmod?
Отдавать кому-то sudo
в vi
всегда плохая идея. Они могут выйти из vi с помощью корневой оболочки, выполнив команду :shell
команда. Вы этого не хотите.
Альтернативой для вас может быть sudoedit
. Затем вы можете предоставить своим пользователям / группам права на sudoedit
в sudoers
-файл:
%JBossAdmins <hostname>: sudoedit /etc/httpd/*
%JBossAdmins <hostname>: sudoedit /etc/java/*
%JBossAdmins <hostname>: sudoedit /etc/jboss/*
Вместо этого вы можете использовать acls и сделать что-то вроде
setfacl -m g:JBossAdmins:rw /path/to/file
который предоставит разрешение на чтение / запись для всех в группе JBossAdmins для определенных файлов.