Linux--防火墙{Firewalld和Iptables的关系,iptables四表五链,firewalld网络区域以及通过图形工具进行操作}
前言
- Linux防火墙体系主要工作在传输层,针对TCP、UDP数据段实施过滤和限制,属于典型的包过滤防火墙(或称为传输层防火墙)
- Linux系统的防火墙体系基于内核编码实现,具有非常稳定的性能和极高的效率,因此得到广泛的应用
一:Firewalld和Iptables概述
1.1:Firewalld简介
- 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具
- 支持IPv4,IPv6防火墙设置以及以太网桥
- 支持服务或应用程序直接添加防火墙规则接口
- 拥有两种配置模式
- 运行时配置(一般测试的时候使用)
- 永久配置
1.2:iptables简介
- iptables是Linux的防火墙管理工具而已,真正实现防火墙功能的是Netfilter,我们配置类iptables规则后Netfilter通过这些规则来进行防火墙过滤等操作
二:Firewalld和Iptables的关系
2.1:netfilter
- 位于Linux内核中的包过滤功能体系
- 称为Linux防火墙的“内核态”
2.2:Firewalld、iptables
- CentOS 7默认的管理防火墙规则的工具(Firewalld)
- 称为Linux防火墙的“用户态”
2.3:netfilter和Firewalld,iptables关系
只有iptables才能和内核态进行交互
2.4:Firewalld和iptables的区别
Firewalld | iptables | |
---|---|---|
配置文件 | /usr/lib/firewalld,/etc/firewalld | /etc/sysconfig/iptables |
对规则的修改 | 不需要全部刷新策略,不丢失现行连接 | 需要全部刷新策略,丢失链接 |
防火墙类型 | 动态防火墙 | 静态防火墙 |
2:5:CentOS 6 和CentOS 7 防火墙的区别
-
centos7有firewalld,iptables
centos6是iptables
-
图形化管理工具 firewall-config
命令管理工具:iptables(操作复杂) firewall-cmd
三:Iptables详解
3.1:Netfilter模块概念
- netfilter是主要的工作模块,位于内核中,在网络层的五个位置(就是防火墙四表五链中的五链)注册了一些函数,用来抓取数据包
- 将数据包的信息拿出来匹配各个链位置在对应表中的规则:匹配之后,进行相应的处理ACCEPT,DROP等等
3.2:Netfilter与iptables之间的关系
3.3:规则链
规则的作用:对数据包进行过滤或处理
链的作用:容纳各种防火墙规则
链的分类数据:处理数据包的不同时机
3.4:规则表
表的作用:容纳各种规则链
表的划分依据:防火墙规则的作用相似
3.5:四表五链
- 链就是位置:共有五个
- 进路由(PREROUTING)
- 进系统(INPUT)
- 转发(FORWARD)
- 出系统(OUTPUT)
- 出路由(POSTROUTING)
- 表就是存储的规则
- 数据包到了该链处,会去对应表中查询设置的规则,然后决定是否放行,丢弃,转发还是修改等操作
3.5.1:何为四表
- filter表——过滤数据包(filter是默认的表,在使用iptables命令进行配置规则的时候,不特指其他的表就会默认filter)
- Nat表——用于网络地址转换(IP,端口)
- Mangle表——修改数据包的服务类型,TTL,并且可以配置路由实现QOS
- Raw表——决定数据包是否被状态跟踪机制处理
3.5.2:何为五链
- INPUT链——进来的数据包应用此规则链中的策略
- OUTPUT链——外出的数据包应用此规则链中的策略
- FORWARD链——转发数据包时应用此规则链中的策略
- PREROU