【Flask开发实战】项目介绍-防火墙规则查询系统

news2024/11/15 1:26:11

一、前言

硬件防火墙为常备主用网络安全设备,主要通过网络访问控制方式实现安全防护。

不同厂家防火墙的网络访问控制功能均采用同样的模式操作:防火墙配置若干条防火墙规则,当IP包到来,防火墙根据包的五元组属性(协议、源地址、源端口、目的地址、目的端口)和到来及目的接口所属安全域按顺序对规则匹配(目的接口由路由决定),对IP包转发还是丢弃由首条命中的规则决定,一旦命中后,后续规则将不在匹配,如果没有命中,包默认丢弃。

大型IT网络环境中,可能采用了不同厂商防火墙支撑各类业务安全,不同墙之间互相也有关联。在网络安全日常维护中,如何审计全部防火墙网络策略是否安全合理,如何快速查找指定IP开放策略范围,如何统一纳管不同品牌防火墙统一查询规则,这些对于提升运维效率和安全防护水平尤其重要。

二、防火墙规则基础介绍

每条防火墙规则的核心要素包含:协议类型(TCP/UDP等)、源安全域、目的安全域、源地址(范围)、目的地址(范围)、端口(服务)、动作(允许/拒绝),这些要素参与匹配,其余要素为备注性质,但对理解规则也十分重要,包括:规则号(非匹配顺序,用于唯一性确定规则)、规则名称、描述。

早期的防火墙,规则以ACL文本形式配置,上述要素每样只能单选一条,但现代防火墙拓展了规则范围,安全域、地址和端口均能多选和为空。

协议类型:TCP、UDP、icmp等

安全域:文本字符串,可多条或为空。

地址:基本的单条地址录入有三种形式,包括单个地址host,网络掩码subnet、地址范围range。

服务:对于协议为TCP/UDP,单条服务包含源端口范围和目的端口范围,即开始结束共4个字段,每个取值都是0~65535。

三、项目开发需求

1、解析不同品牌防火墙配置文件,统一输出格式入库防火墙规则展示表(该表内容基本同防火墙Web界面显示的规则,一条规则一行),实现和防火墙界面相同水平的规则展示;内容包含:

序号:非防火墙规则文本内容,按读取顺序生成

协议类型:文本

规则号:文本

规则名称:文本

源安全域、目的安全域:文本可多个逗号隔开

源地址、目的地址:文本可多个逗号隔开,文本展示内容参考防火墙Web界面。

服务:文本可多个逗号隔开

动作:允许/拒绝

描述:文本

2、生成防火墙规则展开表(根据基础展示表笛卡尔展开生成,每条规则很多行,用于精确查询条件匹配),实现IP地址点对点的高级查询,并且可自定义地址组对象和端口组对象作为条件进行高级查询,包含内容:

序号:内容同规则展示表

协议类型:内容同规则展示表

规则号:内容同规则展示表

规则名称:内容同规则展示表

源安全域、目的安全域:内容同规则展示表

源地址、目的地址:每个包含4个字段,开始地址、结束地址、地址文本、地址组名称

服务:包含4个字段,开始源端口、结束源端口、开始目的端口、结束目的端口、服务组名称

动作:内容同规则展示表

描述:内容同规则展示表

 四、开发工作项

根据开发需求,梳理出需要进行的工作事项,包含了以下内容:

1、防火墙配置文本数据的解析、清洗、加工、处理、入库。(生成防火墙规则基础表数据和展开表数据,各类表数据入库保存。)

2、网络防火墙规则查询页面设计、需求功能开发实现。

3、功能测试验证,问题整改。

五、预期效果

登录页面

首页展示

防火墙规则查询页面(支持基本查询、高级查询) 

防火墙规则明细查询(展开后规则详情)

 

本次实现系统功能采用shel+python+flask+mysql的搭配实战整套开发过程。后续文章会展开一步一步来写具体实现过程。届时会给出部分测试数据,有兴趣的小伙伴也可动手一起玩一下~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1516069.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

线上会议大厅应该具备哪些功能,线上会议大厅搭建要注意什么

引言: 随着互联网和信息技术的不断发展,线上会议大厅逐渐成为各行各业进行会议和交流的重要工具。但是,真正的线上会议大厅必须具备一定的功能和特性,才能满足用户的需求,提升会议体验。 一.线上会议大厅应…

13.7 Map 接口(血干JAVA系列)

这里写目录标题 13.7.1 Map接口简介13.7.2 Map.Entry接口简介13.7.3 Map接口的常用子类1.新的子类:HashMap2.相关操作实例(1)实例操作1——向集合中增加和取出内容【例13.26】增加和取得内容 (2)实例操作2------------ 判断指定的key或value是否存在【例13.27】判断…

代码随想录day19(2)二叉树:二叉树的最大深度(leetcode104)

