一、安装FTP服务
1、CentOS系统自带了FTP服务安装程序,查找FTP服务包
yum search vsftpd
2、安装FTP服务
yum install vsftpd.x86_64
二、创建FTP账号
1、创建FTP账号
useradd ftpuser -d /var/ftp -s /bin/bash -g ftp -c 'FTP User For Test'
注意:-s 表示这个FTP账号登陆可执行的命令,初次架设FTP服务时,我把它设置成了/sbin/nologin导致创建的FTP账号用不了;-d 表示这个FTP账号默认的目录;-g表示这个账号属于哪个组
2、修改FTP账户密码
passwd ftpuser
注意:密码至少10位,其次必须大小写加特殊字符组合,否则密码修改不成功;如果执行不了passwd指令,安装它 yum install passwd.x86_64
3、获取FTP账号默认目录权限
chown -R ftpuser:ftp /var/ftp
三、修改vsftpd配置文件(重点)
1、打开vsftpd的配置文件
vim /etc/vsftpd/vsftpd.conf
2、vsftpd配置文件参数修改,没有的新增,有的安装我给的进行修改
anonymous_enable=NO,表示不允许匿名登录
local_enable=YES,允许本机账号登录
write_enable=YES,能够写数据
ls_recurse_enable=YES,允许ls目录
listen=YES,表示仅支持IPV4
listen_ipv6=NO,禁用IPV6
userlist_deny=NO,白名单可用
userlist_file=/etc/vsftpd/user_list,白名单文件路径,就用vsftpd默认的
注意:云服务器有内外IP地址的,加入如下参数,入站规则,开通2000-2010端口,因为相对于主动模式,它会从pasv_min_port与pasv_max_port之间随机选取一个端口,作为数据传输端口用。
#开启被动模式
pasv_enable=YES
pasv_min_port=2000
pasv_max_port=2010
#需要加入外部ip,否则被动模式会失败
pasv_address=云服务器外网IP地址
pasv_addr_resolve=YES
3、加入新增的FTP账号进入白名单
4、etc/vsftpd目录文件解释
ftpusers:FTP黑名单
user_list:FTP白名单
vsftpd.conf:vsftpd配置文件
5、禁用SELinux,并重启CentOS服务器
在/etc/selinux目录中的config文件中
SELINUX=disabled
四、防护墙设置
1、开通21端口,或者直接禁用防火墙
firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
五、开启FTP服务
systemctl start vsftpd
开启你们FTP美妙之旅吧!!!!!!!!!