一. 安装
查看是否安装ftp rpm -qa | grep vsftpd
安装ftp yum -y install vsftpd
启动 /bin/systemctl start vsftpd.service
重启 /bin/systemctl restart vsftpd.service
查看状态 /bin/systemctl status vsftpd.service
开机自启chkconfig vsftpd on
取消匿名登录 vi /etc/vsftpd/vsftpd.conf
anonymous_enable=YES,改为NO
创建ftp用户组 groupadd ftpgroups
创建ftp用户,并加入ftpgroups组,/home/ftp是自己建的目录,不存在就自己创建
useradd -d /home/ftp -g ftpgroups ftptest(用户名)
限定用户ftptest不能telnet,只能ftp usermod -s /sbin/nologin ftptest
用户test恢复正常 usermod -s /sbin/bash ftptest
更改用户的主目录为/home/ftp/test
usermod -d /home/ftp/test ftptest
设置用户密码 passwd ftptest
二. 修改配置文件
(1)vi /etc/selinux/config
SELINUX=enforcing 设置成SELINUX=disabled
刷新 source /etc/selinux/config
(2)vim /etc/vsftpd/user_list 禁止登录用户配置文件
如果要登录的用户在里面,删除此用户
(3)vim /etc/vsftpd/vsftpd.conf
增加以下三行
#不添加下面这个会报错:500 OOPS: vsftpd: refusing to run with writable root inside chroot()
allow_writeable_chroot=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
(4)vi /etc/sysconfig/iptables-config
添加下面一行IPTABLES_MODULES="ip_conntrack_ftp"
(5)修改pam配置文件(如不修改会出现503的登录错误)
vim /etc/pam.d/vsftpd
注释以下一行
#auth required pam_shells.so
三. 修改FTP端口
vi /etc/vsftpd/vsftpd.conf
在原来的基础上加上:
listen_port=10021
#被动模式
pasv_enable=YES
#下面两个是与passive mode 使用的 port number 有关,如果您想要使用10221 到10231 这几个 port 来进行被动式资料的连接,可以这样设定
pasv_min_port=65400
pasv_max_port=65410
四.测试
(1). 重启vsftp服务
systemctl restart vsftpd.service 或者service vsftpd restart
(2). 使用fileZilla连接FTP服务器(如果开启了被动模式,需要设置fileZilla的连接模式)
至此,centos7 FTP服务搭建完成!
原文地址:https://www.cnblogs.com/phplzx/p/12120531.html