(双击全屏播放)
1、安装vsftpd
yum install -y vsftpd
2、编辑ftp配置文件
vi /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
#关闭匿名登录
chroot_local_user=YES
#用于指定用户列表文件中的用户是否允许切换到上级目录。
默认值为NO。
#通过搭配能实现以下几种效果:
#①当chroot_list_enable=YES,chroot_local_user=YES时,在/etc/vsftpd.chroot_list文件中列出的用户,可以切换到其他目录;
未在文件中列出的用户,不能切换到其他目录。
#②当chroot_list_enable=YES,chroot_local_user=NO时,在/etc/vsftpd.chroot_list文件中列出的用户,不能切换到其他目录;
未在文件中列出的用户,可以切换到其他目录。
#③当chroot_list_enable=NO,chroot_local_user=YES时,所有的用户均不能切换到其他目录。
#④当chroot_list_enable=NO,chroot_local_user=NO时,所有的用户均可以切换到其他目录。
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
allow_writeable_chroot=YES
#加上这行解决了无法登陆的问题
3、设置开机启动ftp
chkconfig vsftpd on
4、启动/重新启动ftp服务
systemctl start vsftpd.service
systemctl restart vsftpd.service
5、防火墙配置
--设置公开21端口
firewall-cmd --zone=public --add-port=21/tcp --permanent
systemctl stop firewalld.service
systemctl start firewalld.service
systemctl restart firewalld.service
6、建立ftp账号
useradd -d /path(你的ftp文件夹) -s /sbin/nologin ftpname(用户名)
7、修改密码
passwd ftpname
8、设置账户权限
chown -R ftpname.ftpname /path(你的ftp路径)
chmod 777 /path
9、设置路径运行上传
setsebool -P ftp_home_dir on
setsebool allow_ftpd_full_access on
10、重启vsftp服务
systemctl restart vsftpd.service
11、 关闭 selinux
执行 vi /etc/selinux/config 编辑,
修改成 selinux=disabled
执行 setenforce 0 使修改马上生效
12、增加用户进入list使它能访问根目录
vi /etc/vsftpd/chroot_list
ftpuser1
13、编辑pam认证文件,注销一行
vi /etc/pam.d/vsftpd
#auth required pam_shells.so