Написал скриптик с именем test.pl, который должен запоминать список правил FireWall-а, а затем обрабатывать их
#
@fw=`ipfw show`;
#Однако для выполнения этой команды нужны права root-а, для этого я сделал владельцом файлика root, а группу оставил свою и права 770
После под, root-ом сделал файлик SUID-ым-rwsrwx--- 1 root denis 200 5 ÉÀÌ 09:52 test.pl
При запуске под root-ом все нормально, когда запускаю под собой выдает ошибку:
Insecure $ENV{PATH} while running setuid at ./test.pl line Х.
Что то подобное уже видел в форуме, но не разобрался... Помогите найти решение, нужно что бы скриптик работал для группы.
>решение, нужно что бы скриптик работал для группы.
дык...нельзя скрипты делать suid-ными. подумай сам, это же просто текст программы. реально запускается perl, а не твой скрипт.
варианты обхода: превратить скрипт в бинарник (есть компиляторы), либо сделать (например, на С) бинарник, который вызовет твой скрипт.
и уже БИНАРНИК делать suid или sgid
>>решение, нужно что бы скриптик работал для группы.
>дык...нельзя скрипты делать suid-ными. подумай сам, это же просто текст программы. реально
>запускается perl, а не твой скрипт.Спасибки, что то об этом я не подумал =)
>>>решение, нужно что бы скриптик работал для группы.
>>дык...нельзя скрипты делать suid-ными. подумай сам, это же просто текст программы. реально
>>запускается perl, а не твой скрипт.
>
>Спасибки, что то об этом я не подумал =)man sudo
man suidperl