1、安装vsftpd
1
|
[root@localhost modules]
# yum install -y vsftpd
|
2、编辑ftp配置文件
1
|
[root@localhost modules]
# vi /etc/vsftpd/vsftpd.conf
|
做如下修改:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
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
1
|
[root@localhost modules]
# chkconfig vsftpd on
|
4、启动/重新启动ftp服务
1
2
|
[root@localhost modules]
# systemctl start vsftpd.service
[root@localhost modules]
# systemctl restart vsftpd.service
|
5、防火墙配置
方法1:
1
2
3
4
|
[root@localhost modules]
# vim /etc/sysconfig/iptables
-A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
#增加本行
|
方法2:关闭防火墙
1
2
|
[root@localhost modules]
# systemctl stop firewalld.service #停止
[root@localhost modules]
# systemctl disable firewalld.service #禁用
|
6、建立ftp账号
1
|
useradd
-d
/path
(你的
ftp
文件夹) -s
/sbin/nologin
ftpname(用户名)
|
7、修改密码
1
|
passwd
ftpname
|
8、设置账户权限
1
2
|
chown
-R ftpname.ftpname
/path
(你的
ftp
路径)
chmod
777
/path
|
9、设置路径运行上传
1
2
|
setsebool -P ftp_home_dir on
setsebool allow_ftpd_full_access on
|
10、重启vsftp服务
1
|
systemctl restart vsftpd.service
|