CentOS7 vsftp 安装与配置,视频教程

(双击全屏播放)

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