IT运维:使用数据分析平台监控深信服防火墙
概述
深信服防火墙自身监控可以满足绝大部分需求,比如哪个应用占了最大带宽,哪个用户访问了哪些网站?这里我们为什么使用鸿鹄呢?因为我们要的是数据的处理和分析,比如某个用户在某个事件都做了哪些行为,这个在防火墙上去查看日志是巨大的工作量,效率低,费时长,且容易错漏。而这个恰恰是鸿鹄擅长。我们在运维中不能仅仅关注在监控上,更扩展到安全上,从而保证整个基础架构的稳定、安全运行。
监控目标
收集并保存防火墙设备的日志,满足等保要求
监控防火墙的登录安全
监控防火墙的配置安全
提供基于用户或IP或其他关键字的搜索,强化安全
安装vector
Vector作为数据采集器,可以接收设备的syslog日志,并转发鸿鹄平台。Vector配置方法参考下文:
安装Vector
查看安装后vector版本,确认安装成功
vector安装好后,直接执行vector 时,系统首先会去/usr/bin下寻找命令,如果不在这个目录中,就会找不到了。这个时候我们就需要为这些找不到的命令建立一个链接文件,链接到/usr/bin下
登录鸿鹄平台,数据管理>新建数据集
编辑数据源名称,选择数据集范围为上面创建的“switch”,此时会启用
创建syslog.toml脚本,需要调整字段
address = "0.0.0.0:514":0.0.0.0表示接收所有主机发送过来的syslog,514表示接收的端口(syslog默认为514)
mode = "udp":表示接收syslog的协议syslog默认为udp)
._target_table = "switch" : 表示上文你创建的数据集名称
address = "172.20.6.111:9092":鸿鹄的IP和相应的端口
运行修改的syslog脚本,注意保持运行状态。
登录交换机触发syslog(注:登录交换机输入命令都会自动触发syslog)。登录鸿鹄平台查看数据是否导入到switch数据集。如下图事件计数已经显示数据导入成功
查询下通过vector导入到switch数据集的数据
配置防火墙syslog
syslog配置>填写鸿鹄IP和端口号>应用
字段抽取
深信服由于是国产防火墙,防火墙日志字段很多包含中文,因此我们需要再次抽取字段。字段抽取的逻辑是,先通过sql语句创建视图,视图生成后我们就可以直接调用视图里的字段,它实际日志仍旧存放在原数据集。
我们先分析下日志格式。
通过以下两条日志我们可以看到,日志格式后半段的格式是不一样的,针对这种情况,我这里的做法是,先抽取共性字段,再单独逐个抽取不同类型的日志字段。
以该日志为例
共性字段抽取
以该日志为例
sangfor_syslog,这里是需要新建的视图名称
switch._time 脚本中由第六行开始switch均指的需要抽取数据的原数据集,这里需要根据你的数据集名称替换
where contains( switch._message, '日志类型') '日志类型'指的是你要搜索到这个写日志特定的字段,通过’日志类型‘可以限定日志里所有包含'日志类型'的日志
正则表达式如何写以及测试
访问https://regex101.com/,在REGULAR EXPRESSION里填写正则表达式,或直接在这里写
在TESTING STRING里输入日志,可以直接从鸿鹄上拷贝相关的日志
正则表达式如果是正确的,会生成对应的颜色,以及右下角会Match information里会显示抽取的字段名和字段内容
在高阶查询中运行,成功
在视图里可以查看到我们创建的sangfor_syslog的视图
我们运行搜索语句测试下,同时在红色部分可以看到我们抽取出来的字段
NAT字段抽取
以该日志为例
sangfor_nat_syslog,这里是需要新建的视图名称
switch._time 脚本中由第六行开始switch均指的需要抽取数据的原数据集,这里需要根据你的数据集名称替换
where contains( switch._message, 'NAT') '日志类型'指的是你要搜索到这个写日志特定的字段,通过NAT可以限定日志里所有包含NAT的日志
正则表达式如何写以及测试
访问https://regex101.com/,在REGULAR EXPRESSION里填写正则表达式,或直接在这里写
在TESTING STRING里输入日志,可以直接从鸿鹄上拷贝相关的日志
正则表达式如果是正确的,会生成对应的颜色,以及右下角会Match information里会显示抽取的字段名和字段内容,
注意:正则表达式写的时候抽取字段,group一定都要命名,不然就不要定义为group。比如下面的正则表达式,由于红色部分选择了抽取,确又没有定义字段名称,那么鸿鹄在抽取匹配字段时就会异常,虽然结果是成功的,但是字段都没有抽取出来。
(?\w{3}\s\d{2}\s\d{2}:\d{2}:\d{2})\s\w+\s(?\w+):\s\D{4}:(?\D{5}),\s\D{5}:(?\w+),\s\D{3}:(?\d+.\d+.\d+.\d+),\s\D{3}:(?\d+),\s\D{4}:(?\d+.\d+.\d+.\d+),\s\D{4}:(?\d+),\s\D{2}:(\d+),\s\D{6}:(?\d+.\d+.\d+.\d+),\s\D{6}:(?\d+)$
在高阶查询中运行,成功
在视图里可以查看到我们创建的sangfor_nat_syslog的视图
我们运行搜索语句测试下,同时在红色部分可以看到我们抽取出来的字段
login字段抽取
防火墙日志每个组件的日志格式各不相同,那么我们可能需要根据自己的情况进行多次字段抽取,上文已详述过字段抽取方法,这里只提供抽取字段脚本供参考
图表展示
在图表创建部分,我这边每个类型的图表只会举一个例子,但会把所有的搜索语言列出来,供大家参考。
仪表板>新建仪表板
创建完成
日志告警等级统计
新建图表>日志类别
选择图表类型:饼图
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择1天,可以根据自己的情况调整
生成图表后,可以查看各种类型的日志的统计
目的:用于统计日志总量,查看类别的统计总数。另外一点好看。
登录事件明细
新建图表>登录事件明细
选择图表类型:表格
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择1天,可以根据自己的情况调整
生成图表后,可以查看设备登录的明细,比如哪个用户,哪个时间,从哪个IP登录
目的:用于判断是否有异常登录,或密码探测行为
登录事件明细
新建图表>设备数量
选择图表类型:单值趋势图
查询语句:这个语句可以先在查询里验证,确认查找的结果是想要的
时间范围:选择30分钟,可以根据自己的情况调整
生成图表后,可以统计所有日志的发送到鸿鹄的服务器数量。
目的:用于确认当前监控的设备总计数量,便于检查错漏,主要为了图表布局的好看。
搜索语句
以下列出所有本文中的搜索语句,供参考
小提示:搜索语句命令部分会调用抽取的字符段,如果未抽取字段,会出现报错
效果图
图表创建完成后,我们选择“网格布局”对图表布局进行优化调整,最终效果图如下
相关文章:

