温馨提示×

debian ftpserver如何防火墙放行

小樊
48
2026-09-09 19:49:57
栏目: 智能运维

在 Debian 上放行 FTP 服务,通常取决于你使用的 防火墙工具(如 ufwiptablesnftables)以及 FTP 模式(主动 / 被动)。下面分情况说明。


一、先确认 FTP 服务已安装并运行

常见 FTP 服务:

  • vsftpd
  • proftpd
systemctl status vsftpd

二、使用 UFW(最常见,推荐)

1. 放行 FTP 端口

sudo ufw allow 20/tcp   # FTP 数据端口(主动模式)
sudo ufw allow 21/tcp   # FTP 控制端口

2. 被动模式(非常重要)

vsftpd 默认使用被动模式,需要放行一段被动端口,例如:

编辑 /etc/vsftpd.conf

pasv_min_port=30000
pasv_max_port=31000

然后放行:

sudo ufw allow 30000:31000/tcp

3. 启用防火墙

sudo ufw enable
sudo ufw status

三、使用 iptables(无 UFW)

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

保存规则(视系统而定):

apt install iptables-persistent
netfilter-persistent save

四、使用 nftables

nft add rule inet filter input tcp dport {21, 20, 30000-31000} accept

五、常见坑提醒

  1. 云服务器:还需在云厂商安全组放行 21 和被动端口
  2. FTP 被动模式必须放行被动端口
  3. 如果只用 SFTP(基于 SSH),只需放行 22:
    sudo ufw allow 22/tcp
    

如果你能告诉我:

  • 使用的 FTP 软件(vsftpd / proftpd)
  • 防火墙类型(ufw / iptables / nftables)
  • 是否云服务器

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

0