一、安装vsftpd
sudo yum install vsftpd
启动:
sudo service vsftpd start
二、建立虚拟用户:
1、虚拟用户口令文件:
新建一个虚拟用户口令文件ftplog.txt文件:
[nai.zhao@DELL-F847S12 data]$ vi ftplogin.txt
奇数行为用户名,偶数行为密码
jiaochafenxi
jiaochafenxi
2、生成口令认证文件
口令认证文件使用db_load命令生成,db_load命令在db4-utils软件包中,使用
[nai.zhao@DELL-F847S12 data]$ rpm -qa | grep db4-utils
查看软件包有没有安装。
执行
[nai.zhao@DELL-F847S12 data]$ sudo db_load -T -t hash -f ftplogin.txt /etc/vsftpd/vsftpuser.db
生成口令认证文件。
3、建立虚拟用户所需的PAM所需的配置文件
在/etc/pam.d/目录下新建一个文件vsftpd.v
[nai.zhao@DELL-F847S12 data]$ sudo vim /etc/pam.d/vsftpd.v
vsftpd.v这个文件在后面的配置中会用到。
添加两行:
auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpuser
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpuser
这里要注意:32位系统为/lib,64位系统为/lib64
4、建立虚拟用户工作目录
在建立好PAM配置文件以后,就要建立虚拟用户的工作环境,这一步的作用是用来映射所有的虚拟用户。
useradd -s /sbin/nologin ftp_virual -d /data/vsftpd_virtual_home/
在这一步中,建立的是一个宿主用户,不用来登陆,只用来让虚拟用户来访问ftp
5、修改vsftpd.conf文件
在文件中要有:
pam_service_name=vsftpd.v
userlist_enable=YES
tcp_wrappers=YES
chroot_local_user=YES
local_enable=YES
guest_enable=YES
guest_username=ftp_virtual #宿主用户名
user_config_dir=/etc/vsftpd/vsftpduser_conf #用户配置文件目录
新建一个新目录
[nai.zhao@DELL-F847S12 ~]$ sudo mkdir /etc/vsftpd/vsftpduser_conf/
在/etc/vsftpd/vsftpduser中以虚拟用户的名称创建用户配置文件
sudo vim /etc/vsftpd/vsftpduser_conf/jiaochafenxi
local_root=/data/vsftpd_virtual_home/jiaochafenxi
重启ftp:
[nai.zhao@DELL-F847S12 ~]$ sudo service vsftpd restart