Linux实验记录:使用firewalld

前言:

本文是一篇关于Linux系统初学者的实验记录。

参考书籍:《Linux就该这么学》

实验环境:

VmwareWorkStation 17——虚拟机软件

RedHatEnterpriseLinux[RHEL]8——红帽操作系统

备注:

RHEL8系统中集成了多款防火墙管理工具,其中firewalld(Dynamic Firewall Manager of Linux systems,Linux系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,它拥有基于CLI(命令行界面)和基于GUI(图形用户界面)两种管理方式。

firewalld预先准备了几套防火墙策略集合(策略模板),供不同使用场景。

区域(zone)指防火墙策略集合(策略模板)

目录

前言:

备注:

正文:

终端管理工具:

实验1:

实验2:

实验3:

实验4:

实验5:

实验6:

实验7:

实验8:

实验9:

实验10:

实验11:

图形管理工具:

Step1:手动安装firewall-config

 Step2:在图形界面打开firewall-configuration

实验1:

实验2: 

实验3:

实验4:

实验5:

总结:


正文:

终端管理工具:

firewalld-cmd是firewalld防火墙配置管理工具的CLI(命令行界面)版本。

参数可用Tab键补齐:

参数 作用
--get-default-zone 查询默认的区域名称
--set-default-zone=<区域名称> 设置默认的区域,使其永久生效
--get-zones 显示可用的区域
--get-services 显示预先定义的服务
--get-active-zones 显示当前正在使用的区域与网卡名称
--add-source= 将源自此IP或子网的流量导向指定区域
--remove-source= 不再将源自此IP或子网的流量导向指定区域
--add-interface=<网卡名称> 将源自此网卡的所有流量都导向某个指定区域
--change-interface=<网卡> 将某个网卡与区域进行关联
--list-all 显示当前区域的网卡配置参数、资源、端口以及服务等信息
--list-all-zones 显示所有区域的网卡配置参数、资源、端口以及服务等信息
--add-service=<服务名> 设置默认区域允许该服务的流量
--add-port=<端口号/协议> 设置默认区域允许该端口的流量
--remove-service=<服务名> 设置默认区域不再允许该服务的流量
--remove-port=<端口号/协议> 设置默认区域不再允许该端口的流量
--reload 让“永久生效”的配置规则立即生效,并覆盖当前的配置规则
--panic-on 开启应急状况模式
--panic-off 关闭应急状况模式

 Runtime:当前立即生效,重启后失效

Permanent:当前不生效,重启后生效。

如果想让当期配置的策略立即生效,需手动执行firewall-cmd --reload指令 

实验1:

查看firewall服务当前所使用的区域

Linux实验记录:使用firewalld_第1张图片

在配置防火墙策略前,必须查看当前生效的是哪个区域。 

实验2:

查询指定网卡在firewalld服务中绑定的区域

Linux实验记录:使用firewalld_第2张图片

根据网卡针对的流量来源,为网卡绑定不同区域,实现对防火墙策略的灵活管控。 

实验3:

把网卡的默认区域修改为external,并在系统重启后生效

Linux实验记录:使用firewalld_第3张图片

实验4:

把firewalld服务的默认区域设置为public。

默认区域也叫全局配置,指的是对所有网卡都生效的配置,优先级较低。

实验5:

启动和关闭firewalld防火墙服务的应急状况模式

紧急模式会切断一切网络连接。

Linux实验记录:使用firewalld_第4张图片

Linux实验记录:使用firewalld_第5张图片

实验6:

查询SSH和HTTPS协议的流量是否允许放行。

实验7:

把HTTPS协议的流量设置为永久允许放行,并立即生效。

Linux实验记录:使用firewalld_第6张图片

 加permanent参数后,重启后才能生效,也可以使用--reload参数使立即生效。

Linux实验记录:使用firewalld_第7张图片

实验8:

把HTTP协议的流量设置为永久拒绝,并立即生效

Linux实验记录:使用firewalld_第8张图片

实验9:

把访问8080和8081端口的流量策略设置为允许,但仅限当前生效。

实验10:

把原本访问本机888端口的流量转发到22端口,要求当前和长期均有效。

这就是端口转发技术:使用户能够通过新的端口访问到原本的服务。

使用firewall-cmd命令实现端口转发的格式:

firewall-cmd --permanent --zone=<区域> --add-forward-port=port=<源端口号>:proto=<协议>:toport=<目标端口号>:toaddr=<目标IP地址>

目标IP地址一般是服务器本机的IP地址。

 在CentOS上使用ssh命令尝试访问RHEL8主机的888端口,访问成功:

Linux实验记录:使用firewalld_第9张图片

实验11:

富规则的设置

富规则也叫复规则,表示更细致、更详细的防火墙策略配置,它可以针对系统服务、端口号、源地址和目标地址等诸多信息进行更有针对性的策略配置。

优先级在所有的防火墙策略中是最高的。

现配置一条富规则,使其拒绝192.168.226.0/24网段的所有用户访问本机ssh服务。

Linux实验记录:使用firewalld_第10张图片

 此时CentOS8能ping通,但ssh被拒绝服务。Linux实验记录:使用firewalld_第11张图片

图形管理工具:

firewall-config使firewalld防火墙配置管理工具的GUI(图形用户界面)版本。

几乎可以实现所有以命令行来执行的操作。

Step1:手动安装firewall-config

Linux实验记录:使用firewalld_第12张图片

 Step2:在图形界面打开firewall-configuration

Linux实验记录:使用firewalld_第13张图片

使用firewall-config工具配置完防火墙策略之后,无需进行二次确认,只要修改,自动保存。

实验1:

将当前区域中请求http服务的流量设置为允许放行,但仅限当前生效。

Linux实验记录:使用firewalld_第14张图片

实验2: 

添加一条防火墙规则:放行访问8080~8088的流量,并将其设置为永久生效。

Linux实验记录:使用firewalld_第15张图片

Reload wall让配置的规则立即生效

Linux实验记录:使用firewalld_第16张图片 实验3:

应用SNAT技术:

局域网中有多台PC,如果网关服务器没有应用SNAT技术(源地址转换),PC收不到响应数据包。

Linux实验记录:使用firewalld_第17张图片

 实验4:

重复前文用firewall-cmd工具的实验:将本机888端口的流量转发到22端口

Linux实验记录:使用firewalld_第18张图片

  实验5:

将网卡与防火墙策略区域进行绑定:

Linux实验记录:使用firewalld_第19张图片

总结:

配置防火墙策略的原则:只要能实现所需的功能,工具可以任选一种。

你可能感兴趣的:(linux,运维,服务器)