IT运维:使用数据分析平台监控深信服防火墙
概述 深信服防火墙自身监控可以满足绝大部分需求,比如哪个应用占了最大带宽,哪个用户访问了哪些网站?这里我们为什么使用鸿鹄呢?因为我们要的是数据的处理和分析,比如某个用户在某个事件都做了哪些行为,这个…...

深入解析 Axios Blob 的使用方法及技巧
在 Web 开发中,处理文件传输是一个常见的需求。Blob(二进制对象)是一种表示二进制数据的方式,常用于处理文件和多媒体数据。本文将介绍如何使用 Axios 和 Blob 来处理文件传输。 Axios Blob 概念 在开始之前,让我们先…...

爬虫逆向实战(十三)--某课网登录
一、数据接口分析 主页地址:某课网 1、抓包 通过抓包可以发现登录接口是user/login 2、判断是否有加密参数 请求参数是否加密? 通过查看“载荷”模块可以发现有一个password加密参数,还有一个browser_key这个可以写死不需要关心 请求头…...

4.SpringCloud
1.SpringCloud概述 Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线,一次性令牌,全局锁,…...

OLED透明屏采购指南:如何选择高质量产品?
着科技的不断进步,OLED透明屏作为一种创新的显示技术,在各个行业中得到了广泛应用。 在进行OLED透明屏采购时,选择高质量的产品至关重要。在这篇文章中,尼伽将为您提供一个全面的OLED透明屏采购指南,帮助您了解关键步…...

机器学习编译系列
机器学习编译MLC 1. 引言2. 机器学习编译--概述2.1 什么是机器学习编译 1. 引言 陈天奇目前任教于CMU,研究方向为机器学习系统。他是TVM、MXNET、XGBoost的主要作者。2022年夏天,陈天奇在B站开设了《机器学习编译》的课程。 《机器学习编译》课程共分…...
MySQL 数据库巡检系统的设计与应用
文章目录 MySQL 数据库巡检系统的设计与应用引言1. 设计思路1.1 数据采集模块1.2 数据分析模块1.3 前端展示模块1.4 报警模块2. 实现步骤2.1 数据采集2.2 数据分析2.3 前端展示2.4 报警模块3. 应用案例3.1 数据采集步骤一:安装 Zabbix Agent步骤二:添加监控项步骤三:添加用户…...

