CentOS 7 防火墙之iptables
文章目录
- CentOS 7 防火墙之iptables
- 1.什么是iptables?
- 2.四表五链
- 具体的四表
- 五链
- 四表五链的关系
- 3.iptables的语法
- iptables常用参数
1.什么是iptables?
ptables是Linux的防火墙管理工具而已,真正实现防火墙功能的是Netfilter,我们配置了iptables规则后Netfilter通过这些规则来进行防火墙过滤等操作。
Netfilter模块:
它是主要的工作模块,位于内核中,在网络层的五个位置( 也就是防火墙四表五链中的五链)注册了-些函数,用来抓取数据包;把数据包的信息拿出来匹配各个各个链位置在对应表中的规则:匹配之后,进行相应的处理ACCEPT、DROP 等等。
2.四表五链
链就是位置:共有五个进路由(PREROUT ING)、进系统(INPUT)、转发(FORWARD)、出系统(OUTPUT)、出路由(POSTROUTING) ;
表就是存储的规则;数据包到了该链处,会去对应表中查询设置的规则,然后决定是否放行、丢弃、转发还是修改等等操作。
具体的四表
filter表一过 滤数据包
Nat表一用于网络地址转换 (IP、 端口)
Mangle表一修改数据包的服务 类型、TIL、 并且可以配置路由实现Q0S
Raw表一决定 数据包是否被状态跟踪机制处理
五链
INPUT链一进来的数据包应 用此规则链中的策略
OUTPUT链一外 出的数据包应用此规则链中的策略
FORWARD链一转发数据包时应用此规则链中的策略
PREROUTING链一对数 据包作路由选择前应用此链中的规则(所有的数据包进来的时侯都先由这个链处理)
POSTROUT ING链一对 数据包作路由选择后应用此链中的规则(所有的数据包出来的时侯都先由这个链处理)
四表五链的关系
表—》链—》规则
3.iptables的语法
iptables [-t 表名]选项[链名] [条件] [-j控制类型]
iptables常用参数
-P设置默认策略:iptables
-P INPUT (DROP| ACCEPT)
-F清空规则链
-L查看规则链
-A在规则链的末尾加入新规则
-I num在规则链的头部加入新规则
-D num删除某一条规则
-s匹配来源地址IP/MASK,加叹号"!"表示除这个IP外。
-d匹配目标地址
-i网卡名称匹配从这块网卡流入的数据
-0网卡名称匹配从这块网卡流出的数据
-p匹配协议,如tcp, udp, icmp
–dport num匹配目标端口号
–sport num匹配来源端口号
[root@localhost ~]# iptables -I INPUT -i ens33 -p tcp --dport 80 -s 192.168.100.100/24 -j ACCEPT
//默认是对filter表进行增删改查
//-I INPUT 这里选用INPUT这条链
//-i ens33 指定自己的网卡地址
//-p tcp 指选用的协议(tcp/udp/icmp)
//--dport 80 目标端口为80
//-s 192.168.100.100/24 指可以访问本机的服务的IP地址
//-j ACCEPT 允许访问