Firewalld防火墙基础篇

Firewalld概述:

  • 支持网络区域所定义的网络链接以及接口安全等级的动态,防火墙管理工具
  • 支持IPv4,IPv6防火墙设置以及以太网桥
  • 支持服务或应用程序直接添加防火墙规则接口
  • 当数据包想从外部区域访问至内部区域一定要经过防火墙安检;同等级别的访问是不允许的
  • 当访问外部主机的时候,防火墙会记录源IP地址;当数据回来的时候,防火墙再检查是否是源IP

拥有两种配置模式

  1. 运行时配置
  2. 永久配置

原理知识点

  • 防火墙处于内部局域网和广域网之间
  • 外网(低安全级别)往内部网络(高安全级别)去跨越的时候防火墙会拦截;会查看规则,匹配上就放行,匹配不上数据就会丢掉
  • 数据从内网往外网出去的时候防火墙会登记,当数据回来的时候会检查源IP地址,如果源IP地址是内部的地址,就会自动放通;当人为添加规则后会再检查数据
    在这里插入图片描述

Firewalld和iptables的关系:

Netfilter:
●位于Linux内核中的包过滤功能体系
●称为Linux防火墙“内核态”
●人不能接触到的是内核态

Firewalld/iptables:
●Centos7默认的管理防火墙规则的工具
●称为Linux防火墙的“用户态”
●firewall就是iptables的封装是为了简化操作,而且多元化
在这里插入图片描述

Firewalld和iptables的区别

在这里插入图片描述
iptables定义后就需要重启服务,firewall不需要重启服务;firewall更加灵活

Firewalld的网络区域

区域介绍

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

Firewalld数据处理流程

检查数据来源的源地址

  • 若源地址关联到特定的区域,则执行该区域所指定的规则
  • 若源地址未关联到特定的区域,则使用传入网络接口的区域并执行该区域所指定的规则
  • 若网络接口未关联到特定的区域,则使用默认区域并执行该区域所指定的规则

Firewalld防火墙配置方法

运行时配置;临时设置相当于输入命令

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

永久配置

  • 不立即生效,除非Firewalld重新启动或重新加载配置
  • 中断现有连接
  • 可以修改服务配置
  • 永久设置相当于修改配置文件配置文件的修改才是永久生效

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

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

Firewall-config图形工具

运行时配置/永久配置
在这里插入图片描述
重新加载防火墙
更改永久配置并生效
在这里插入图片描述
关联网卡到指定区域
在这里插入图片描述
修改默认区域
在这里插入图片描述
连接状态
在这里插入图片描述

firewall-cmd 命令:

启动、停止、查看 firewalld 服务

[root@localhost /]# systemctl start firewalld ##启动防火墙
[root@localhost /]# systemctl enable firewalld ##设置为开机自启
[root@localhost /]# systemctl status firewalld.service ##查看防火墙运行状态
在这里插入图片描述
[root@localhost /]# firewall-cmd --state ##也是查看防火墙状态
在这里插入图片描述
禁用 firewalld,执行以下命令即可实现:
[root@localhost /]# systemctl stop firewalld ##停止firewalld
[root@localhost /]# systemctl disable firewalld ##设置开机不自启动

获取预定义信息

[root@cai ~]# firewall-cmd --get-zones ##显示预定义的区域block阻塞区域
block阻塞区域;dmz非军事化区域;drop丢失区域;external外部区域
home内部区域;internal内部区域;public公共区域;trusted信任区域;work工作区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --get-service ##显示预定义服务
在这里插入图片描述
[root@cai ~]# firewall-cmd --get-icmptypes ##显示预定义的ICMP类型
在这里插入图片描述

区域管理

[root@cai ~]# firewall-cmd --get-default-zone ##显示网络连接或接口的默认区域
[root@cai ~]# firewall-cmd --set-default-zone=work ##设置网络连接或接口的默认区域;这边设置为work区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --get-active-zones ##显示已激活的所有区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --get-zone-of-interface=ens33 ##显示指定接口绑定的区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=public --add-interface=ens33 ##为指定接口绑定区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=public --change-interface=ens36 ##为指定的区域更改绑定的网络接口 ;这边将public区域添加ens36网卡
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=public --remove-interface=ens36 ##为指定的区域删除绑定的网络接口
在这里插入图片描述
[root@cai ~]# firewall-cmd --list-all-zones ##显示所有区域及其规则
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --list-all ##显示指定的某个区域规则,这边显示的是work区域
在这里插入图片描述

服务管理

[root@cai ~]# firewall-cmd --zone=work --list-services ##显示指定区域内允许访问的所有服务;这边举例work区域
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --add-service=http ##为指定区域设置允许访问的某项服务,这边添加http服务
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --remove-service=http ##删除指定区域已设置的允许访问的某项服务
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --list-ports ##显示指定区域内允许访问的所有端口号
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --add-port=36/udp ##为指定区域设置允许访问的某个/某段端口号
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --remove-port=36/udp ##删除指定区域已设置的允许访问的端口号(包括 协议名)
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --list-icmp-blocks ##显示指定区域内拒绝访问的所有 ICMP 类型
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --add-icmp-block=echo-reply ##为指定区域设置拒绝访问的某项 ICMP 类型
在这里插入图片描述
[root@cai ~]# firewall-cmd --zone=work --remove-icmp-block=echo-reply ##删除指定区域已设置的拒绝访问的某项 ICMP 类型
在这里插入图片描述

配置模式

[root@cai ~]# firewall-cmd --permanent --zone=work --add-port=36/udp ##设置永久性规则,这些规则只有在重新启动
在这里插入图片描述
[root@cai ~]# firewall-cmd --reload ##重新加载防火墙规则并保持状态信息,即将永久配置应用为运行时配置
在这里插入图片描述
[root@cai ~]# firewall-cmd --runtime-to-permanent ##将当前的运行时配置写入规则配置文件中,使之成为永久性
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Cpureman/article/details/107659354