debian

Debian中vsftp防火墙规则怎么写

小樊
45
2025-05-28 11:20:45
栏目: 智能运维

在Debian系统中,使用vsftpd作为FTP服务器时,配置防火墙规则是非常重要的,以确保服务器的安全性和正常运行。以下是一些常见的防火墙规则示例,使用iptables来配置。

安装iptables

首先,确保你已经安装了iptables。如果没有安装,可以使用以下命令进行安装:

sudo apt update
sudo apt install iptables

允许FTP流量

FTP使用两个端口:一个是控制连接(通常是21端口),另一个是数据连接(通常是20端口)。你需要允许这两个端口的流量。

允许TCP端口21

sudo iptables -A INPUT -p tcp --dport 21 -j ACCEPT

允许TCP端口20

sudo iptables -A INPUT -p tcp --dport 20 -j ACCEPT

允许被动模式数据连接

FTP的被动模式需要开放一个范围的数据端口(通常是1024到1048)。你可以使用iptables--match multiport选项来允许这个范围的端口。

sudo iptables -A INPUT -p tcp --dport 1024:1048 -m state --state NEW,ESTABLISHED -j ACCEPT

允许已建立的连接

为了确保FTP会话的正常进行,你需要允许已建立的连接和相关的数据连接。

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

允许本地连接

如果你希望本地用户可以访问FTP服务器,可以添加以下规则:

sudo iptables -A INPUT -p tcp --dport 21 -s 127.0.0.1 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 20 -s 127.0.0.1 -j ACCEPT

保存防火墙规则

iptables规则在系统重启后会丢失,因此你需要保存这些规则。可以使用iptables-persistent包来保存和恢复规则。

安装iptables-persistent

sudo apt install iptables-persistent

在安装过程中,系统会提示你是否要保存当前的iptables规则。选择“是”以保存规则。

手动保存规则

如果你已经安装了iptables-persistent,可以使用以下命令手动保存规则:

sudo netfilter-persistent save
sudo netfilter-persistent reload

验证防火墙规则

你可以使用以下命令来查看当前的iptables规则:

sudo iptables -L -v -n

通过这些步骤,你应该能够在Debian系统中配置vsftpd的防火墙规则,确保FTP服务器的安全性和正常运行。

0
看了该问题的人还看了