3

Если пользователь выполняет команду вроде

sudo /etc/init.d/apache2 restart

Я хотел бы обнаружить это и предотвратить выполнение этого скрипта.

Могу ли я сделать это без изменения скрипта apache2 ?

3 ответа3

4

Скорее всего, вы хотите sudo chmod o-x /etc/init.d/apache2 . Это предотвратит запуск пользователем apache2 любым пользователем, если он не является суперпользователем, владельцем файла или членом его группы.

Проверьте chmod вики для получения дополнительной информации.

4

Вы можете ограничить, какие команды может выполнять пользователь, и даже какие привилегии они могут выполнять эти команды, используя sudo. Все эти настройки выполняются в /etc/sudoers , который редактируется командой visudo .

Самая базовая конфигурация, которая обычно устанавливается вместе с sudo и позволяет пользователям в группе wheel выполнять программы от имени пользователя root. Страница man sudoers(5) содержит обширную информацию о том, как настроить sudo таким образом, чтобы пользователь мог выполнять только ту программу, к которой у него должен быть доступ, и какие разрешения он должен иметь для выполнения программы.

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

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

3

Вы, вероятно, должны удалить их разрешения sudo . Вы ничего не можете сделать, чтобы они не могли "отменить", если они у них есть. Если вы не можете доверять им разрешения, то они не должны иметь их в первую очередь.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .