Приехал новый сервер. Стоит задача перенести более сотни пользователей со старой FreeBSD 4.9 на новую FreeBSD 7.3. И там и там пока метод шифрования паролей MD5. Но в 7.3 хотелось бы перейти на Blowfish. Прочитаны статьи и форум о переносе пользователей и о замене метода шифрования паролей MD5 на Blowfish. Но я до сих пор в FreeBSD новичёк и не могу совместить их в единый алгоритм. Как перенести пользователей? Перейти на старой машине на blowfish сначала? Перенести с паролями MD5 и потом новый серевер переводить на Blowfish? Несколько смущяет так же и то, что на новой машине хэш моего пароля несколько отличается от хэша на старой машине, хоть пароль на обоих машинах абсолютно одинаковый.
Боюсь, задача чрезвычайно труднорешаемая, поскольку здесь MD5 и Blowfish - это не шифрование, а хеширование, то есть односторонние функции. Теоретически два разных пароля могут иметь одинаковый хеш (пресловутая коллизия), как же тогда восстановить пароль по хешу? А без восстановления не сменить метод хеширования - это же разные и не совместимые алгоритмы. Думаю, что возможен постепенный переход, то есть по мере смены паролей.
Т.е. без ручного вбивания паролей не обойтись?
>Т.е. без ручного вбивания паролей не обойтись?можно потрошителем пройтись;))) если время есть,
а потом снова захешить уже в блоуфиш.я так понял у вас нет списка паролей в открытом виде?
>Т.е. без ручного вбивания паролей не обойтись?А смысл? Наверняка (не пробовал) старые пароли можно оставить в MD5, и наверняка ломать их никто не будет - файлик с хешами паролей добыть не так-то просто, да и ломать слишком трудно. А при смене пароля они уже будут захешированы тем алгоритмом, какой прикажете. Нужно просто сделать пользователям внушение, чтобы не ленились менять пароли.
>[оверквотинг удален]
>4.9 на новую FreeBSD 7.3. И там и там пока метод
>шифрования паролей MD5. Но в 7.3 хотелось бы перейти на Blowfish.
>Прочитаны статьи и форум о переносе пользователей и о замене метода
>шифрования паролей MD5 на Blowfish. Но я до сих пор в
>FreeBSD новичёк и не могу совместить их в единый алгоритм. Как
>перенести пользователей? Перейти на старой машине на blowfish сначала? Перенести с
>паролями MD5 и потом новый серевер переводить на Blowfish? Несколько смущяет
>так же и то, что на новой машине хэш моего пароля
>несколько отличается от хэша на старой машине, хоть пароль на обоих
>машинах абсолютно одинаковый.клиенты почтовые?!
поправить демоны pop3/imap чтобы сохраняли пароли куда надо, для 100 users - двух-трех
недель будет достаточно чтобы большинство паролей "срисовать", остальным - единицам,
отписать про смену паролей
юзеров можно попробовать перетащить так: 1. копируете на новый сервер со старого файл /etc/master.passwd 2. выполняете на новом сервере команду pwd_mkdb /etc/master.passwd. Сам не пробовал, но по идее должно сработать корректно.
>юзеров можно попробовать перетащить так: 1. копируете на новый сервер со старого
>файл /etc/master.passwd 2. выполняете на новом сервере команду pwd_mkdb /etc/master.passwd. Сам
>не пробовал, но по идее должно сработать корректно.так точно можно делать, я пробовал
>я так понял у вас нет списка паролей в открытом виде?Скажем так, почти есть.
>А смысл? Наверняка (не пробовал) старые пароли можно оставить в MD5, и наверняка ломать >их никто не будет - файлик с хешами паролей добыть не так-то просто, да и ломать слишком >трудно. А при смене пароля они уже будут захешированы тем алгоритмом, какой прикажете.
Т.е. можно скопировать старую часть master.passwd в новый файл и хэши MD5 и Blowfish будут мирно сосуществовать? Самнения бар.
>Нужно просто сделать пользователям внушение, чтобы не ленились менять пароли.
Они о паролях понятия не имеют, т.к. ->
>клиенты почтовые?!
>остальным - единицам, отписать про смену паролейВы просто не представляете, какой фурор это произведёт! Посыпяться звонки: "а что это выскочило?", "а как менять?", "а что менять?" и "что такое пароль?"
>юзеров можно попробовать перетащить так: 1. копируете на новый сервер со старого файл />etc/master.passwd 2. выполняете на новом сервере команду pwd_mkdb /etc/master.passwd.
Что-то вроде:
pwd_mkdb my.master.passwd
ID юзеров не пересекуться? В смысле не потеряю ли единственного себя (не root) из-за того, что мой идентификатор изменится?
>ID юзеров не пересекуться? В смысле не потеряю ли единственного себя (не
>root) из-за того, что мой идентификатор изменится?на чистой системе пользователей еще нет, нес чем будет пересекаться
и что вам мешает создать одного единственного себя с нужным ИД?и по времени от старта топика вы уже могли поднять пару виртуалок и попробовать ;)
>на чистой системе пользователей еще нет, нес чем будет пересекаться
>и что вам мешает создать одного единственного себя с нужным ИД?Я так и сделал уже с самого начала. Могу себя со старой машины и не переносить. Вопрос был в том, не получит ли кто-то другой в процессе автомата мой ID?
>и по времени от старта топика вы уже могли поднять пару виртуалок
>и попробовать ;)А то у меня других дел нет. Я тут и швец и жнец и на барабане дудец.
>Т.е. можно скопировать старую часть master.passwd в новый файл и хэши MD5
>и Blowfish будут мирно сосуществовать? Самнения бар.Думаю, что будут. Если посмотреть, как устроен master.passwd, а также почитать man 5 passwd и man 3 crypt, то видно, что каждый хеш начинается с $цифра$, по цифре "познаётся" метод хеширования: 1 - MD5, 2 - Blowfish и т. д. Таким образом проверятель паролей всегда в курсе, как проверять.
>Если посмотреть, как устроен master.passwd, а также почитать man
>5 passwd и man 3 crypt, то видно, что каждый хеш
>начинается с $цифра$, по цифре "познаётся" метод хеширования: 1 - MD5,
>2 - Blowfish и т. д. Таким образом проверятель паролей всегда
>в курсе, как проверять.А вот тут тоже есть замечание. Первые хэши паролей на старой системе начинаются с произвольного символа. И таких пользователей примерно с полсотни. А вот далее уже идёт узнаваемая комбинация $1$.
Итак, правильно ли я понимаю, что мне следует вначале активировать на новой машине хэширование Blowfish. Затем:
pwd_mkdb my.master.passwd
vipw
reboot
?
лично я вижу такое решение:
1. Перенос файлов /etc/master.passwd и /etc/group со старого сервера на новый
2. pwd_mkdb /etc/master.passwd
3. Введение заново паролей пользователей (при условии, что по дефолту уже стоит blowfish)
А вот еще 5 копеек в кассу - если юзеры - чисто почтовые, и нет шифрования, можно на пару дней включить на серваке сниффер pop3 паролей, будет список :)
>А вот еще 5 копеек в кассу - если юзеры - чисто
>почтовые, и нет шифрования, можно на пару дней включить на серваке
>сниффер pop3 паролей, будет список :)кстати, замечательный способ.
>А вот тут тоже есть замечание. Первые хэши паролей на старой системе
>начинаются с произвольного символа. И таких пользователей примерно с полсотни. А
>вот далее уже идёт узнаваемая комбинация $1$.Я тут подумал, а не являются ли хэши, начинающиеся с произвольного символа, захешированы по DES?
>>А вот тут тоже есть замечание. Первые хэши паролей на старой системе
>>начинаются с произвольного символа. И таких пользователей примерно с полсотни. А
>>вот далее уже идёт узнаваемая комбинация $1$.
>
>Я тут подумал, а не являются ли хэши, начинающиеся с произвольного символа,
>захешированы по DES?Собственно говоря, мой почтовый сервер в течении многих лет перелезал с FreeBSD2.2.8 до
6.4, и всегда перенос master.passwd не давал сбоев, кроме uid... Далее - в pop3 пароли идут plaintext, поэтому любой сниффер их легко отловит. Напишите ОЧЕНЬ ВАЖНОЕ письмо, и заставьте его получить - вот вам и пароли...