📜  编辑 iptables - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:27:38.319000             🧑  作者: Mango

编辑 iptables - Shell-Bash

简介

Iptables是一个用于管理Linux内核网络协议数据包过滤规则的命令行程序。通过Iptables能够实现数据包的过滤、转发、NAT、端口映射等复杂的网络功能。在Linux操作系统中,iptables是最为常用的命令之一。

命令格式

iptables命令的基本格式如下:

iptables [-t 表名] 命令 [链名] [规则号] [匹配条件] [动作]

比如,要查看iptables的规则列表,可以使用以下命令:

iptables -L -n
编辑iptables规则
  1. 增加规则

要增加一个规则,需要使用-A参数,以及对应的规则类型和条件。例如,要允许从外网访问本机的80端口,可以使用如下命令:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

其中,-A INPUT表示将规则添加到INPUT链中,-p tcp表示匹配TCP协议,--dport 80指定了目标端口为80,-j ACCEPT表示接受该数据包。

  1. 删除规则

要删除一个规则,需要使用-D参数,以及要删除的规则的类型和编号。例如,要删除INPUT链中第二条规则,可以使用如下命令:

iptables -D INPUT 2
  1. 修改规则

要修改一个规则,需要先删除原有规则,再添加新的规则。可以结合-D-A参数一起使用。

例如,要将INPUT链中第一条规则修改为允许从外网访问本机的443端口,可以使用如下命令:

iptables -D INPUT 1
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
保存iptables规则

对iptables进行配置之后,需要将规则保存下来,以便下次重启生效。可以使用iptables-save命令将当前的iptables规则保存到文件中,例如:

iptables-save > /etc/iptables/rules.v4

这样,当系统重启后,可以使用iptables-restore命令将保存的规则重新加载到iptables中,例如:

iptables-restore < /etc/iptables/rules.v4
总结

通过iptables命令,我们可以方便地管理Linux内核网络协议数据包过滤规则。本文介绍了iptables命令的基本使用,包括增加规则、删除规则、修改规则和保存规则。希望能对大家有所帮助。