测试环境CentOS 7.6
1、安装并启动 FTP 服务
yum install -y vsftpd
2、启动ftp服务
service vsftpd start
启动后,可以看到系统已经监听了 21 端口:
netstat -nltp | grep 21
如果提示找不到netstat 执行下面命令安装
yum install net-tools
4、配置 FTP 权限
vsftpd 的配置目录为 /etc/vsftpd,包含下列的配置文件:
- vsftpd.conf 为主要配置文件
- ftpusers 配置禁止访问 FTP 服务器的用户列表
- user_list 配置用户访问控制
修改配置文件vsftpd.conf
vim /etc/vsftpd/vsftpd.conf
填写以下内容
# 禁用匿名用户
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
#(上传权回限)
anon_upload_enable=YES
#(创建目录的权限)
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
#被动模式配置
connect_from_port_20=NO
PASV_enable=YES #开启被动模式
PASV_min_port=%7100% #被动模式最低端口
PASV_max_port=%7149% #被动模式最高端口
重启服务
service vsftpd restart
5、创建FTP用户
useradd ftpuser //创建一个用户 ftpuser
echo "ftpuser" | passwd ftpuser --stdin //为用户 ftpuser 设置密码
6、为用户分配主目录
chmod a-w /home && chmod 777 -R /home //设置访问权限
usermod -d /home ftpuser //设置为用户的主目录
7、打开端口或者关闭防火墙,关闭SELinux服务
firewall-cmd --zone=public --add-port=21/tcp --permanent //开放端口21
firewall-cmd --zone=public --add-port=7100-7149/tcp --permanent //开放被动模式端口区间
firewall-cmd --reload //重新加载
setenforce 0 //关闭SELinux服务
iptables -F //关闭防火墙
8、访问FTP
资源管理器的地址栏访问:ftp://ip