Linux 上配置 FTP 服务器不算难,尤其是使用常见的 vsftpd,只要理解几个关键配置项,一般 10~30 分钟就能完成。下面用通俗方式给你说明一下。
主流选择(简单 + 稳定):
新手首选:vsftpd
# CentOS / Rocky / Alma
yum install vsftpd -y
# Ubuntu / Debian
apt install vsftpd -y
systemctl enable vsftpd
systemctl start vsftpd
路径一般是:
/etc/vsftpd/vsftpd.conf # CentOS
/etc/vsftpd.conf # Ubuntu
常见配置示例(最常用):
anonymous_enable=NO # 禁止匿名登录
local_enable=YES # 允许本地用户登录
write_enable=YES # 允许上传/修改
local_umask=022
chroot_local_user=YES # 锁定用户到家目录(安全)
allow_writeable_chroot=YES
保存后重启:
systemctl restart vsftpd
useradd ftpuser
passwd ftpuser
建议:
/home/ftpuser)✅ 防火墙放行 21 端口:
firewall-cmd --add-service=ftp --permanent
firewall-cmd --reload
✅ SELinux(如果是 CentOS/RHEL):
setsebool -P ftp_home_dir on
FTP 本身协议设计比较老,所以容易卡在:
| 问题 | 说明 |
|---|---|
| 被动模式 | 现代网络几乎都必须配置 |
| 防火墙 | 端口不是只有一个 |
| SELinux | 新手上手容易懵 |
| 权限问题 | 目录权限比想象中严格 |
但只要按模板配置,一般都能解决。
✅ 配置难度:低~中
我可以帮你:
你可以直接说:
我用的系统是 XXX,想传文件 / 给同事用 / 安全优先