1.安装vsftpd并开启,设置自启动
[root@ftp1 ~]# yum install -y vsftpd
[root@ftp1 ~]# systemctl start vsftpd
[root@ftp1 ~]# systemctl enable vsftpd
2.创建虚拟用户账号信息文件(奇数行为账户,偶数行为密码)
[root@ftp1 ~]# vim /etc/vsftpd/user.conf
test1
123456
3.用db_load工具创建数据库文件并授予600权限
[root@ftp1 ~]# db_load -T -t hash -f /etc/vsftpd/user.conf /etc/vsftpd/user.db
[root@ftp1 ~]# chmod 600 /etc/vsftpd/user.*
[root@ftp1 ~]# ls -lh /etc/vsftpd/user.*
-rw-------. 1 root root 13 Mar 9 04:59 /etc/vsftpd/user.conf
-rw-------. 1 root root 12K Mar 9 01:25 /etc/vsftpd/user.db
4.创建系统用户vsftpd
[root@ftp1 ~]# useradd vsftpd -s /sbin/nologin
5.创建ftp用户访问目录并授予vsftpd家目录及子目录777权限
[root@ftp1 ~]# mkdir -p /home/vsftpd/xmcsxy
[root@ftp1 ~]# chmod -R 777 /home/vsftpd/
6.编辑pam认证文件,添加两行配置
[root@ftp1 ~]# vim /etc/pam.d/vsftpd
auth sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/user
account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/user
7.修改ftp配置文件
[root@ftp1 ~]# vim /etc/vsftpd/user.conf
chroot_local_user=YES //禁止匿名用户登录
guest_enable=YES //启用虚拟用户
allow_writeable_chroot=YES //允许写入用户主目录
user_config_dir=/etc/vsftpd/vsftpd_user_conf //虚拟用户配置文件目录,配置了此项后,腰围每一个虚拟用户都建立配置文件
8.建立虚拟用户的配置文件
[root@ftp1 ~]# mkdir -p /etc/vsftpd/vsftpd_user_conf
[root@ftp1 ~]# cd /etc/vsftpd/vsftpd_user_conf/
[root@ftp1 vsftpd_user_conf]# vim test1
local_root=/home/vsftpd/xmcsxy //本地用户登录时的目录
anon_upload_enable=YES //允许登录用户有上传权限
write_enable=YES //允许登录用户有写权限
9.配置完成后重新加载服务
[root@ftp1 ~]# systemctl restart vsftpd
10.确认关闭fireawlld以及selinux
[root@ftp1 ~]# systemctl stop firewalld
[root@ftp1 ~]# setenforce 0
11.在ftp访问目录中添加一个文件,后续测试使用
[root@ftp1 ~]# cd /home/vsftpd/xmcsxy/
[root@ftp1 xmcsxy]# touch 1.txt
12.Windows端使用Filezilla连接ftp服务器测试
上传文件:
下载文件:
来源:CSDN
作者:cruize3
链接:https://blog.csdn.net/un_locked/article/details/104760596