工程项目管理系统源码+功能清单+项目模块+spring cloud +spring boot em
工程项目管理软件(工程项目管理系统)对建设工程项目管理组织建设、项目策划决策、规划设计、施工建设到竣工交付、总结评估、运维运营,全过程、全方位的对项目进行综合管理 工程项目各模块及其功能点清单 一、系统管理 1、数据字典&#…...

前端笔试+面试分享
以下是个人线下面试遇到的真实的题,仅供参考和学习 1. css 选择符有哪些?哪些属性可以继承?优先级算法加何计算? CSS选择符有很多种,例如类型选择器、类选择器、ID选择器、属性选择器、伪类选择器、伪元素选择器等。 …...
C Language Handout
明天(9月3日)上课时间 上午:09:30 - 12:00 下午:14:30 - 17:00 周末 - 务必 - 找一下报名/班主任老师 - 确认账号是否为正式账号 今日内容: 一.第一个C语言程序 mkdir /home/tarena/stdc/day03 -p cd /home/tarena/stdc/day03 vim hello.c #include <stdio.h> /* 这是…...

数据结构——栈(C语言)
需求:无 栈的概念: 栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端为栈底。栈中的数据元素遵守后进先出(LIFO)原则。压栈&…...
Linux 内核内存管理 page_address 函数
文章目录 一、page_address1.1 page_address1.2 page_to_pfn1.3 PFN_PHYS1.4 __va(x)1.5 总结1.6 page_to_virt 二、使用demo 一、page_address 1.1 page_address 内核用 struct page 结构体来表示系统中的每个物理页面,该结构体用来跟踪和管理这些物理页面的使用…...

macOS使用ffmpeg与QT进行音视频推拉流
1.先启动流服务器 ./mediamtx 2.开始推流: ffmpeg -re -stream_loop -1 -i /Users/hackerx/Desktop/test.mp4 -c copy -rtsp_transport tcp -f rtsp rtsp://127.0.0.1:8554/stream 3. 安装ffmpeg 4.4 brew install ffmpeg4 4.添加ffmpeg头文件目录与库目录 5.链接ffmpeg相关库…...
ARTS打卡:双指针的尝试
替换空格 <?php class Solution {/*** param String $s* return String*/function replaceSpace($s) {$arrstr_split($s); //转化成数组foreach($arr as &$item){if($item ){//执行替换操作$item%20;}}return implode(,$arr); //数组转化成字符串返回} } 反转链表…...

JavaWeb-DAO设计模式
目录 DAO设计模式 1.认识DAO 2.DAO各部分的详解 3.DAO设计模式流程 DAO设计模式 1.认识DAO DAO(Data Acess Object 数据库访问对象)的主要功能是操作数据库,所以DAO在标准开发架构中数据数据层,以下是标准开发的架构 客户层:目前使用B/…...
重温git和GitHub
1.初始化本地库:让git获取到这个目录的管理权 git init 查看文件夹的文件命令:ll 查看文件夹的隐藏的文件命令:ll -a 查看状态的命令:git status cat文件名:查看文件内容 工作区:当git status时,名字为红色则在工作区&…...

C# WPF 中 外部图标引入iconfont,无法正常显示问题 【小白记录】
wpf iconfont 外部图标引入,无法正常显示问题。 1. 检查资源路径和引入格式是否正确2. 检查资源是否包含在程序集中 1. 检查资源路径和引入格式是否正确 正确的格式,注意字体文件 “xxxx.ttf” 应写为 “#xxxx” <TextBlock Text"…...

Hi-TRS:骨架点视频序列的层级式建模及层级式自监督学习
论文题目:Hierarchically Self-Supervised Transformer for Human Skeleton Representation Learning 论文下载地址:https://www.ecva.net/papers/eccv_2022/papers_ECCV/papers/136860181.pdf 代码地址:https://github.com/yuxiaochen1103…...

FPGA 之 xilinx DDS IP相位控制字及频率控制字浅析
浅析相位环在Xilinx DDS中的理解 本文仅为个人理解之用; 相关仿真结果如下:...

[鹏城杯 2022]简单包含
直接用php:// 有wtf 加脏数据绕过...

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析
1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具,该工具基于TUN接口实现其功能,利用反向TCP/TLS连接建立一条隐蔽的通信信道,支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式,适应复杂网…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...

ETLCloud可能遇到的问题有哪些?常见坑位解析
数据集成平台ETLCloud,主要用于支持数据的抽取(Extract)、转换(Transform)和加载(Load)过程。提供了一个简洁直观的界面,以便用户可以在不同的数据源之间轻松地进行数据迁移和转换。…...
Rust 异步编程
Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习) 一、Aspose.PDF 简介二、说明(⚠️仅供学习与研究使用)三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...