3、Iptables表的概念
3.1、什么是表
我们对每个"链"上都放置了一串规则,但是这些规则有些很相似,比如:
A类规则都是对IP或者端口的过滤
B类规则都是对报文进行修改的
C类规则都是进行地址转换的
那么这个时候。我们是不是能把实现相同功能的规则放在一起呢
当我们把具有相同功能的规则集合在一起叫做"表",
所以说,不同功能的规则,我们可以放置在不同的表中进行管理,而iptables已经为我们定义了四种表,每种表对应了不同的功能
3.2、表的功能
3.3、表与链的关系
表-->链-->规则(匹配条件+动作)
iptables -t filter -I INPUT -p tcp --dport 80 -j DROP
3.4、表与链相关问题
问题1:来自10.0.0.1的地址,访问本机的web服务请求不允许,应该在哪个表的哪个链上设定规则?
答案1:很多同学会觉得是PREROUTING链,但其实是INPUT链,因为我们要做的是过滤,而PREROUTING不能做过滤,所以是INPUT
问题2:所有由本机发往10.0.0.0/24网段的TCP服务都不允许?
答案2:由本地发出会经过OUTPUT、POSTROUTING,但由于POSTROUTING不支持做过滤,所以应该在OUTPUT规则链上配置
问题3:所有来自己本地内部网络的主机,向互联网发送web服务器请求都允许?
答案3:本地内部主机发送互联网经过PREROUTING、FORWARD、POSTROUTING而能做过滤的只有FORWARD