
我按照文件和互聯網上的內容進行了安裝,libpam-pwdfile
以下是我的配置:
# /etc/vsftpd.conf
listen_ipv6=YES
listen_port=<port>
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
chroot_local_user=YES
allow_writeable_chroot=YES
guest_enable=YES
guest_username=vsftpd
nopriv_user=vsftpd
hide_ids=YES
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/home/vsftpd/$USER
pam_service_name=vsftpd
utf8_filesystem=YES
和
# /etc/pam.d/vsftpd
auth required pam_pwdfile.so pwdfile /etc/vsftpd.passwd
account required pam_permit.so
和
$ useradd --home /home/vsftpd --gid <group> -m --shell /bin/false vsftpd
$ htpasswd -c -b /etc/vsftpd.passwd <virtual user> $(openssl passwd -1 -noverify <password>)
但是,當我使用 FTP 連接到 FTP 時<virtual user>:<password>
,我不斷收到
USER <virtual user>
530 Login incorrect.
那我錯過了什麼?
更新db_load
:如果 vsftpd 配置為使用 db (使用和pam_userdb.so
)但不使用 passwd 文件,我可以正常登入。
答案1
-p
我認為您在調用時缺少該選項htpasswd
這應該有效:
htpasswd -c -p -b /etc/vsftpd.passwd <virtual user> $(openssl passwd -1 -noverify <password>)
請參閱此處以供參考:vsftpd 不接受 MD5 加密的密碼