Centos7 10分钟安装vsftpd并使用(阿里云主机)

安装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...

你可能感兴趣的:(vsftpd)