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

Разрешение пользователю выполнять что-то

Каков наилучший способ разрешить новому пользователю, которого я только что создал в ubuntu linux 9.04, выполнить сценарий, который требует некоторого sudo, не позволяя ему использовать sudoers?

Дело в том, что я хочу дать пользователю только возможность выполнять этот сценарий, не позволяя ему делать что-либо еще.

Есть простой способ сделать это?

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

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

Lshell - это решение. Вы можете ограничить выполнение любых команд для своих пользователей. В сочетании с sudo и MySecureShell дает вам мощное решение.

http://lshell.ghantoos.org/

Если он будет более гибким (например, вы можете добавить другие сценарии позже или вы можете захотеть добавить / удалить права многих пользователей на выполнение файла), вы можете создать группу, добавить пользователя в группу, установить групповое владение файлом в этой группе, а затем добавьте права на выполнение группы.

Вы не можете добавить бит suid в свой сценарий оболочки. Итак, если ваш shellscript принадлежит root, вы делаете

sudo chown root:root someScript
sudo chmod u+s someScript

Это сделает это.