iptables 是一个配置Linux 内核防火墙 的命令行工具,是netfilter 项目的一部分。术语iptables 也经常代指该内核级防火墙
数据包流程
iptables 规则(Rules)
- Rules包括一个条件和一个目标(Target)。
- 如果满足条件,就执行目标中的规则或者待定值。
- 如果不满足条件,就判断下一条规则。
目标值(Target Values)
下面是你可以在target里指定的特殊值:
- ACCEPT - 允许防火墙接收数据包
- DROP - 防火墙丢弃包
- QUEUE - 防火墙将数据包移交到用户空间
- RETURN - 防火墙停止执行当前链中的后续Rules,并返回到调用链中
如果你执行iptables -t filter --list
你将看到防火墙上的可用规则。
下面的例子说明当前系统没有定义防火墙。你可以看到,它显示了默认的filter表,以及表内默认的input链,forward链,output链。
<pre class="prettyprint linenums prettyprinted">
-
# iptables -t filter –list
-
Chain INPUT (policy ACCEPT)
-
target prot opt source destination
-
Chain FORWARD (policy ACCEPT)
-
target prot opt source destination
-
Chain OUTPUT (policy ACCEPT)
-
target prot opt source destination
</pre>
注意,如果不指定-t
选项,默认就是filter表。
规则语法
书写规则的语法格式是:
iptables [-t table] command [match] [target/jump]
查看ip connenction信息
cat /proc/net/ip_conntrack
网友评论