环境:
- CentOS8
- vsftp 3.0.3
安装
yum install -y vsftpd # 安装vsftp
systemctl enable vsftpd # 开机启动服务
systemctl start vsftpd # 启动服务
配置ftp
用户配置:
useradd ftp # 添加用户
passwd ftp # 修改密码
# 输入密码,确认
mkdir /www/file/ftp # 创建ftp目录
chown -R ftp:ftp /var/ftp/test # 修改目录属性
修改配置文件:
# 修改配置文件
vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO # 禁止匿名登录
local_enable=YES # 允许本地登录
chroot_local_user=YES # 允许本地账号登录
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list # 允许例外用户文件
listen=YES # 开启监听ipv4
# 添加以下配置
local_root=/www/file/ftp # 本地目录
allow_writeable_chroot=YES # 允许读写
pasv_enable=YES # 被动模式
pasv_address=xxx.xx.xxx.xx #请修改为您的 Linux 云服务器公网 IP
pasv_min_port=40000 # 被动模式的数据端口
pasv_max_port=45000 # 被动模式的数据端口
# wq保存退出
# 设置例外,如果没有可以跳过
vim /etc/vsftpd/chroot_list
输入用户名,一个用户名占据一行,设置完成后按 Esc 并输入 :wq 保存后退出。
重启ftp服务:
systemctl restart vsftpd
防火墙配置:
# 服务器防火墙放通
firewall-cmd --zone=public --add-port=20/tcp --permanent
firewall-cmd --zone=public --add-port=21/tcp --permanent
firewall-cmd --zone=public --add-port=40000-45000/tcp --permanent
云服务器厂商安全组也要放通对应端口
注意问题
配置文件不能留有多余的空格,否则可能报错,搞了好久。。