温馨提示×

Debian FTP服务器怎么搭建

小樊
48
2026-07-11 04:08:14
栏目: 云计算

在 Debian 上搭建 FTP 服务器,最常用、稳定、安全的选择是 vsftpd(Very Secure FTP Daemon)。下面给你一套从零开始的完整搭建流程,适用于 Debian 11 / 12(也适用于 Ubuntu)。


一、安装 vsftpd

sudo apt update
sudo apt install vsftpd -y

安装完成后,服务会自动启动。

检查状态:

sudo systemctl status vsftpd

二、备份并编辑配置文件

1️⃣ 备份原配置

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

2️⃣ 编辑配置文件

sudo nano /etc/vsftpd.conf

三、常用推荐配置(适合大多数场景)

✅ 基础配置

# 禁止匿名登录
anonymous_enable=NO

# 允许本地用户登录
local_enable=YES

# 允许上传文件
write_enable=YES

# 本地用户上传文件的权限(022 = 755)
local_umask=022

# 禁止用户离开家目录(推荐使用)
chroot_local_user=YES

# 允许写 chroot(Debian 必须)
allow_writeable_chroot=YES

# 被动模式(非常重要,云服务器必须)
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

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

⚠️ 不建议直接用 root 登录 FTP

1️⃣ 创建用户

sudo adduser ftpuser

设置密码。

2️⃣ 指定 FTP 目录(可选)

sudo mkdir -p /home/ftpuser/ftp
sudo chown ftpuser:ftpuser /home/ftpuser/ftp

五、防火墙设置

1️⃣ 开放 FTP 端口

sudo ufw allow 20/tcp
sudo ufw allow 21/tcp
sudo ufw allow 30000:31000/tcp

查看状态:

sudo ufw status

六、重启 vsftpd

sudo systemctl restart vsftpd
sudo systemctl enable vsftpd

七、测试 FTP 连接

在 Linux / macOS

ftp 服务器IP

在 Windows

  • 使用 FileZilla
  • 协议:FTP
  • 加密:只使用明文 FTP(或选“只使用被动模式”)

八、常见错误 & 解决方法

❌ 530 Login incorrect

  • 用户被 nologin 限制
  • 检查:
cat /etc/shells

确保用户 shell 是合法 shell(如 /bin/bash


❌ 500 OOPS: vsftpd: refusing to run with writable root inside chroot

添加:

allow_writeable_chroot=YES

❌ 云服务器连不上

✅ 一定要配置 被动模式 + 安全组放行端口


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

✅ 禁止 root 登录
✅ 使用被动模式
✅ 配置防火墙
✅ 只开放必要端口
✅ 考虑使用 SFTP(SSH) 替代 FTP(更安全)


十、替代方案(更安全)

如果你不需要“传统 FTP”,强烈推荐 SFTP

# 直接用 SSH
sftp user@服务器IP

无需额外安装 FTP 软件 ✅


如果你愿意,可以告诉我:

  • ✅ 是 云服务器 还是 内网
  • ✅ 是否需要 匿名访问
  • ✅ 是否要 虚拟用户
  • ✅ Debian 版本

我可以帮你定制一套适合你环境的 FTP 配置。

0