????????防火墙是指设置在不同网络与网络安全域之间的一系列部件的组合,也是不同安全域之间信息 的唯一出口.通过监测、限制并更改跨越防火墙的数据流,尽可能地对外屏蔽网络内部的信息、结 构和运行状态,且有选择地接受外部网络访问。在内外网之间架起一道屏障,以避免发生不可预知 或潜在的入侵。从传统意义上来说防火墙技术分为三类:包过滤(Packet Filtering).应用代理 (Application Proxy)、状态检测(Stateful Inspection)。无论一个防火墙的实现过程有多复杂,归根结 底都是在这三种技术的基础上进行扩展的。
????????Linux的防火墙体系主要工作在网络层,针对TCP/P数据包实时过滤和限制,属于典型的包过滤 防火墙(或称为网络层防火墙).Linux系统的防火墙体系基于内核编码实现,具有非常稳定的性能 和高效率,也因此获得广泛的应用.在CentOS7系统中几种防火墙共存:firewalld,iptables、ebtables. 默认使用firewalld来管理netfilter子系统。
????????netfilter:指的是Linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在. 属于“内核态”(Kernel Space,又称为内核空间)的防火墙功能体系.????????
????????firewalld:指用于管理Linux防火墙的命令程序,属于“用户态”(User Space,又称为用户 空间)的防火墙管理体系.
????????firewalld 的作用是为包过滤机制提供匹配规则(或称为策略),通过各种不同的规则,告诉netfilter 对来自指定源、前往指定目的或具有某些协议特征的数据包采取何种处理方式.为了更加方便地组 织和管理防火墙,firewalld 提供了支持网络区域所定义的网络链接以及接口安全等级的动态防火墙 管理工具.它支持Pv4、IPv6防火墙设置以及以太网桥,并且拥有两种配置模式:运行时配置与永 久配置.它还支持服务或应用程序直接添加防火墙规则接口.
????????firewalld将所有的网络数据流量划分为多个区域,从而简化防护墙管理.根据数据包的源IP地 址或传入网络接口等条件,将数据流量转入相应区域的防火墙规则,对于进入系统的数据包.首先 检查的就是其源地址.
>若源地址关联到特定的区域,则执行该区域所制定的规则.
>若源地址未关联到特定的区域,则使用传入网络接口的区域并执行该区域所制定的规则。
>若网络接口未关联到特定的区域,则使用默认区域并执行该区域所制定的规则。
????????默认区域不是单独的区域,而是指向系统上定义的某个其他区域。默认情况下,默认区域是 public.但是系统管理员可以更改默认区域。以上匹配规则,按照先后顺序,第一个匹配的规则胜出。
?
在CentOS7系统中,可以使用三种方式配置firewalld 防火墙:
>firewall-config图形工具.
>firewall-cmd 命令行工具.
>/etc/firewalld/中的配置文件.
通常情况下,不建议直接编辑配置文件。