linux

iptables中如何添加新的过滤规则

小樊
44
2025-10-22 09:16:50
栏目: 编程语言

在iptables中添加新的过滤规则,通常需要使用iptables命令。以下是一些基本的步骤和示例,用于向iptables添加新的过滤规则:

1. 确定要添加规则的链

iptables有多个预定义的链,如INPUTOUTPUTFORWARD。你需要确定要在哪个链上添加规则。

2. 确定规则的动作

iptables规则可以有四种动作:

3. 确定匹配条件

你可以根据多种条件来匹配数据包,如源IP地址、目的IP地址、端口号、协议类型等。

示例:添加一个新的过滤规则

允许来自特定IP地址的SSH连接

sudo iptables -A INPUT -p tcp --dport 22 -s 192.168.1.100 -j ACCEPT

解释:

阻止来自特定IP地址的所有连接

sudo iptables -A INPUT -s 192.168.1.100 -j DROP

解释:

记录所有进入的ICMP请求

sudo iptables -A INPUT -p icmp -j LOG --log-prefix "ICMP Packet Detected: "

解释:

保存iptables规则

在某些Linux发行版中,iptables规则在系统重启后会丢失。为了持久化规则,你需要保存它们。

使用iptables-saveiptables-restore

sudo iptables-save > /etc/iptables/rules.v4
sudo iptables-restore < /etc/iptables/rules.v4

使用netfilter-persistent

在Debian及其衍生版中,可以使用netfilter-persistent服务来保存和恢复iptables规则。

sudo netfilter-persistent save
sudo netfilter-persistent reload

通过这些步骤,你可以向iptables添加新的过滤规则,并确保它们在系统重启后仍然有效。

0
看了该问题的人还看了