URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 7437
[ Назад ]

Исходное сообщение
"Как в программе сменить пароль пользователя"

Отправлено matveev_roman , 24-Июн-08 12:15 
Доброе время суток
Возможно ли из программы менять пароли пользователей в системе. естественно из под root. если да, то как? какими функциями? заранее спасибо!

Содержание

Сообщения в этом обсуждении
"Как в программе сменить пароль пользователя"
Отправлено NuINu , 24-Июн-08 12:42 
>Доброе время суток
>Возможно ли из программы менять пароли пользователей в системе. естественно из под
>root. если да, то как? какими функциями? заранее спасибо!

мда.. изучи файл /etc/shadow, а там и до функций доберешься.
crypt, кажеться.


"Как в программе сменить пароль пользователя"
Отправлено vic , 24-Июн-08 12:42 
>Доброе время суток
>Возможно ли из программы менять пароли пользователей в системе. естественно из под
>root. если да, то как? какими функциями? заранее спасибо!

ИМХО
иногда путь popen("/usr/bin/passwd", "rw"); оказывается приемлимым. Способы хранения паролей в системе могут быть разными, поэтому простых функций нет. Хотя могу ошибаться.


"Как в программе сменить пароль пользователя"
Отправлено matveev_roman , 24-Июн-08 13:23 
а вот если passwd заюзать. если бы можно было бы ей параметры просто передать. но у меня пока не выходит ничего (.

"Как в программе сменить пароль пользователя"
Отправлено angra , 24-Июн-08 14:45 
Не лезьте в файлы напрямую, начните с man setpwent и просмотрите сопутствующие страницы.

"Как в программе сменить пароль пользователя"
Отправлено const , 26-Июн-08 17:58 
>Возможно ли из программы менять пароли пользователей в системе. естественно из под
>root. если да, то как? какими функциями? заранее спасибо!

Смотря в какой системе. Если используется PAM, то правильнее через него и пароли менять. Или командой passwd. Файлы /etc/passwd и /etc/shadow имеет смысл править напрямую, если аутентификация производится именно через них.


"Как в программе сменить пароль пользователя"
Отправлено Gennadi , 04-Июл-08 17:53 

echo "user_name:password" | chpasswd


man chpasswd