- useradd -p, Andrey, 12:58 , 13-Мрт-07 (1)
- useradd -p, sickboy, 13:33 , 13-Мрт-07 (2)
>>-p, --password PASSWORD Используйте зашифрованный пароль для новог пользователя. >> >>А как создать этот зашифрованный пароль? > >htpasswd Нужно обойтись без htpasswd, в shadow имеется такой зашифрованный пароль: $1$L7jh6fLj$Cqo.MzETAQNrR5VaJYQef. В man'е crypt(3) написано:
Если salt является строкой символов, начинающейся с "$1$", за которой идет максимум восемь символов, и, возможно оканчивающейся "$", то, вместо использования алгоритма шифрования DES, функцией crypt библиотеки glibc будет использован алгоритм, основанный на MD5. Результатом работы этого алгоритма будет до 34 байтов, а именно "$1$<строка>$", где <строка> означает до 8 символов, взятых из salt после "$1$", за которыми следует 22 байта, выбранных из набора [a-zA-Z0-9./]. В этом случае значение имеет весь ключ (вместо первых 8 байтов). В моем случае <строка> - L7jh6fLj <?> - Cqo.MzETAQNrR5VaJYQef. Каким образом генерируюся эти строки? И что они означают? Из man'а не понятно.
- useradd -p, YuryD, 14:12 , 13-Мрт-07 (3)
- useradd -p, sickboy, 14:56 , 13-Мрт-07 (4)
>>Каким образом генерируюся эти строки? И что они означают? Из man'а не >>понятно. > > > Вот кусок на перле >$cryptpwd = crypt($upass, &salt); > >а вот сама salt ># see /usr/src/usr.bin/passwd/local_passwd.c or librcypt, crypt(3)Спасибо, как получить salt и шифрованный пароль я понял. Но я не пойму как соотнести те строки, получаемые, например ваши примером, с записью в shadow (той, что я привел выше).
- useradd -p, YuryD, 15:13 , 13-Мрт-07 (5)
- useradd -p, sickboy, 16:31 , 13-Мрт-07 (6)
>Ну нету у меня shadow, зато есть pwd_mkdb , строящая БД. Т.е. Тот шифрованный пароль из shadow, что я привел, в полное мере соответствует и master.passwd (на FreeBSD 6.2). >во freebsd можно с некоей осторожностью манипулировать непосредственно с master.passwd, а >затем ее перестраивать
Вот в том то и дело, что мне тоже нужно это делать. Но только как получить именно такой формат запис пароля: $1$WzG79XX8$KwMbxqhnml22JSxtqY4LE0 С учетом всего вышесказанного, как я могу сгенерировать salt (в принципе любой длины) и хэш возвращаемый crypt'ом будет длиной 13 символов? Или в shadow/master.passwd достаточно поместить результат crypt('user_pass', salt)?
- useradd -p, Medlar, 10:48 , 14-Мрт-07 (7)
- useradd -p, sickboyrenton.name, 12:14 , 14-Мрт-07 (8)
- useradd -p, lavr, 13:29 , 14-Мрт-07 (9)
- useradd -p, sickboy, 13:53 , 14-Мрт-07 (10)
>>>Посмотри здесь >> >>Спасибо, но все равно остается открытым вопрос, как заставить функцию crypt() использовать >>алгоритм MD5, чтобы получился шифрованный пароль длиной 34 символа, >>$1$x32TbuHx$Wh.f/Pu23E8IVlaIBzLow/ >>а не 13, в случае использования DES. > >брр, явное непонимание: читать man crypt до посинениния, ради интереса посмотреть Уже третий день читаю. >master.passwd на предмет длины encrypted_password (она у всех одинакова?) :) Все одинаковые, 34 символа, включая префикс $1$, указывающий, что используется MD5. >ps. в /usr/ports/security - разобрать несколько генераторов паролей, может это даст толчок... Display all 724 possibilities?
- useradd -p, YuryD, 07:31 , 15-Мрт-07 (11)
- useradd -p, gennady, 12:09 , 15-Мрт-07 (12)
- useradd -p, sickboy, 12:11 , 15-Мрт-07 (13)
>>-p, --password PASSWORD Используйте зашифрованный пароль для новог пользователя. >> >>А как создать этот зашифрованный пароль? > >Еще можно grub-md5-crypt воспользоваться, если grub стоит Ага, или просто chpasswd -m.
|