温馨提示×

Debian FTPServer怎么设置

小樊
38
2026-08-06 07:57:12
栏目: 智能运维

在 Debian 上搭建 FTPServer(FTP 服务器)通常指 vsftpd(Very Secure FTP Daemon),这是 Debian 下最常用、最稳定的 FTP 服务器。下面按从安装到配置、再到安全建议一步步说明。


一、安装 vsftpd

sudo apt update
sudo apt install vsftpd

安装完成后,vsftpd 会自动启动。

查看状态:

sudo systemctl status vsftpd

二、基本配置文件

配置文件路径:

/etc/vsftpd.conf

先备份原配置:

sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

三、常用基础配置(推荐)

编辑配置:

sudo nano /etc/vsftpd.conf

1️⃣ 基本 FTP 功能

listen=YES
listen_ipv6=NO
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
chroot_local_user=YES
allow_writeable_chroot=YES

✅ 说明:

  • anonymous_enable=NO:禁止匿名登录
  • local_enable=YES:允许系统用户登录
  • write_enable=YES:允许上传
  • chroot_local_user=YES:限制用户只能访问自己的家目录

四、创建 FTP 用户(推荐方式)

1️⃣ 创建用户

sudo useradd -m ftpuser
sudo passwd ftpuser

2️⃣ 设置家目录权限

sudo chown ftpuser:ftpuser /home/ftpuser
sudo chmod 755 /home/ftpuser

五、重启 vsftpd

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

六、防火墙设置(如果有 ufw)

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw reload

七、被动模式(PASV)配置(⚠️非常重要)

很多客户端(FileZilla / Windows)必须用被动模式

编辑 /etc/vsftpd.conf

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

防火墙放行:

sudo ufw allow 30000:31000/tcp

八、测试 FTP

本地测试

ftp localhost

远程测试

ftp 服务器IP

或使用 FileZilla

  • 协议:FTP
  • 加密:只使用普通 FTP(除非你配置了 TLS)
  • 主机:服务器 IP
  • 用户 / 密码:ftpuser

九、安全建议(强烈推荐)

✅ 1. 禁止 root 登录

userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=YES
echo "root" | sudo tee -a /etc/vsftpd.userlist

✅ 2. 使用 SFTP(更安全)

如果只是文件传输,更推荐 SFTP(SSH)

sftp user@服务器IP

无需额外安装 FTP 服务。


十、常见问题排查

1️⃣ 无法登录

  • 检查用户是否被锁定
  • 查看日志:
sudo tail -f /var/log/vsftpd.log

2️⃣ 上传失败

  • 检查目录权限
  • 确认 write_enable=YES

十一、总结

✅ 最简可用配置:

  • Debian + vsftpd
  • 本地用户登录
  • chroot 限制目录
  • 被动模式

如果你需要:

  • TLS 加密 FTP(FTPS)
  • 虚拟用户
  • 只允许特定目录
  • 和 Nginx / Web 目录结合

可以告诉我你的具体使用场景,我可以给你定制配置。

0