Linux:Firewalld防火墙基础原理与实操

FIREWALLD原理概述

●支持网络区域所定义的网络链接以及接口安全等级的动态
防火墙管理工具

●支持IPv4、IPv6防火 墙设置以及以太网桥

●支持服务或应用程序直接添加防火墙规则接口

●拥有两种配置模式
◆运行时配置
◆永久配置

Firewalld与Iptables

■netfilter
●位于Linux内核中的包过滤功能

●称为Linux防火墙的“内核态”

■Firewalld/iptables
●CentOS7默认的管理防火墙规
则的工具(Firewalld)

●称为Linux防火墙的“用户态”

在这里插入图片描述

区域详细介绍

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Firewalld 数据处理流程

在这里插入图片描述
这里讲到了优先级
特定的区域最优先
网咯接口的区域其次
最后才是默认

Firewalld 防火墙的配置方法

在这里插入图片描述
在这里插入图片描述

图形界面Firewalld-config图解

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这些子选项包括:
在这里插入图片描述

实操验证原理

实验要求与道具

我们需要准备三台虚拟机分别为20.0.0.140,20.0.0.141,20.0.0.142,其中20.0.0.140
作为服务器,20.0.0.141做客户机,20.0.0.142做客户机

要求:
1 禁止客户机20.0.0.141ping 服务器
2 至允许 20.0.0.141 主机访问ssh服务
3 允许所有主机访问Apache服务

实验开始

首先去20.0.0.140安装一个httpd

[root@localhost ~]# yum -y install httpd
Loaded plugins: fastestmirror, langpacks
centos                                           | 3.6 kB     00:00     
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package httpd.x86_64 0:2.4.6-67.el7.centos will be installed
--> Processing Dependency: httpd-tools = 2.4.6-67.el7.centos for package: httpd-2.4.6-67.el7.centos.x86_64
--> Processing Dependency: /etc/mime.types for package: httpd-2.4.6-67.el7.centos.x86_64
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-2.4.6-67.el7.centos.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-2.4.6-67.el7.centos.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-3.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
---> Package httpd-tools.x86_64 0:2.4.6-67.el7.centos will be installed
---> Package mailcap.noarch 0:2.1.41-2.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

========================================================================
 Package         Arch       Version                    Repository  Size
========================================================================
Installing:
 httpd           x86_64     2.4.6-67.el7.centos        centos     2.7 M
Installing for dependencies:
 apr             x86_64     1.4.8-3.el7                centos     103 k
 apr-util        x86_64     1.5.2-6.el7                centos      92 k
 httpd-tools     x86_64     2.4.6-67.el7.centos        centos      87 k
 mailcap         noarch     2.1.41-2.el7               centos      31 k

Transaction Summary
========================================================================
Install  1 Package (+4 Dependent packages)

Total download size: 3.0 M
Installed size: 10 M
Downloading packages:
------------------------------------------------------------------------
Total                                       15 MB/s | 3.0 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : apr-1.4.8-3.el7.x86_64                               1/5 
  Installing : apr-util-1.5.2-6.el7.x86_64                          2/5 
  Installing : httpd-tools-2.4.6-67.el7.centos.x86_64               3/5 
  Installing : mailcap-2.1.41-2.el7.noarch                          4/5 
  Installing : httpd-2.4.6-67.el7.centos.x86_64                     5/5 
  Verifying  : httpd-2.4.6-67.el7.centos.x86_64                     1/5 
  Verifying  : mailcap-2.1.41-2.el7.noarch                          2/5 
  Verifying  : apr-1.4.8-3.el7.x86_64                               3/5 
  Verifying  : httpd-tools-2.4.6-67.el7.centos.x86_64               4/5 
  Verifying  : apr-util-1.5.2-6.el7.x86_64                          5/5 

Installed:
  httpd.x86_64 0:2.4.6-67.el7.centos                                    

Dependency Installed:
  apr.x86_64 0:1.4.8-3.el7                                              
  apr-util.x86_64 0:1.5.2-6.el7                                         
  httpd-tools.x86_64 0:2.4.6-67.el7.centos                              
  mailcap.noarch 0:2.1.41-2.el7                                         

Complete!
[root@localhost ~]# 

去20.0.0.141与20.0.0.142下分别安装lynx服务

[root@localhost ~]# yum -y install lynx
Loaded plugins: fastestmirror, langpacks
centos                                                                                                         | 3.6 kB  00:00:00     
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package lynx.x86_64 0:2.8.8-0.3.dev15.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

======================================================================================================================================
 Package                    Arch                         Version                                   Repository                    Size
======================================================================================================================================
Installing:
 lynx                       x86_64                       2.8.8-0.3.dev15.el7                       centos                       1.4 M

Transaction Summary
======================================================================================================================================
Install  1 Package

Total download size: 1.4 M
Installed size: 5.4 M
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : lynx-2.8.8-0.3.dev15.el7.x86_64                                                                                    1/1 
  Verifying  : lynx-2.8.8-0.3.dev15.el7.x86_64                                                                                    1/1 

Installed:
  lynx.x86_64 0:2.8.8-0.3.dev15.el7                                                                                                   

Complete!
[root@localhost ~]# 

你也可以使用自己的电脑打开浏览页访问20.0.0.140前提是先关闭140主机的防火墙
下面我们去关闭20.0.0.140主机的防火墙,同时开启http服务

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl start httpd

分别用20.0.0.141和20.0.0.142使用lynx服务访问一下httpd,再用自己的电脑打开浏览页访问20.0.0.140
可以看到:
在这里插入图片描述
141与142访问成功了

在这里插入图片描述
自己的电脑网页也访问成功了,说明http服务可以正常使用!!

接下来我们开始做三条要求
配置如下

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

简述一下实验过程

首先去141安装一个httpd 去主机141与142分别安装lynx服务,这一步是为了测试http好坏

去虚拟机下操作:
第二步🙅‍确保140服务器的防火墙开启,输入命令进入控制界面
到work下选择sources里的ADD 把20.0.0.141添加进去
到work下选择Icmp Filter 勾选一下echo-request
到work下services 只勾选ssh和http
这里我们操作的是为了让20.0.0.141ping不通20.0.0.140,同时让20.0.0.141可以远程登录20.0.0.140,可以访问http服务

最后去public 只勾选http 其他全部不勾选
只开放http服务,其他一律不开通

实验验证

第二个要求验证

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

我们发现直接登录140是登录不了的,而20.0.0.141主机却可以远程登录服务器,20.0.0.142也同样远程登录不了140服务器
第二个要求完成

第一个要求验证

在这里插入图片描述
在这里插入图片描述
141主机不能ping
140主机可以ping
死一个要求完成

第三个要求验证

在这里插入图片描述
在这里插入图片描述

发现都可以访问http
那么完活~

最后恭喜看我文章的朋友跟我一起学习

©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页