题目要求:求出二叉树的最大深度 思路:首先要区分二叉树的高度与深度。二叉树的高度是任一结点到叶子结点的距离,而二叉树的深度指的是任一节点到根节点的距离(从1开始)。所以求高度使用后序遍历(从下往上&…

金蝶云星空对接打通阿里宜搭逐个单据查询接口与新增表单实例接口

金蝶云星空对接打通阿里宜搭逐个单据查询接口与新增表单实例接口 数据源平台:金蝶云星空 金蝶K/3Cloud结合当今先进管理理论和数十万家国内客户最佳应用实践,面向事业部制、多地点、多工厂等运营协同与管控型企业及集团公司,提供一个通用的ERP服务平台。…

392.判断子序列

题目:给定字符串s和t,判断s是否为t 的子序列。 字符串的一个子序列是原始字符串删除一些字符而不改变剩余字符相对位置形成的新字符串。 解题思路:s是否是 t 的子序列,因此只要能找到任意一种 s 在 t 中出现的方式,即…

义乌购关键字搜索API接口技术详解与代码示例

义乌购关键字搜索API接口技术详解与代码示例 在电子商务蓬勃发展的今天,义乌购作为国内知名的批发市场平台,为广大商家和消费者提供了丰富的商品资源。为了方便开发者快速接入义乌购平台,实现商品信息的搜索与获取,义乌购开放了关…

ROS 语音交互(三) tts

目录 一、模型选择 二、流程 三、核心代码展示 一、模型选择 科大讯飞超拟人识别 二、流程 超拟⼈合成协议 | 讯飞开放平台文档中心 (xfyun.cn) 三、核心代码展示 # coding: utf-8 import _thread as thread import os import time import base64import base64 import …

react/vue项目刷新页面404的原因以及解决办法

项目 公司官网 背景 1、问题描述:react/vue项目,正常的页面操作跳转,不会出现404的问题,但是一旦刷新,就会出现404报错 2、产生原因:我们打开react/vue打包后生成的dist文件夹,可以看到只有一…

Windows系统下载安装Plex媒体服务结合内网穿透远程访问本地影音文件

文章目录 1.前言2. Plex网站搭建2.1 Plex下载和安装2.2 Plex网页测试2.3 cpolar的安装和注册 3. 本地网页发布3.1 Cpolar云端设置3.2 Cpolar本地设置 4. 公网访问测试5. 结语 1.前言 用手机或者平板电脑看视频,已经算是生活中稀松平常的场景了,特别是各…

web项目的搭建

使用Webstorm并创建Next.js文件 1、配置nodejs环境、安装webstorm【配置node.js可以使用nvm去管理nodejs的版本】 2、需要破解webstorm,可能会导致原本的idea失效,注册码过期 3、taobao的npm过期,导致npm is sass执行不成功,需…

python基础篇--学习记录2

1.深浅拷贝 l1 ["张大仙","徐凤年",["李淳刚","邓太阿"]] # 变量名对应的就是内存地址,这里就是将l1的内存地址给了l2 # 现在两个变量指向同一个内存地址,l1变化l2也会变化 l2 l1 现在的需求是l2是l1的拷贝版本,但是两者是完全分割…

基于FPGA的以太网传输图片通过HDMI显示(含源码)

在此之前,已经讲解过HDMI、UDP、DDR3等模块的使用,前文在使用HDMI显示图片时,由于没有讲解DDR3,使用FPGA内部的RAM存储图像数据,因为FPGA片上RAM的资源有限,导致最终显示放大的图片失真严重。 本文通过DDR3…

RabbitMQ 模拟实现【四】:虚拟主机设计

文章目录 虚拟主机设计虚拟主机分析交换机和虚拟主机之间的从属关系核心 API发布消息订阅消息应答消息消费者管理类 虚拟主机设计 虚拟主机分析 类似于 MySQL 的 database,把交换机,队列,绑定,消息…进⾏逻辑上的隔离&#xff0…

外包干了20天,技术退步明显......

先说一下自己的情况,本科生,19年通过校招进入广州某软件公司,干了接近4年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测试…

v-model 粗略解析

v-model 粗略解析 v-model是什么? 双向数据绑定,可以从data流向页面,也可以从页面流向data通常用于表单收集,v-model 默认绑定 value 值书写形式: v-model:value"" 或 v-model v-model原理是什么&#xf…

HTML5+CSS3+JS小实例:全屏背景切换动画

实例:全屏背景切换动画 技术栈:HTML+CSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html lang="zh-CN"> <head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-s…

【论文笔记合集】LSTNet之循环跳跃连接

本文作者&#xff1a; slience_me LSTNet 循环跳跃连接 文章仅作为个人笔记 论文链接 文章原文 LSTNet [25] introduces convolutional neural networks (CNNs) with recurrent-skip connections to capture the short-term and long-term temporal patterns. LSTNet [25]引入…

电脑闹钟软件,电脑上定时提醒的软件

我们生活在一个忙碌的时代&#xff0c;工作、学习、生活等各种事务时常让我们忙得不知所措。而在这样的情况下&#xff0c;一款电脑闹钟软件&#xff0c;电脑上定时提醒的软件就成为了我们不可或缺的工具之一。 电脑闹钟软件&#xff0c;电脑上定时提醒的软件&#xff0c;是一…

SpringBoot集成flyway

简介 Flyway 是一款开源的数据库版本管理工具&#xff0c;它更倾向于规约优于配置的方式。Flyway 可以独立于应用实现管理并跟踪数据库变更&#xff0c;支持数据库版本自动升级&#xff0c;并且有一套默认的规约&#xff0c;不需要复杂的配置&#xff0c;Migrations 可以写成 …

Leetcode 1514 概率最大的路径

文章目录 1. 题目描述2. 我的尝试 1. 题目描述 原题链接&#xff1a;Leetcode 1514 概率最大的路径 给你一个由 n 个节点&#xff08;下标从 0 开始&#xff09;组成的无向加权图&#xff0c;该图由一个描述边的列表组成&#xff0c;其中 edges[i] [a, b] 表示连接节点 a 和 b…