温馨提示×

debian ftpserver怎么设被动模式

小樊
36
2026-09-12 17:25:47
栏目: 智能运维

在 Debian 上配置 FTP 服务器使用被动模式(Passive Mode),通常取决于你用的是哪个 FTP 服务端软件。Debian 上最常见的是 vsftpd,下面以 vsftpd 为例说明,另外也简要提一下 ProFTPD


一、使用 vsftpd(最常见)

1. 安装 vsftpd

sudo apt update
sudo apt install vsftpd

2. 修改配置文件

编辑配置文件:

sudo nano /etc/vsftpd.conf

确保以下配置存在并正确:

# 开启被动模式
pasv_enable=YES

# 被动模式使用的端口范围(自定义)
pasv_min_port=30000
pasv_max_port=31000

# 服务器公网 IP(非常重要,尤其是 NAT 环境)
pasv_address=你的公网IP

# 如果使用云服务器且前面有 NAT
# pasv_addr_resolve=YES

示例(云服务器常见):

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pasv_address=203.0.113.10

3. 防火墙放行端口

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

如果用的是 iptables:

iptables -A INPUT -p tcp --dport 30000:31000 -j ACCEPT

4. 重启 vsftpd

sudo systemctl restart vsftpd

二、使用 ProFTPD(可选)

配置文件

sudo nano /etc/proftpd/proftpd.conf

添加或修改:

PassivePorts 30000 31000
MasqueradeAddress 你的公网IP

重启服务:

sudo systemctl restart proftpd

防火墙同样需要放行对应端口。


三、常见问题排查

1. 能连上但不能列目录

✅ 被动端口未放行
pasv_address 配置错误

2. 本地能连,外网不能连

✅ 云服务器安全组未放行被动端口
✅ NAT 环境未设置 pasv_address

3. 使用 IPv6

listen_ipv6=YES

如果你能告诉我:

  • 用的是 vsftpd / proftpd / pure-ftpd
  • 本地服务器 / 云服务器 / 内网 NAT

我可以给你更精确的配置示例。

0