Linux防火墙--iptables基础(上)
linux防火墙
防火墙概述:
- netfilter
- 位于Linux内核中的包过滤功能体系
- 称为Linux防火墙的“内核态”
- iptables
- 位于/sbin/iptables,用来管理防火墙规则的工具
- 称为Linux防火墙的“用户态“
包过滤的工作层次
- 主要工作在网络层,针对IP数据包
- 体现在对包内的IP地址、端口等信息的处理上
-
iptables的表、链结构
- 规则链
- 规则的作用:对数据包进行过滤或处理
- 规则的作用:对数据包进行过滤或处理
- 链的作用:容纳各种防火墙规则
- 链的分类依据:处理数据包的不同时机
- 默认包括五种规则链
- INPUT:处理入站数据包
- OUTPUT:处理出站数据包
- FORWARD:处理转发数据包
- POSTROUTING链:在进行路由选择后处理数据包
- PREROUTING链:在进行路由选择前处理数据包
- 规则表
- 表的作用:容纳各种规则链
- 表的划分依据:防火墙规则的作用相似
- 默认包括4个规则表
- raw表:确定是否对该数据包进行状态跟踪
- mangle表:为数据包设置标记
- nat表:修改数据包中的源、目标IP地址或端口
- filter表:确定是否放行该数据包(过滤)
- 默认的表、链结构示意图
-
- 数据包控制的匹配流程
- 规则表之间的顺序
- raw → mangle → nat → filter
- 规则链之间的顺序
- 入站: PREROUTING → INPUT
- 出站: OUTPUT → POSTROUTING
- 转发: PREROUTING → FORWARD → POSTROUTING
- 规则链内的匹配顺序
- 按顺序依次检查,匹配即停止(LOG策略例外)
- 若找不到相匹配的规则,则按该链的默认策略处理
- 匹配流程示意图:
-
- 规则表之间的顺序