Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Dmitry.Karpov http://prof Гость
|
Добавлено: Пт Дек 20 2002 19:59 Заголовок сообщения: Делегирование другому админу прав на изменение пароля указанным юзерам |
|
|
Есть FreeBSD, на нем заведены юзеры. Некоторые из них регулярно забывают свои пароли. Можно ли дать другому админу.право на изменение пароля юзеров из группы "lamer", но не других? В принципе, я могу написать все на C и выставить атрибут SetUID->root, но хотелось бы юолее элегантно. Про sudo я слышал, но еще не юзал.
PS для знатоков Форточек: Можно ли так сделать в W'NT/2k? |
|
Вернуться к началу |
|
|
Kest Гость
|
Добавлено: Пт Дек 20 2002 21:52 Заголовок сообщения: А группа lamer постоянна? Если да, то (+) |
|
|
В /usr/local/etc/sudoers вроде можно пробивать права на выполнеия команды с конкретным путем и параметрами? тогда рисуй вокруг этой ботвы обвязку на шелле Насчет Виндозы - в НТ вроде точно никак, в AD - возможно, по крайней мере в NDS от Novell'а, откуда Микрософт перла идеологию, такая возможность есть. |
|
Вернуться к началу |
|
|
Dmitry.Karpov http://prof Гость
|
Добавлено: Сб Дек 21 2002 12:51 Заголовок сообщения: А конкретнее? |
|
|
Состав группы будет иногда меняться. В принципе, можно при каждом изменении master.passwd запускать скрипт, который будет снова составлять список ламеров, неспособных запомнить свой пароль. Но хотелось бы видеть более детальную проработку эого вопроса, если кто-то так уже делал, а то я с sudo еще не имел дела...
А как это выглядит в NDS и AD? |
|
Вернуться к началу |
|
|
Kest Гость
|
Добавлено: Сб Дек 21 2002 15:40 Заголовок сообщения: Re: А конкретнее? |
|
|
О! sudo - мощная вещь, позволяет давать права ровно на то, что надо. В твоем случае я бы наваял такой скриптик: #!/bin/sh
case $1 in 1) # password for lamer N 1 sudo /usr/bin/passwd lamer1 2) sudo /usr/bin/passwd lamer2 ................. case N) sudo /usr/bin/passwd lamerN *) echo "использование: `basename $0 ` 1..N" echo "где: " echo "1 - изменение пароля для ламера 1" ......................... echo "N - изменение пароля для ламера N" esac exit 0 На это файл - chmod a+x, права 755 для рута, wheel, всех остальных. в /usr/local/etc/sudoers написать (через visudo) ALL = NOPASSWD: /usr/bin/passwd ALL = NOPASSWD: /usr/bin/passwd ............. ALL = NOPASSWD: /usr/bin/passwd - типа разрешить второму админу выполнять passwd для определенных имен. Содержимое скрипта и /usr/local/etc/sudoers генерить автоматом или руками. А в NDS (и AD) эта задача решается путем передачи прав друому админу на управление конкретной веткой домена |
|
Вернуться к началу |
|
|
Dmitry.Karpov http://prof Гость
|
Добавлено: Сб Дек 21 2002 18:24 Заголовок сообщения: Извратный скрипт! |
|
|
А может, проще сканировать файл паролей на предмет наличия данного юзера в нужной группе? |
|
Вернуться к началу |
|
|
Kest Гость
|
Добавлено: Сб Дек 21 2002 19:26 Заголовок сообщения: На вкус и цвет ... =))) |
|
|
Какая разница, как именно? Главное здесь - с помощью sudo дать права на выполнение passwd нужному человеку |
|
Вернуться к началу |
|
|
AlexanderK Гость
|
Добавлено: Пн Дек 23 2002 10:52 Заголовок сообщения: Если без кривых хаков - то только sudo (-) |
|
|
: |
|
Вернуться к началу |
|
|
Dmitry.Karpov http://prof Гость
|
Добавлено: Пн Дек 23 2002 11:26 Заголовок сообщения: Это я догадался; дело в том, что даже sudo требует кривых хаков на тему выяснения принадлежности юзера к нужной группе... (-) |
|
|
- |
|
Вернуться к началу |
|
|
AlexanderK Гость
|
Добавлено: Пн Дек 23 2002 12:52 Заголовок сообщения: Пардно, условие невнимательно прочитал (+) |
|
|
в таком раскладе хачить нужно уже passwd вроде бы, а не sudo. Причем вроде несложно - добавить один if, проверяющий в самом начале gid. Да даже можно и саму программу не хачить, а сделать элиасом на passwd скрипт из двух строчек.
Кстати, если сделать авторизацию через LDAP - там нельзя отбранчить, пардон, отпочковать.. или как там этоназывается - в общем OU забабахать и туда отдельного админа сунуть? |
|
Вернуться к началу |
|
|
|