Несколько лет назад я настроил сервер vsftpd с виртуальными пользователями в соответствии с некоторыми инструкциями (до сих пор), которые можно найти в Интернете, используя pam_userdb.
Вот так: файл с именем /etc/pam.d/vsftpd.virtual
:
#%PAM-1.0
требуется авторизация pam_userdb.so db=/etc/vsftpd/users crypt=crypt
требуется учетная запись pam_userdb.so db=/etc/vsftpd/users crypt=crypt
требуется сеанс pam_loginuid.so
Настройка внутри /etc/vsftpd/vsftpd.conf
:
pam_service_name = vsftpd.virtual
И BerkeleyDB, содержащий хэши пользователя и пароля (/etc/vsftpd/users.db
).
Согласно справочной странице pam_userdb
, этот модуль поддерживает только пароли в открытом виде или склеп
ed, всегда в BerkeleyDB.
Между тем такой подход кажется мне и устаревшим, и непрактичным, поскольку склеп
ed пароли небезопасны (не говоря уже о варианте с открытым текстом), и обработка BerkeleyDB, содержащей их, требует использования некоторой оболочки.
Так: Есть ли какой-нибудь альтернативный модуль PAM, который, например. может обрабатывать обычный текстовый файл с пользователями и bcrypt
пароли? Или, по крайней мере, с паролями, использующими хэш SHA? Это может быть обновлено с помощью, например. htpasswd
(или же mkpasswd
)? Что-то вроде пользовательского файла Dovecot или файла htaccess для использования, например. Лайтпд?
Что-то вроде
some_user:$2y$05$enqtXGZXUf5DQosKk51.utplrWUqkeZzNNI8.lCVT.K86uillL4a
? Я полагаю, что vsftpd может использовать какой-то другой модуль PAM таким же образом? Спасибо за помощь!