第1章 firewalld防火墙

防火墙

概念

  • 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具
  • 支持IPv4、IPv6防火墙设置以及以太网桥
  • 支持服务或应用程序直接添加防火墙规则接口
  • 拥有两种配置模式
    • 运行时配置:添加的策略立即生效,不用重载防火墙,策略临时存在(重启后失效)
    • 永久配置:添加的策略需要重载防火墙才会生效,策略永远存在

形态

不管是什么防火墙,只要是在Linux中运行的防火墙,就有两种形态

  • 内核态:netfilter
    • 指的是操作系统内核运行的环境,具有最高权限和直接访问系统硬件的能力。在内核态运行的代码可以执行高级的系统操作。
    • netfilter:是Linux内核的一个框架,用于实现网络数据包的过滤和修改。它提供了对数据包进行处理的接口,可以用于实现防火墙功能、网络地址转换(NAT)等。
    • 通常netfilter被firewalld和iptables管理
  • 用户态:iptables、firewalld
    • 是指操作系统提供给应用程序运行的环境,应用程序在用户态运行,不能直接访问硬件,必须通过系统调用等方式访问操作系统提供的服务。
    • iptables:是Linux系统中一个传统的命令行工具,用于配置IPv4数据包过滤规则和网络地址转换(NAT)规则。iptables配置的规则会被netfilter在内核态中执行。
    • firewalld:是一个动态管理防火墙的工具,提供了简化配置和管理防火墙规则的方式。它作为用户态程序运行,并与内核态中的netfilter交互,实现网络安全策略。

防火墙分类

  • 包过滤防火墙:匹配数据包内的关键字,进行过滤
  • 状态话防火墙(思科、华为等设备 )

firewalld网络区域

  • 区域如同进入主机的安全门,每个区域都具有不同限制程度的规则
  • 可以使用一个或多个区域,但是任何一个活跃区域至少需要关联源地址或接口
  • 默认情况下,public区域是默认区域,包含所有接口(网卡)
区域划分  
  • 阻塞区域(block):任何传入的网络数据包都将被阻止。
  • 隔离区域(DMZ):隔离区域也称为非军事区域,内外网络之间增加的一层网络,起到缓冲作用。对于隔离区域,只有选择接受传入的网络连接。
  • 丢弃区域(drop):任何传入的网络连接都被拒绝。
  • 外部区域(external):不相信网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。
  • 家庭区域(home):相信网络上的其他计算机,不会损害你的计算机。
  • 内部区域(internal):信任网络上的其他计算机,不会损害你的计算机。只有选择接受传入的网络连接。
  • 公共区域(public):不相信网络上的任何计算机,只有选择接受传入的网络连接。
  • 信任区域(trusted):所有的网络连接都可以接受。
  • 工作区域(work):相信网络上的其他计算机,不会损害你的计算机。

配置防火墙相关命令

命令

说明

firewall-cmd --state

查询防火墙状态

firewall-cmd --get-zones

获取当前所有区域

firewall-cmd --get-service

获取所有能管理的服务

这里的服务都是默认端口,如果服务的端口被修改了,就不能直接管理该服务

firewall-cmd --get-default-zone

当前接口默认属于哪个区域

firewall-cmd --set-default-zone=internal

将当前接口的默认区域修改为internal

firewall-cmd --get-active-zones

查询当前被激活的区域

firewall-cmd --get-zone-of-interface=ens33

查询指定接口所在的区域

firewall-cmd --zone=dmz --list-interface

列出指定区域有哪些接口

firewall-cmd --zone=dmz --add-service=http

为指定区域添加支持的服务

firewall-cmd --zone=dmz --remove-service=http

删除该区域的指定服务的默认端口

firewall-cmd --zone=dmz --list-services

列出指定区域支持的服务

firewall-cmd --zone=dmz --add-port=80/tcp

添加端口号策略

为同一个服务添加访问端口时,要把对应部署的服务默认端口删除

firewall-cmd --zone=dmz --change-interface=ens33

修改指定接口的所在区域为dmz

firewall-cmd --zone=dmz --add-service=http --permanent

为dmz区域以永久时的方式部署http服务

firewall-cmd --zone=dmz --remove-interface=ens38

删除dmz区域的ens38接口

firewall-cmd --list-all --zone=dmz

列出指定区域的全部信息

firewall-cmd --reload

重载防火墙

  • 14
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值