Я пытаюсь установить vsftpd с некоторыми виртуальными пользователями, используя DB Berkeley. В основном я следую этому руководству: http://www.neant.ro/2012/04/secure-ftp-with-vsftpd/. Все работает отлично, но я хочу, чтобы пароли хэшировали внутри базы данных. Я использую CentOS 6.3 с glibc 2.12.Зашифрованный пароль в Berkeley DB для vsftpd с помощью pam_userdb.so
Из manpage pam_userdb.so Я предполагаю, что могу использовать то, что предоставляет crypt. Если мы рассмотрим справочную страницу crypt (3), мы сможем использовать SHA-256 и SHA-512. Я бы использовал один из них.
Я сомневаюсь, как его реализовать. Из того, что я знаю, мне нужно перейти в файл pam.d и отредактировать и добавить аргумент crypt, но ... какое значение я должен ему дать? 5 для SHA-256? 6 для SHA-512?
auth sufficient pam_userdb.so db=/path/to/db/virtual-users crypt=?
account sufficient pam_userdb.so db=/path/to/db/virtual-users crypt=?
session sufficient pam_loginuid.so
Теперь мне нужен пароль в SHA-256/SHA-512 внутри базы данных. Какой правильный способ получить хэш? Полагаю, я должен использовать функцию криптографии. Тем не менее, мне нужно получить его с помощью Ruby, есть ли способ?
Заранее спасибо за помощь,
Спасибо, что ответили, не могли бы вы пожалуйста, поделитесь со мной вашей скомпилированной версией или расскажите мне, как сделать сам? Еще раз спасибо! – hveiga