LINUX.ORG.RU

Ответ на: комментарий от anonymous

Да, почитал man sudoers, почесал голову.

onhydro
() автор топика

не делая его sudoer'ом

Очень странный подход - заранее отвергать инструмент, специально разработанный для решения такого рода задач...

Впрочем, вариант с chmod/chown, предложенный выше, тоже вполне работоспособен...

Serge10 ★★★★★
()
Ответ на: комментарий от onhydro

Это всем разрешить конкретный бинарь.

Это не проблема, если этот бинарь сам ответственно решает свои задачи. Один из таких бинарей и есть sudo. Но, на самом деле таких бинарей много, это и ping и mount и ещё пучёк. Ведь указав конкретный диск в /etc/fstab с опцией user, mount уже может его монтировать от пользователей, а остальные будет всё равно будет отвергать, ибо знает, что он (может) быть суидным. Как следствие, можно сделать обёрку над любым бинарем, который будет предварительно проверять по некому конфигу разрешения, кому можно действительно запустить уже другой бинарь, как это делает sudo, но ограничения могут быть так выстроенны, что этот конфиг может писать уже человек, у которого нет прав править /etc/sudoers.

vodz ★★★★★
()
Последнее исправление: vodz (всего исправлений: 1)
Ответ на: комментарий от vodz

Но, на самом деле таких бинарей много, это и ping и mount и ещё пучёк.

Кстати говоря, ping уже избавлен от сего бремени следующим образом:

$ ls -l /usr/bin/ping
-rwxr-xr-x 1 root root 60112 июл 12 11:52 /usr/bin/ping
$ getcap /usr/bin/ping
/usr/bin/ping = cap_net_raw+ep
Deleted
()
Ответ на: комментарий от Deleted

Кстати говоря, ping уже избавлен от сего бремени следующим образом:

Да я в курсе. Но это скорее защита от ошибок в libc/лоадере, ибо портабельные проверки, что для raw-сокет нужны привелегии, а флудить можно только настоящему руту уже в коде утилиты ping давно есть.

vodz ★★★★★
()
Ответ на: комментарий от onhydro

suid bit

Это всем разрешить конкретный бинарь.

Ну вам же в любом случае потребуется какое-то рутовое посредничество. Или вы уж совсем защиту Linux-а не уважаете? :)

Если не нравится sudo, то можно написать какую-нибудь свою упрощенную запускалку с suid-битом, которая проверяет, кто её «родитель», и если родитель правильный, то запускает нужный процесс.

vinvlad ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.