一、采用本地用户方式
1、 编辑/etc/vsftpd.conf文件,允许本地用户进行ftp登录,设置
local_enable=YES
2、 边界/etc/ftpusers文件,将允许本地用户进行ftp登录的本地用户删除。(存在此文件中的用户默认情况下是不允许登录的),例如要允许root用户登录,则将root注释即可:
#root
3、 设定用户登录ftp时默认的目录,如/home/vms/sdr/work,则编辑/etc/vsftpd.conf文件并添加如下信息即可:
local_root=/home/vms/sdr/work
4、 设置standalone方式启动vsftpd,边界/etc/vsftpd.conf,设置
listen=YES
5、 重启vsftpd
service vsftpd restart
6、 /etc/vsftpd.conf文件各参数的说明可以参考:http://www.suse.url.tw/sles10/lesson18.htm#4
二、采用虚拟用户方式
1、 编写文本文件,并输入用户名、密码,可以同时添加多个虚拟用户,规则为用户名、密码各占一行
vi login.txt
内容为:
userA
passwordA
2、 生成用户的数据库验证信息,前提是系统安装了db_load命令
db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db
此命令将在/etc/vsftpd目录下生成vsftpd_login.db文件
3、 更改vsftpd_login.db的权限
chmod 600 /etc/vsftpd/vsftpd_login.db
4、 编辑/etc/pam.d/vsftpd文件
vi /etc/pam.d/vsftpd
并添加如下内容
auth required /lib/security/pam_userdb.so lib=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so lib=/etc/vsftpd/vsftpd_login
此处有一点需要注意,如果是64bitOS,则lib改为lib64
5、 添加用户,如添加用户virtual
useradd virtual
6、 配置/etc/vsftpd.conf,保证有以下信息
local_enable=YES
pam_service_name=vsftpd
guest_enable=YES
guest_username=virtual
user_config_dir=/etc/vsftpd/vuser
该配置说明开启虚拟用户,并将虚拟用户映射为virtual用户,针对每一个虚拟用户,其配置信息存放在/etc/vsftpd/vuser目录下,该目录可以自定义
7、 为虚拟用户添加配置信息,并存放于/etc/vsftpd/vuser目录下,文件名要求与虚拟用户名字一样,此处为:
vi /etc/vsfptd/vuser/userA
添加配置信息(该信息根据需要可以自定义,其内容参考/etc/vsftpd.conf配置):
anno_world_readable_only=NO
write_enable=YES
anon_upload_enable=YES
local_root=/home/userA/.. #指定用户登录的默认目录
8、 以standalone方式重启vsftpd
service vsftpd restart