热门课程

免费试听

上课方式

开班时间

当前位置: 首页 -   文章 -   新闻动态 -   正文

Linux包过滤防火墙工作方法

知了堂姐
2024-07-08 17:22:16
0

1.Linux包过滤防火墙概述

Netfilter/firewalld以下简称firewalld)是unix/linux CentOS 7.0版本自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙管理工具。

它的功能十分强大,使用非常灵活,可以对流入和流出服务器的数据包进行很精细的控制。特别是它可以在一台非常低硬件配置服务器上运行的非常好,提供近400人的上网服务丝毫不逊色企业级专业路由器防火墙。 

 Netfilter一个系统的内核模块,通过netfilter内核控制硬件设备

firewalld相当于是一个控制软件。

1.2.包过滤防火墙工作层次

主要是网络层,针对IP数据包

体现在对包内的IP地址、端口=服务,等信息的处理上

1.3.netfilter

指的是linux内核中实现包过滤防火墙的内部结构,不以程序或文件的形式存在,属于"内核态/内核空间的防火墙功能体系"

1.4.firewalld

指的是用来管理linux防火墙的命令程序,属于用户态/用户空间的防火墙管理体系。

firewalld属于应用层,属于一个定义规则的配置工具,核心的数据包响应和处理,包括拦截和转发等操作属于netfilter来控制,netfilter属于linux系统核心层内部的一个数据包处理模块。

1.5.firewalld作用

为包过滤机制的实现提供规则,通过各种不同的规则告诉netfilter对来自某些源、前往某些目的或具有某些协议特征的数据包应该如何处理。

1.6.firewalld数据处理流程

 

1.检查数据来源的源地址:

若源地址关联到特定的区域,则执行该区域所制定的规则

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

若网络接口未关联到特定的区域,则使用默认区域并执行该区域所制定的规则

2.当客户端访问网关服务器本身时,网关服务器的入口区域规则是生效的

3.当客户端通过网关服务器访问其他服务器时,网关服务器的入口区域规则不生效

4.在开启firewalld情况下并实现网关服务器转发流量到其他服务器,那么需要通过IP地址伪装或者端口转发实现

 端口转发:

 当客户端访问192.168.1.10:8080时,能跳转到192.168.2.20:80

 

1.7.CentOS 7中存在的防火墙管理程序

在CentOS 7.0版本中有几种应用层的防火墙管理程序:firewalld、iptables、ebtables默认使用firewalld;在CentOS 7版本之前默认使用的是iptables。

相对于传统的iptables防火墙管理工具,firewalld支持动态更新,并加入了区域zone的概念,相对于iptables来说,配置更加简单。

1.8.防火墙区域概念

简单来说,区域就是firewalld预先准备了几套防火墙策略规则(策略模版),用户可以根据生产场景的不同而选择合适的策略合集,从而实现防火墙策略的快速切换使用。

 firewalld能定义多组区域:

 1.根据不同的环境选择不同的区域

 2.根据不同的区域配置不同的访问规则。

1.8.2.firewalld区域选项

在防火墙配置中,"区域"的相关配置选项的含义如下:

服务

其实指的是该服务默认的端口,该服务关闭则表示该服务默认端口关闭

端口

相关端口,端口需依赖所对应的服务,用法如:ssh服务被关闭,意味着TCP22被封,但ssh的端口被管理员改为222,那么在端口中开启222即可实现访问服务器ssh服务,虽然此时的服务ssh是被关闭的。

协议:

指的是比较广范围的服务或端口,如TCP、UDP、ICMP等,相当于是一个组策略。开启了TCP,意味着所有TCP流量均可通过。

源端口

添加访问者的端口,该端口可是一个,也可是一个范围,一般不需要使用,因为源端口一般都是发起请求端的随机端口。

IP地址伪装

NAT,一般用于内网用户通过NAT访问外网,只能用于IPv4

端口转发:

PAT,更加细致的NAT,通过IP+端口实现转换,用于外网访问内网较多

ICMP过滤器

一般用于是否回应ping请求

1.8.3.firewalld服务选项

在防火墙配置中,"服务"的相关配置选项的含义如下:

目标地址:发起请求者要访问的目标地址,添加进的IP则是允许的IP,该配置为空时表示允许所有。

其他选项卡与"区域"中的功能一致。

大家都在看

前端培训机构出来的好找工作吗?前端程序员薪

2024-07-08 浏览次数:0

西华大学计科学院领导们莅临知了堂进行校企合作洽谈

2024-07-08 浏览次数:0

java怎么学才能学好?5点java学习小技巧

2024-07-08 浏览次数:0

知了堂4月信安预科班顺利开课!

2024-07-08 浏览次数:0

什么是前端开发?什么是前端开发和后端开发

2024-07-08 浏览次数:0

程序员如何实现涨薪?看完这篇我懂了

2024-07-08 浏览次数:0
最新资讯