pam_userdb 的现代替代品(用于 vsftpd)

pam_userdb 的现代替代品(用于 vsftpd)

很多年前,我根据互联网上仍然可以找到的一些操作指南,使用 pam_userdb 设置了一个具有虚拟用户的 vsftpd 服务器。

像这样:一个名为/etc/pam.d/vsftpd.virtual

#%PAM-1.0
auth    required pam_userdb.so db=/etc/vsftpd/users crypt=crypt
account required pam_userdb.so db=/etc/vsftpd/users crypt=crypt
session required pam_loginuid.so

里面的设置/etc/vsftpd/vsftpd.conf

pam_service_name=vsftpd.virtual

以及包含用户和密码哈希值的 BerkeleyDB(/etc/vsftpd/users.db)。

根据的手册页pam_userdb,该模块仅支持明文密码或crypted 密码,始终在 BerkeleyDB 中。

同时,这种方法对我来说似乎既过时又不切实际,因为纯crypt文本密码不安全(更不用说明文变体了),而包含这些密码的 BerkeleyDB 的处理使得使用一些包装器成为必要。

所以:bcrypt是否存在一些替代的 PAM 模块,例如可以处理带有用户和密码的纯文本文件?或者至少使用某种 SHA 哈希的密码?可以使用例如htpasswd(或mkpasswd)进行更新?像 Dovecot 用户文件或用于 Lighttpd 等的 htaccess 文件?

就像是

some_user:$2y$05$ensqtXGZXUf5DQosKk51.utplrWUqkeZzNNI8.lCVT.K86uillL4a

?我想 vsftpd 也可以以同样的方式使用其他 PAM 模块?谢谢大家的帮助!

相关内容