RedHat7.0 实验指南之firewall的应用

时间:2021-09-01 17:09:28


redhat7.x  实验指南

之firewall的应用  



实验目的:

永久开启firewalld防火墙

修改默认的区域为work

修改当前连接区域为work

添加防火墙策略(图形化+命令行)

允许172.16.30.0/24访问172.16.30.30的80端口

拒绝192.168.1.0/24 访问本机FTP服务器

拒绝任何人ping本服务器

拒绝任何人通过SSH连接本机

技术原理:

什么是防火墙:

使用防火墙是一种非常有效的网络安全模式,通过它可以隔离风险区域与安全区域的连接,同时不会妨碍对风险区域的访问

防火墙的分类:

软件防火墙:iptables、ISAserver、Checkpoint

硬件防火墙:Unix、Linux、FreeBSD

芯片防火墙:NetScreen、fortiNet、Cisco

从防火墙技术上又分为:包过滤防火墙、代理防火墙和状态监视器

netfilter模块

 在linux下面的防火墙并不是一个服务,而是一个加载到内核中的模块。这个模块就是netfilter模块(网络过滤模块)。

路径:

/usr/lib/modules/3.10.0-514.el7.x86_64/kernel/net/netfilter

 

netfilter模块管理工具:

Iptables  Firewall  Ebtables

注:这三个工具是相互冲突的,在Linux7中默认使用firewalld

 

firewalld图形化配置:

firewall-config

    配置中有两种状态,一种是默认的“运行时(runtime)”,即只在本次生效;另一种是“永久(permanent)”,表示配置的防火墙永久生效

区域:区域,可以理解为场景。场景不一样,行为约束不同。系统默认做了9个区域。这些区域都是系统自带的,也可以自己手动创建

bolck:拒绝所有,跟drop的区别是触犯策略时有回应包,提醒是这个策略阻挡

dmz

drop:拒绝所有,为最强策略。打勾或不打勾也无意义,都是拒绝所有,且触犯策略时无回应包。

external

home:相当于window中的 家庭组

internal

public:默认的防火墙区域。打勾的即为允许,不打勾的则不被允许

trusted:白名单,允许所有。不管打勾的或没打勾的都是允许

work

区域属性:

服务:

一个区域中可以对不同的服务进行配置防火墙规则。默认的只有dhcpv6-client和ssh是默认允许访问的,其他的默认不允许访问。

端口:

根据端口来配置防火墙的规则,默认是什么端口也没有,即不允许任何端口访问(区域服务中被勾选的服务对应的端口除外),如果添加了某个端口,则可以访问端口

伪装:

IPV4的IP转发,并在公网上隐藏自己私网的IP地址,外网看到的是内网到外网出口的IP地址。不适用于ipv6.

端口转发:

端口转发可以是本地到本地,也可以是本地到外系统(伪装开启),也是只适用于IPV4

ICMP过滤器:

互联网控制信息,用来发送错误信息。ICMP过滤器主要就是过滤勾上的ICMP类型消息。如果勾上echorequest,那么表示不允许主机发起连接请求

富规则:

可以根据富规则详细地对防火墙进行设置,包括来源、目的、类型等等

接口:

接口就是网卡接口,一个网卡只能在一个区域中存在,一个区域可以存在多个接口。每个接口可以设置自己的默认区域。

来源:

指定数据包的来源,比如说来自192.168.1.0/24的IP地址被允许或拒绝。配合其他属性使用

 

firewalld命令行配置

add:创建

get:查看

query:查询

set:设置

change:修改

remove:移除

permanent:永久生效

reload :重新加载防火墙

示例:

firewall-cmd--get-zones:查看当前已存在的区域

firewall-cmd--get-active-zones:查看当前活跃的区域

firewall-cmd--get-default-zone:查看当前防火墙的默认区域

firewall-cmd--list-services --zone=hom:查看home区域下的可用服务

firewall-cmd--set-default-zone=home:设置默认区域为home

firewall-cmd--change-zone=work:修改当前连接区域

注:具体使用方法可以直接help获取帮助信息

 

firewalld配置文件

/etc/firewalld/zones

区域模板文件

/usr/lib/firewalld/zones

服务相关的模板文件

/usr/lib/firewalld/services

 

注:由于防火墙的富规则格式太过复杂,所以在图形化配置富规则完成后,通过“firewall-cmd --zone=work --list-all”命令可以直接查看命令行模式的富规则,等同于图形化的配置


实验场景:

1台redhat7.x系统的虚拟机    1台本机,

实验步骤:

               1 永久开启fiewalld

          RedHat7.0 实验指南之firewall的应用

         查看防火墙状态

RedHat7.0 实验指南之firewall的应用

2,修改默认的区域为work

RedHat7.0 实验指南之firewall的应用

                 3,修改当前连接区域为work

RedHat7.0 实验指南之firewall的应用

4,添加防火墙策略(图形化+命令行)

允许172.16.30.0/24访问172.16.30.30的80端口

RedHat7.0 实验指南之firewall的应用


拒绝192.168.1.0/24 访问本机FTP服务器


RedHat7.0 实验指南之firewall的应用

拒绝任何人ping本服务器

拒绝任何人通过SSH连接本机

RedHat7.0 实验指南之firewall的应用

辅导人员:飞姐 ,  

参考文案:飞姐出品的服务文档,千影出品的文档