07
2019
08
11:09:42

CentOS 7 firewalld 动态防火墙介绍

CentOS 7 firewalld 动态防火墙介绍

FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具。它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项。它也支持允许服务或者应用程序直接添加防火墙规则的接口。

更全面的内容可以查看 FirewallD 官网文档

firewalld 最重要的是 zone 区域的概念

什么是区域?
网络区域定义了网络连接的可信等级。这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接。

预定义的区域列表如下, 每个区域都是一个 xml 文件, 保存在 /usr/lib/firewalld/zones/ 中, 不要编辑这里的文件

自定义区域则保存在 /etc/firewalld/zones/ 中, 可以编辑这里的文件, 这里的设置将覆盖 /usr/lib/firewalld/zones/ 中的设置

区域列表, public 是默认区域, 由 firewalld 提供的区域按照从不信任到信任的顺序排序。

什么是接口?
就是指实际的网卡, 如 eth0, em1. 一个接口只能属于一个区域

什么是服务?
一项服务可以是本地和目的地端口的列表,如果服务被允许的话,也可以是一系列自动加载的防火墙辅助模块。服务通过单个的 XML 配置文件来指定,这些配置文件则按以下格式命名:service-name.xml。

预定义服务保存在 /usr/lib/firewalld/services/ 中
自定义服务保存在 /etc/firewalld/services/ 中

 

CentOS 7 默认使用 firewalld 防火墙, 如果没有启用. 先启用.


配置防火墙

有两种工具可以配置

firewall-config ,图形界面工具, 需要安装图形界面相关的依赖, 这里就不多介绍了.

firewall-cmd , 命令行工具, 主要使用它来配置防火墙.

在设置命令后加 –permanent 参数才会永久保存, 否则在重新加载配置后会丢失设置.


 

复杂防火墙规则配置 “Rich Language” 语法

RichLanguage 官方文档


  • 一个规则是关联某个特定区域的,一个区域可以有几个规则。

  • 如果几个规则互相影响或者冲突,则执行和数据包相匹配的第一个规则。

  • 如果提供了规则系列,它可以是 ipv4 或者 ipv6 。规则系列把规则限定在 IPv4 或  IPv6 。

  • 如果没有提供规则系列, 将为 IPv4 和 IPv6 增加规则。

  • 如果源地址或者目标地址在一个规则中被使用,那么必须提供规则系列。

  • 端口转发也存在这种情况。

通过 firewall-cmd –zone=dmz –add-interface=eth0 命令添加的接口, 在重启 firewalld 服务后将会添加到默认区域(public) 中. 如果想保持原来的设定.则编辑接口文件

 

通过编辑 XML 文件配置防火墙

/etc/firewalld/目录下有三个子目录

为一个区域增删服务

增加自定义服务




推荐本站淘宝优惠价购买喜欢的宝贝:

image.png

本文链接:https://hqyman.cn/post/891.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

分享到:
打赏





休息一下~~


« 上一篇 下一篇 »

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

请先 登录 再评论,若不是会员请先 注册

您的IP地址是: