防火墙配置之分类及工作原理

防火墙简单分类

  • 主机防火墙:针对于单个主机进行防护。
  • 网络防火墙:往往处于网络入口或边缘,针对于网络入口进行防护,服务于防火墙背后的本地局域网。

软件防火墙简单的工作原理

  • 包过滤:对主机的数据包进行筛选和过滤
  • 规则匹配:放行( accept)、拒绝( reject))和丢弃(drop)
  • 配置规则:添加、删除或者修改规则

iptables

iptables结构

  • 表(tables)提供特定的功能,iptables内置了4个表,即filter表、nat表、mangle表和raw表,分别用于实现包过滤,网络地址转换、包重构(修改)和数据跟踪处理。
  • 链(chains)是数据包传播的路径,每一条链其实就是众多规则中的一个检查清单,每一条链中可以有一条或数条规则。当一个数据包到达一个链时,iptables就会从链中第一条规则开始检查,看该数据包是否满足规则所定义的条件。如果满足,系统就会根据该条规则所定义的方法处理该数据包;否则iptables将继续检查下一条规则,如果该数据包不符合链中任一条规则,iptables就会根据该链预先定义的默认策略来处理数据包。
图片[1]-防火墙配置之分类及工作原理-蚂蚁安全

iptables 四张内建表(优先级从高到低)

raw高级功能,如:网址过滤
mangle数据包修改(QOS),用于实现服务质量
nat地址转换,用于网关路由器、nat地址转换
filter包过滤,用于防火墙拦截规则、过滤数据包

内建表的链

图片[2]-防火墙配置之分类及工作原理-蚂蚁安全

chains的概念

图片[3]-防火墙配置之分类及工作原理-蚂蚁安全
  1. prerouting:进入netfilter后的数据包在进入路由判断前执行的规则。改变包。
  2. Input:当经过路由判断后,要进入本机的数据包执行的规则。
  3. output:由本机产生,需向外发的数据包执行的规则。
  4. forward:经过路由判断后,目的地不是本机的数据包执行的规则。与nat 和 mangle表相关联很高,与本机没有关联。
  5. postrouting:经过路由判断后,发送到网卡接口前。即数据包准备离开netfilter时执行的规则。

数据包如何通过 iptables

图片[4]-防火墙配置之分类及工作原理-蚂蚁安全

包拦截与放行

拒绝所有访问 80 端口的数据包
iptables -A INPUT -p tcp –dport 80 -j DROP

允许 192.168.19.1 访问 80 端口的数据包
iptables -I INPUT -p tcp -s 192.168.19.1 –dport 80 -j ACCEPT

仅允许 192.168.19.1 访问80端口的数据包
允许整个网段访问
iptables -I INPUT -p tcp -s 192.168.19.1/24 –dport 80 -j ACCEPT

iptables参数

-P设置默认策略
-F清空规则链
-L查看规则链
-A在规则链的末尾加入新规则
-I num在规则链的头部加入新规则
-D num删除某一条规则
-s匹配来源地址IP/MASK,加叹号”!”表示除这个IP外。
-d匹配目标地址
-i网卡名称 匹配从这块网卡流入的数据
-o网卡名称 匹配从这块网卡流出的数据
-p匹配协议,如tcp,udp,icmp
–dport num匹配目标端口号
–sport num匹配来源端口号

iptables -m 参数说明

-m  state [状态] 

  • INVALID:无效的封包,例如数据破损的封包状态
  • ESTABLISHED:已经联机成功的联机状态;
  • NEW:想要新建立联机的封包状态;
  • RELATED:这个最常用!表示这个封包是与我们主机发送出去的封包有关, 可能是响应封包或者是联机成功之后的传送封包!这个状态很常被设定,因为设定了他之后,只要未来由本机发送出去的封包,即使我们没有设定封包的 INPUT 规则,该有关的封包还是可以进入我们主机, 可以简化相当多的设定规则。
  • UNTRACKED:报文的状态为untracked时,表示报文未被追踪,当报文的状态为Untracked时通常表示无法找到相关的连接。
© 版权声明
THE END
喜欢就支持一下吧
点赞11打赏 分享
评论 抢沙发
头像
欢迎您留下宝贵的建议!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容