1. Нужно указывать полный путь до su.
2. Зачем su, если Вы уже пользуетесь sudo? sudo от рута не спрашивает пароль и не требует экранирования, которое делается несколько сложнее, чем Вы написали (это тоже security flaw, кстати).
3. Любой пользователь может отмонтировать то, что примонтировал другой пользователь. Это так задумано?
P.S. Это уже не к security, а к стилю: скрипты админа принято складывать в /usr/local/bin. /usr/bin — для руления менеджером пакетов.
Решено: setuid-бит не работает со скриптами (скрипт для монтирования образов создан)
Модераторы: /dev/random, Модераторы разделов
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
-
/dev/random
- Администратор
- Сообщения: 5458
- ОС: Gentoo
Re: Решено: setuid-бит не работает со скриптами
watashiwa_daredeska писал(а): ↑24.06.2010 13:553. Любой пользователь может отмонтировать то, что примонтировал другой пользователь. Это так задумано?
Более того, если кто-то что-то попытается примонтировать, то, что примонтировал другой пользователь, отмонтируется. Одновременно работающие пользователи будут мешать друг другу. Это тоже задумано?
-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Решено: setuid-бит не работает со скриптами
Лучше писать if [ rw = "$2" ]; then, ибо "$2" может и с "-" начинаться.
Мои розовые очки
-
drBatty
- Сообщения: 8735
- Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
- ОС: Slackware-current
Re: Решено: setuid-бит не работает со скриптами
watashiwa_darede... писал(а): ↑24.06.2010 14:18Лучше писать if [ rw = "$2" ]; then, ибо "$2" может и с "-" начинаться.
почему?
Код: Выделить всё
$ [ "-w" = rw ]; echo $?
1-
watashiwa_daredeska
- Бывший модератор
- Сообщения: 4038
- Статус: Искусственный интеллект (pre-alpha)
- ОС: Debian GNU/Linux
Re: Решено: setuid-бит не работает со скриптами
потому что не все реализации такие заботливые, как GNUтая. :)
Мои розовые очки
-
math
- Сообщения: 305
- Статус: Ъ участник
- ОС: LMDE
Re: Решено: setuid-бит не работает со скриптами
/dev/random писал(а): ↑24.06.2010 14:12watashiwa_daredeska писал(а): ↑24.06.2010 13:553. Любой пользователь может отмонтировать то, что примонтировал другой пользователь. Это так задумано?
Более того, если кто-то что-то попытается примонтировать, то, что примонтировал другой пользователь, отмонтируется. Одновременно работающие пользователи будут мешать друг другу. Это тоже задумано?
Да. Точка монтирования-то одна. Если с этим возникнут проблемы, тогда буду решать. Но это вряд-ли - на компе 2 юзера - я и testuser и когда они работают одновременно они друг о друге знают.
По поводу /usr/local/bin. Мне кажется для слаки правильнее оставить /usr/local для тестовых установок из исходников, перед созданием пакета. Аргумент, что /usr/bin - только для менеджера пакетов в этом случае не проходит, так как админа вполне можно считать за менеджера пакетов, а все "левые" файлы - входящими в один большой условный пакет "local_admin.txz"
По поводу "rw" = "$2". Тогда уж лучше ".$2" = ".rw". Пожалуй сделаю так для универсальности.