1.前提是firewalld 关闭了
2.selinux啥的关闭了
1:安装vsftpd
yum install vsftpd -y
2:启动vsftpd
service vsftpd start
加入开机启动
chkconfig vsftpd on
启动后可以看到系统监听21端口
netstat -nltp | grep 21
3:vsftpd的文件说明
vsftpd.conf: 主要配置文件
ftpusers:配置禁止访问ftp服务器的用户列表
user_list:配置用户访问控制
4:配置阻止匿名用户访问和切换根目录
vi /etc/vsftpd/vsftp.conf
找到以下两处并按下面的样子修改
# 禁用匿名用户
anonymous_enable=NO
# 禁止切换根目录
chroot_local_user=YES
#开启以下配置
chroot_local_user=YES
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list #如果没有此文件则创建此文件,不需要添加内容
文件末尾添加
allow_writeable_chroot=YES
[root@hadoop1 ~]# vim /etc/vsftpd/vsftpd.conf
[root@hadoop1 ~]# service vsftpd start
Redirecting to /bin/systemctl start vsftpd.service
[root@hadoop1 ~]# usermod -s /sbin/nologin ftpuser
[root@hadoop1 ~]# useradd ftpuser
[root@hadoop1 ~]# passwd ftpuser
[root@hadoop1 ~]# usermod -s /sbin/nologin ftpuser
[root@hadoop1 ~]# mkdir -p /data/ftp/pub
[root@hadoop1 ~]# echo "Welcome to use FTP service." > /data/ftp/welcome.txt
[root@hadoop1 ~]# chmod a-w /data/ftp && chmod 777 -R /data/ftp/pub
[root@hadoop1 ~]# usermod -d /data/ftp ftpuser
[root@hadoop1 ~]# vim /etc/vsftpd/vsftpd.conf
[root@hadoop1 ~]# vim /etc/vsftpd/vsftpd.conf
[root@hadoop1 ~]# service vsftpd restart
Redirecting to /bin/systemctl restart vsftpd.service
遇到不能写的话
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
1.考虑是不是selinux的原因 把selinux禁用试试
2.说不定ftp的文件夹(主目录)确实没有写权限,确认一下该目录权限
3.配置文件里有write_enable=YES吗