温馨提示×

FTPServer在Debian如何搭建

小樊
36
2026-08-21 16:59:04
栏目: 智能运维

在 Debian 上搭建 FTPServer(FTP 服务器) 常见有两种主流选择:

  • vsftpd(最常用、轻量、稳定)✅ 推荐
  • ProFTPD(功能更丰富)

下面以 vsftpd 为例,介绍 匿名访问 / 本地用户访问 / 虚拟用户访问 三种常见方式,并顺带说明 ProFTPD 的安装方式。


一、使用 vsftpd 搭建 FTP 服务器(推荐)

1️⃣ 安装 vsftpd

sudo apt update
sudo apt install vsftpd -y

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

sudo systemctl status vsftpd

2️⃣ 基本配置(本地用户登录)

编辑配置文件:

sudo nano /etc/vsftpd.conf

常用配置示例(适合大多数情况):

listen=YES
listen_ipv6=NO

anonymous_enable=NO
local_enable=YES
write_enable=YES

local_umask=022

dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES

chroot_local_user=YES
allow_writeable_chroot=YES

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000

保存后重启服务:

sudo systemctl restart vsftpd

3️⃣ 创建 FTP 用户

sudo useradd -m ftpuser
sudo passwd ftpuser

设置用户家目录为 FTP 根目录:

sudo usermod -d /home/ftpuser ftpuser

测试登录:

ftp localhost

4️⃣ 防火墙配置(非常重要)

如果启用了 UFW:

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

二、匿名 FTP(可选)

编辑 /etc/vsftpd.conf

anonymous_enable=YES
anon_root=/srv/ftp

创建目录:

sudo mkdir -p /srv/ftp
sudo chown nobody:nogroup /srv/ftp

三、虚拟用户(进阶,更安全)

适合多用户、无系统账号场景,需要:

  • vsftpd
  • pam
  • db-util

简要步骤:

sudo apt install db-util
  1. 创建用户密码文件
  2. 生成 db
  3. 配置 PAM
  4. 配置 vsftpd

如果你需要,我可以单独给你一份 虚拟用户完整配置方案


四、ProFTPD(备选方案)

安装

sudo apt install proftpd -y

启动:

sudo systemctl start proftpd
sudo systemctl enable proftpd

配置文件:

/etc/proftpd/proftpd.conf

五、常见问题排查

❌ 无法连接

  • 检查端口是否开放
  • 确认 listen=YES
  • 是否云服务器(安全组放行 21 端口)

❌ 530 Login incorrect

  • 用户被 nologin 限制
  • PAM 配置问题

❌ 上传失败

  • 目录权限
  • write_enable=YES

六、安全建议 ✅

  • 禁用匿名登录
  • 使用 SFTP(SSH) 替代 FTP(更安全)
  • 限制用户 chroot
  • 使用非标准端口

如果你告诉我:

  • ✅ 是 本机 / 云服务器
  • ✅ 给 几个人用 / 公网访问
  • ✅ 是否需要 匿名 / 虚拟用户

我可以帮你定制一套 最合适、最安全的 FTP 配置方案

0