Все является потенциальной уязвимостью безопасности. Две вещи:
Прежде всего, вы уверены, что для этого нужен root? Зачем? Можете ли вы сделать это с возможностями вместо этого? (Вы, вероятно, можете.)
Тем не менее, ваш пример почти точный. Добавьте звездочку после пути:
Cmnd_Alias WEB_COMMANDS = /path/to/scripts/*
И теперь это будет работать. Но будьте осторожны, если какой-либо из этих сценариев может быть изменен злоумышленником, злоумышленник получает полный доступ к корню . Они могут просто exec('/bin/bash')
и иметь оболочку. Определенно пройдите маршрут возможностей для сценария, если это возможно, и ОБЯЗАТЕЛЬНО заблокируйте каталог сценариев в любом случае. Посмотрите этот ответ unix.se для получения информации об управлении возможностями с помощью сценариев.