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

Напишите сценарий оболочки, который может запускать только пользователь sudo в Ubuntu

Я пишу сценарий оболочки, который должен запускаться пользователями только в списке пользователей sudo, как это сделать?

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

Это сделать намного проще, просто поместите ниже в начале вашего скрипта

if [ `id -u` -ne 0]
then
    echo "Must be root"
    exit 1
fi

в начале сценария.

Поместите сценарий в каталог, доступный для чтения только root. Таким образом, пользователи не смогут вызвать его случайно или намеренно или даже прочитать его в поисках дыр.

когда вы запускаете скрипт с sudo, sudo можете проверить группу для вас:

%yourgroup ALL=/your/command

когда ты вставляешь это /etc/sudoers, sudo проверит, входит ли пользователь в группу yourgroup, когда пользователь выполняет sudo /your/command. таким образом вам не нужно вручную добавлять нового пользователя в скрипт.