理论+实验 Linux-防火墙(Firewalld)基础

一、Firewalld概述

■ Firewalld

  • 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具
  • 支持IPv4、IPv6防火墙设置以及以太网桥
  • 支持服务或应用程序直接添加防火墙规则接口
  • 拥有两种配置模式
    • 运行时配置
    • 永久配置

二、Firewalld和iptables的关系

■ netfilter

  • 位于Linux内核中的包过滤功能 体系
  • 称为Linux防火墙的〃内核态〃
    ■ Firewalld/iptables
  • CentOS7默认的管理防火墙规 则的工具(Firewalld)
  • 称为Linux防火墙的"用户态"
    在这里插入图片描述

■ Firewalld 和 iptables 的区别

Firewalld iptables
配置文件 /usr/lib/firewalld/;/etc/firewalld/ /etc/sysconfig/iptables
对规则的修改 不需要全部刷新策略,不丢失现行连接 需要全部刷新策略,丢失连接
防火墙类型 动态防火墙 静态防火墙

三、Firewalld网络区域

■ 区域介绍

  • 区域如同进入主机的安全门,每个区域都具有不同限制程度 的规则
  • 可以使用一个或多个区域,但是任何一个活跃区域至少需要关联源地址或接口
  • 默认情况下,public区域是默认区域,包含所有接口(网卡)
    在这里插入图片描述
    ■ Firewalld数据处理流程
  • 检查数据来源的源地址
    • 若源地址关联到特定的区域,则执行该区域所指定的规则
    • 若源地址未关联到特定的区域,则使用传入网络接口的区域
      并执行该区域所指定的规则
    • 若网络接口未关联到特定的区域,则使用默认区域并执行该 区域所指定的规则

四、 Firewalld防火墙的配置方法

■ 运行时配置

  • 实时生效,并持续至Firewalld重新启动或重新加载配置
  • 不中断现有连接
  • 不能修改服务配置

■ 永久配置

  • 不立即生效,除非Firewalld重新启动或重新加载配置
  • 中断现有连接
  • 可以修改服务配置

■ Firewall-config 图形工具
■ Firewall-cmd命令行工具
■ /etc/firewalld/中的配置文件

  • Firewalld会优先使用/etc/firewalld冲的配置,如果不存在
    配置文件,则使用/usr/lib/firewalld/中的配置
    • /etc/firewalld/ :用户自定义配置文件,需要时可通过从
      /usr/lib/firewalld/中拷贝
    • /usr/lib/firewalld/:默认配置文件,不建议修改,若恢复至默 认配置,可直接删除/etc/firewalld/中的配置

五、Firewalld-config图形工具

■ 运行时配置/永久配置
■ 重新加载防火墙

  • 更改永久配置并生效

■ 关联网卡到指定区域
■ 修改默认区域
■ 连接状态
■ “区域”选项卡

  • “服务”子选项卡
  • "端口"子选项卡
  • “协议"子选项卡
  • "源端口"子选项卡
  • "伪装"子选项卡
  • "端口转发"子选项卡
  • “ICMP过滤器”子选项卡

■ “服务”选项卡

  • “模块”子选项卡
  • “目标地址”子选项卡

六、区域介绍

区域 描述
drop (丟弃) 任何接收的网络数据包都被丟弃,没有任何回复.仅能有发送出去的网络连接
block (限制) 任何接收的网络连接都被IPv4的icmp-host-prohibited信息和IPv6的icmp6-adm- prohibited 信息所拒绝
public (公共) 在公共区域内使用,不能相信网络内的其他计算机不会对您的计算机造成危害,只能接收经过选取的连接
external (外部) 特别是为路由器启用了伪装功能的外部网.您不能信任来自网络的其他计算,不能相信它们不会对您的计算机造成危害,只能接收经过选择的连接
dmz (非军事区) 用于您的非军事区内的电脑,此区域内可公开访问,可以有限地逬入您的内部网络,仅仅接收经过选择的连接
work (工作) 用于工作区.您可以基本相信网络内的其他电脑不会危害您的电脑.仅仅接收经过选择的连接
home(家庭) 用于家庭网络.您可以基本信任网络内的其他计算机不会危害您的计算机.仅仅接收经过选择 的连接
internal (内部) 用于内部网络.您可以基本上信任网络内的其他计算机不会威胁您的计算机.仅仅接受经过选择的连接
trusted (信任) 可接受所有的网络连接

七、Firewalld防火墙实验

在这里插入图片描述
服务器:
1、开启一台服务器,然后启动防火墙、开机自启防火墙、安装httpd服务(ip地址都已设置 20.0.0.20)
在这里插入图片描述
2、开启httpd、开机自启httpd服务
在这里插入图片描述
3、测试一下能否使用httpd服务。要先把防火墙关掉才能测试(命令:systemctl stop firewalld),测试完后在开启防火墙(命令:systemctl start firewalld)。浏览器输入服务器ip地址 20.0.0.20在这里插入图片描述
客户端:
4、在启动一台客户机,ip是20.0.0.13
在这里插入图片描述
5、在客户机安装一下httpd服务
在这里插入图片描述
6、测试一下
在这里插入图片描述
7、开启httpd、开机自启httpd
在这里插入图片描述
8、开启防火墙、开机自启防火墙
在这里插入图片描述
服务器:
9、用firewall-config打开防火墙设置
在这里插入图片描述
10、添加一个work区域的来源ip,写客户端的ip地址
在这里插入图片描述
在这里插入图片描述
11、勾选允许请求
在这里插入图片描述
12、启用http服务、ssh服务
在这里插入图片描述
在这里插入图片描述
13、公共区域的http服务允许通过、把过滤器也开启
在这里插入图片描述
在这里插入图片描述
14、用客户端ping服务器端,就会无法ping通
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44733021/article/details/107787371