安装vsftpd
安装vsftpd
安装
yum -y install vsftpd
设置开机启动
systemctl enable vsftpd
启动ftp服务
systemctl start vsftpd.service
添加ftp用户
useradd -g root -d /home/wwwroot/asite -s /sbin/nologin ftpuser
注:表示新增一个ftpuser(用户名),且指定上传目录在/home/wwwroot/asite下
如果后期想变更此用户的上传目录到(/run/media/root/xxx/wwwroot/xxx.org),请使用下面的命令:
usermod -d /run/media/root/xxx/wwwroot/xxx.org ftpuser
设置用户密码
passwd ftpuser
设置权限
chown -R ftpuser:root /home/wwwroot/asite
配置ftp
配置selinux 允许ftp访问home和外网访问
setsebool -P allow_ftpd_full_access on
setsebool -P ftp_home_dir on
修改vsftp配置文件
路径:/etc/vsftpd/vsftpd.conf
如果要禁用匿名用户登录FTP; 把anonymous_enable 项设置为NO: anonymous_enable=NO
设置local_enable为YES允许本地用户登录: local_enable=YES
把write_enable setting设置为YES允许本地用户创建文件夹等操作: write_enable=YES
配置防火墙(按需)
我使用的是阿里云香港主机不需要配置,但必需在web控制台添加安全规则,添加默认21端口
防火墙用可能用到以下命令:
# 查看状态
systemctl status firewalld
# 开启防火墙
systemctl start firewalld
# 关闭防火墙
systemctl stop firewalld
# 查看已开放的端口
firewall-cmd --zone=public --list-ports
# 增加端口, 默认添加21的端口
firewall-cmd --permanent --zone=public --add-port=21/tcp
# 移除端口
firewall-cmd --zone=public --remove-port=42392/tcp --permanent
# 重载防火墙
firewall-cmd --reload
vsftpd相关问题
连接成功,但读取目录列表失败
使用ftp连接成功,但目录列表显示不了,可能存在以下方面:
添加安全组端口(阿里云,腾讯云),包括21
添加安全组端口,vsftpd配置的端口地址段如:
# /etc/vsftpd/vsftpd.conf
pasv_max_port=6666
pasv_min_port=5555
服务器发回了不可路由的地址。使用服务器地址代替
更改Filezilla设置,将传输设置中的传输模式更改为主动
。
参考文献:
https://www.yuque.com/docs/sh...
(Guoye的语雀)
https://www.cnblogs.com/sheng...
https://www.aliyun.com/jiaoch...
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。