一、环境准备与软件安装
在阿里云ECS实例中选择CentOS或Ubuntu系统,通过SSH工具登录服务器后执行系统更新命令:
sudo apt-get update # Ubuntu
sudo yum update # CentOS
安装vsftpd软件包,适用于多数Linux发行版:
sudo apt-get install vsftpd # Debian系
sudo yum install vsftpd # RedHat系
安装完成后,检查服务状态并启动:sudo systemctl start vsftpd
。
二、配置vsftpd服务
修改配置文件/etc/vsftpd/vsftpd.conf
,关键参数如下:
- 启用本地用户登录:
local_enable=YES
- 允许文件上传:
write_enable=YES
- 限制用户目录:
chroot_local_user=YES
创建专用FTP用户并设置密码:
sudo useradd -m ftpuser
sudo passwd ftpuser
需修改用户目录权限:chmod 755 /home/ftpuser
。
三、安全组与防火墙设置
在阿里云控制台配置安全组规则:
- 开放21端口(FTP控制连接)
- 添加被动模式端口范围(如50000-51000)
服务器端防火墙需同步放行:
sudo ufw allow 21/tcp
sudo ufw allow 50000:51000/tcp
四、连接测试与验证
使用FileZilla等客户端连接时注意:
- 协议类型选择FTP-显式 TLS
- 主机地址填写ECS公网IP
- 端口保持默认21
成功连接后测试文件上传/下载功能,验证目录权限是否正常。
五、常见问题处理
问题1:连接超时
检查安全组规则是否开放21端口,确认服务器防火墙状态。
问题2:530 Login incorrect
检查用户是否被添加至/etc/vsftpd.user_list
黑名单,或密码错误。
问题3:被动模式失败
确认pasv_min_port
和pasv_max_port
配置,并开放对应端口范围。
通过vsftpd配置阿里云FTP服务时,需重点关注用户权限控制、防火墙策略及被动模式设置。建议定期检查日志文件/var/log/vsftpd.log
,并采用SFTP替代传统FTP以提升安全性。