Installation, Starting/Stopping
# yum install vsftpd
# /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf
# service vsftpd {start,stop,status,...} # 2.2.2(/etc/init.d/vsftpd)
# systemctl {start,stop,status,...} vsftpd[.service] # 3.02(/usr/lib/systemd/system/vsftpd*)
version:
vsftpd-3.0.2-9.el7.x86_64
Note: 不同的版本配置差异非常大,笔者使用 3.0.3 的源码包安装的版本按本文方式配置就完全不生效。
Create FTP user
There are 3 kinds of users in vsftpd:
1. anonymous
2. guest - virtual user
3. local user
PAM with virtual users
# vim /etc/vsftpd/virtual_user_list.txt
xxx
xxx@xxx
# db_load -T -t hash -f /etc/vsftpd/virtual_user_list.txt /etc/vsftpd/virtual_user_list.db
# chmod 600 /etc/vsftpd/virtual_user_list.db
# cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.default
# vi /etc/pam.d/vsftpd
auth required pam_userdb.so db=/etc/vsftpd/virtual_user_list
account required pam_userdb.so db=/etc/vsftpd/virtual_user_list
- /etc/vsftpd/virtual_user_list.txt
用于生成 db_load 读取生成用户密码数据库/etc/vsftpd/virtual_user_list.db
, PAM 读取/etc/vsftpd/virtual_user_list.db
进行访问控制,文件名可以任意取,只需要配置正确就行。
db_load 上述命令行选项对应的/etc/vsftpd/virtual_user_list.txt