防火墙firewalld小结

一、Firewalld概述

1.1 Firewalld 概述

  • 支持网络区域所定义的网络链接以及接口安全等级的动态防火墙管理工具。
  • 支持IPv4、IPv6防火墙设置以及以太网桥
  • 支持服务或应用程序直接添加防火墙规则接口。
  • 拥有两种配置模式: 运行时配置 永久配置
  • 基础原理:(防火墙分为两个区域,内部安全级别高,外部安全级别低)
    从低安全到高安全 防火墙一定会拦截你,过安检。同等级别也不允许
    从防火墙里到外面 防护墙会登记一下,从外面进来的时候会检查一下,如果是目的IP是出去时候的源IP,会直接放行

1.1Firewalld和iptables 的关系

  • netfilter
    位于linux内核中的包过滤体系,称为linux防火墙的“内核态”。
  • Firewalld/iptables
  • Centos7默认的管理防火墙规则的工具(Firewalld),称为Linux防火墙“用户态”。

1.2 Firewalld和iptables的区别

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

1.3 Firewalld网络区域

1.3.1 区域介绍

  • 区域如同进入主机的安全门,每个区域都具有不同限制程度的规则。
  • 可以使用一个或多个区域,但是任何一个活跃区域至少需要关联源地址或接口。
  • 默认情况下,public区域是默认区域,包含所有接口(网卡)

1.3.2 Firewalld 数据处理流程

  • 检查数据来源的源地址
    若源地址关联到特定的区域,则执行该区域所指定的规则
    若源地址未关联到特定的区域,则使用传入网络接口的区域,并执行该区域所指定的规则。

1.4 Firewalld防火墙的配置方法

  • 运行时配置
    实时生效 ,并持续至Firewalld重新启动或重新加载配置。
    不中断现有配置
    不能修改配置服务
  • 永久配置
    不立即生效,除非Firewalld重新启动或重新加载配置。
    中断现有连接。
    可以修改服务配置。
  • Firewalld-config 图形工具
  • Firewall-cmd 命令行工具
  • /etc/firewalld/中的配置文件
    Firewalld会优先使用/etc/firewalld中的配置,如果不存在配置文件,则使用/usr/lib/firewalld中的配置。
    /etc/firewalld/:用户自定义配置文件,需要时可通过从/usr/lib/firewalld中拷贝
    /usr/lib/firewalld/:默认配置文件,不建议修改,若恢复至默认配置,可直接删除/etc/firewalld/中的配置。

1.5 Firewall-config图形工具

  • 在图形化安装的linux系统输入Firewall-config 命令,使用图形化工具。
  • 最小化安装的linux系统无法使用这条命令。
    在这里插入图片描述

1.6 firewalld命令

  • 所有的firewalld命令都是以 firewall-cmd 开头
    查看firewalld状态
    systemctl status firewalld
    firewall-cmd --state
重新加载防火墙规则   --reload
永久生效规则  --permanent
现有配置全部加载成永久配置   --runtime-to-permanent

1.6.1 获取预定义信息

firewall-cmd --get-zones  ## 现在预定义区域
firewall-cmd --get-services   ## 查看预定义服务
firewall-cmd --get-icmptypes  ## 查看预定义的ICMP类型

1.6.2 Firewalld区域管理

filewall-cmd 
--get-defalut-zone  ## 显示默认的区域
--set-default-zone=xxx  ## 设置默认的区域
--get-active-zones  # 显示已激活的所有区域
--get-zone-of-interface=<interface>  ## 显示指定接口绑定的区域
--zone=<zone> --add-interface=<interface> ## 为指定区域添加接口
--zone=<zone> --change-interface=<interface> ## 区域改变端口
--zone=<zone> --remove-interface=<interface> ## 从区域删除端口,删除后端口回到默认端口
--list-all-zones  ## 显示所有的区域的规则
--zone=<zone>  --list-all  ## 显示单个区域的规则

1.6.3 Firewalld 服务管理

[--zone=<zone>] --list-services  ## 显示区域中允许访问的服务列表
[--zone=<zone>]  --add-service=<service>  ## 往指定区域中添加服务
[--zone=<zone>]  --remove-service=<zone>## 在指定区域删除服务
[--zone=<zone>]  --list-ports ## 显示指定区域内允许访问的所有端口号
[--zone=<zone>]  --add-port=69/udp  ## 为指定的区域添加端口号服务
[--zone=<zone>]  --remove-port=69/udp 
[--zone=<zone>]  --list-icmp-blocks ## 显示指定区域内拒绝访问的所有ICMP类型
[--zone=<zone>]  --add-icmp-block=<icmptype> ## 为指定区域设置拒绝访问的某项ICMP类型
[--zone=<zone>]  --remove-icmp-block=<icmptype> ## 删除指定区域已设置的拒绝访问的某项ICMP类


猜你喜欢

转载自blog.csdn.net/weixin_47219725/article/details/107696775
今日推荐