基于Ubuntu坏境下的Suricata坏境搭建
目录
Suricata环境安装
第一步、在 Ubuntu 端点安装 Suricata
1、加入Suricata源
2、更新安装包
3、下载SuricataSuricata
第二步、下载并提取新兴威胁 Suricata 规则集
1、在tmp文件夹下载 Suricata 规则集
如果发现未安装curl,使用apt安装即可:
2、解压并将安装包移动到/etc/suricata/rules/文件夹下
3、给suricata 640的权限
第三步、修改 /etc/suricata/suricata.yaml 文件中的 Suricata 设置,并设置以下变量:
第四步、重新启动 Suricata 服务
第五步、在wazuh部署新代理
1、选择操作系统
2、选择版本
3、选择架构
4、wazuh服务器地址
5、可选设置
6、安装并注册代理
7、启动代理
第六步、在 Wazuh 代理的 /var/ossec/etc/ossec.conf 文件中添加Suricata 日志文件:
第七步、重启 Wazuh 代理以应用更改
缺点:规则太多,误报率较高
解决:降噪——禁用无用规则
Suricata环境安装
第一步、在 Ubuntu 端点安装 Suricata
1、加入Suricata源
root@ubuntu-virtual-machine:/home/ubuntu# add-apt-repository ppa:oisf/suricata-stable

2、更新安装包
root@ubuntu-virtual-machine:/home/ubuntu# apt-get update

3、下载SuricataSuricata
root@ubuntu-virtual-machine:/home/ubuntu# apt-get install suricata -y
第二步、下载并提取新兴威胁 Suricata 规则集
1、在tmp文件夹下载 Suricata 规则集
root@ubuntu-virtual-machine:/home/ubuntu#cd tmp/
root@ubuntu-virtual-machine:/tmp# curl -LOhttps://rules.emergingthreats.net/open/suricata-6.0.8/emerging.rules.tar.gz

如果发现未安装curl,使用apt安装即可:
root@ubuntu-virtual-machine:/tmp# apt install curl

2、解压并将安装包移动到/etc/suricata/rules/文件夹下
root@ubuntu-virtual-machine:~# cd /etc/suricata/
root@ubuntu-virtual-machine:/etc/suricata# mkdir rules
root@ubuntu-virtual-machine:/tmp# tar -xvzf emerging.rules.tar.gz
root@ubuntu-virtual-machine:/tmp# mv /tmp/rules/*.rules /etc/suricata/rules/


3、给suricata 640的权限
root@ubuntu-virtual-machine:/etc/suricata/rules# chmod 640 /etc/suricata/rules/*.rules
第三步、修改 /etc/suricata/suricata.yaml 文件中的 Suricata 设置,并设置以下变量:
root@ubuntu-virtual-machine:/etc/suricata/rules# vim /etc/suricata/suricata.yaml
HOME_NET: "<UBUNTU_IP>" //这里填写suricata服务器的网关
EXTERNAL_NET: "any" //不要这个默认的,先改成any,默认的这个代表陈了本机网关之外的default-rule-path: /etc/suricata/rules
rule-files:
- "*.rules"# Global stats configuration
stats:
enabled: no# Linux high speed capture support
af-packet:- interface: enp0s3
interface 表示要监控的网络接口。用 Ubuntu 端点的接口名称替换该值。例如,enp0s3。
第四步、重新启动 Suricata 服务
root@ubuntu-virtual-machine:/etc/suricata/rules# systemctl restart suricata
第五步、在wazuh部署新代理
1、选择操作系统

2、选择版本

3、选择架构

4、wazuh服务器地址
这是代理用于与 Wazuh 服务器通信的地址。它可以是 IP 地址或完全限定域名 (FQDN)。

5、可选设置
默认情况下,部署将端点主机名设置为代理名称。或者,您可以在下面设置代理名称。
指定代理名称

6、安装并注册代理
您可以使用此命令安装和注册 Wazuh 代理。
如果安装程序在系统中发现另一个 Wazuh 代理,它将对其进行升级并保留配置。

root@ubuntu-virtual-machine:/var/log/suricata# curl -so wazuh-agent.deb https://packages.wazuh.com/4.x/apt/pool/main/w/wazuh-agent/wazuh-agent_4.5.0-1_amd64.deb && sudo WAZUH_MANAGER='192.168.17.128' WAZUH_AGENT_GROUP='default' WAZUH_AGENT_NAME='Ubuntu20' dpkg -i ./wazuh-agent.deb

查看是否添加成功:
[root@wazuh-server ~]# cd /var/ossec/bin/

[root@wazuh-server bin]# ./manage_agents

添加成功
7、启动代理
sudo systemctl daemon-reload
sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent



第六步、在 Wazuh 代理的 /var/ossec/etc/ossec.conf 文件中添加Suricata 日志文件:
root@ubuntu-virtual-machine:/var/log/suricata# vim /var/ossec/etc/ossec.conf
<ossec_config><localfile><log_format>json</log_format><location>/var/log/suricata/eve.json</location></localfile>
</ossec_config>

第七步、重启 Wazuh 代理以应用更改
root@ubuntu-virtual-machine:/var/log/suricata# systemctl restart wazuh-agent

攻击模拟
Wazuh 自动解析Wazuh 仪表板上的数据并生成相关警报。/var/log/suricata/eve.json
从 Wazuh 服务器 Ping Ubuntu 端点 IP 地址:
[root@wazuh-server ~]# ping -c 20 192.168.17.128

打开Wazuh 仪表板中可视化警报数据

监控成功!!
相关文章:
基于Ubuntu坏境下的Suricata坏境搭建
目录 Suricata环境安装 第一步、在 Ubuntu 端点安装 Suricata 1、加入Suricata源 2、更新安装包 3、下载SuricataSuricata 第二步、下载并提取新兴威胁 Suricata 规则集 1、在tmp文件夹下载 Suricata 规则集 如果发现未安装curl,使用apt安装即可:…...
vue3权限管理——(路由权限)动态路由设置
1.大概思路 设置基础路由login和home等页面;登录后从后端获取user,token,rights等数据,并将数据同时存储到vuex和sessionStorage中将后端获取的权限数据(作为不同用户显示不同菜单及不同路由的依据)和路由页面进行映射࿱…...
小程序开发之登录授权
小程序开发登录授权流程 看懂这张图登录授权就没问题了(哈哈哈哈哈) 说明: 调用 wx.login() 获取 临时登录凭证code ,并回传到开发者服务器。 调用 auth.code2Session 接口,换取 用户唯一标识 OpenID 和 会话密钥 sess…...
批量根据excel数据绘制折线图
要批量根据Excel数据绘制折线图,可以使用数据处理和图表绘制软件,例如Microsoft Excel或Python中的Matplotlib库。以下是两种方法: 1. 使用Microsoft Excel: - 打开Excel并导入包含数据的工作表。 - 选择需要绘制折线图的数…...
无锁并发:探秘CAS机制的魔力
😊 作者: 一恍过去 💖 主页: https://blog.csdn.net/zhuocailing3390 🎊 社区: Java技术栈交流 🎉 主题: 无锁并发:探秘CAS机制的魔力 ⏱️ 创作时间: 2…...
iOS App签名与重签名:从开发者证书到重新安装运行
前文回顾: iOS脱壳技术(二):深入探讨dumpdecrypted工具的高级使用方法 iOS逆向:越狱及相关概念的介绍 在本文中,我们将详细介绍iOS应用的签名过程,包括开发者证书的种类、证书与App ID、Provisi…...
vue项目,如何修改Element-Plus等UI组件库的样式,三种方式搞定!!!
前言 我们在学习和使用组件库构建页面的时候,时常会遇到这样的问题。 即,尽管组件库已经提供了较多的功能,来帮助我们构建自定义的效果,但有时仍不能使我们满意。 这个时候我们就不得不修改UI库的样式,来达到想要的状…...
httpd协议与apache
1.http 相关概念 HTTP是处于应用层的协议,使用TCP传输层协议进行可靠的传送。因此,需要特别提醒的是,万维网是基于因特网的一种广泛因特网应用系统,且万维网采用的是HTTP(80/TCP)和 HTTPS(443/…...
Go 自学:文件的写入和读取
首先,使用os.Create()函数建立一个文件。 接着,使用io.WriteString()函数将内容写入文件。 最后,使用os.ReadFile()函数读取文件内容。 注意,这里读取的文件内容是data byte,我们需要使用string()函数将其转换为字符串…...
py 项目上线centos
1 服务器py版本 ps -ef|grep python|grep -v grep 2 2.x版本 安装 PyMySQL pip install PyMySQL0.9.3 3 后台运行py文件 nohup python down.py 1 > log.log 2>&1 & 这个命令将 down.py 程序放入后台运行, 同时将 stdout 输出到 log.log 文件中&…...
【git】would clobber existing tag 报错解决
问题 在用vscode的Git去pull代码的时候git弹窗报错,查看报错日志发现以下内容: > git pull --tags origin feature/xxx-2.0.0 From 173.110.11.22:VV-WORK-FE/vv-desktop* branch feature/xxx-2.0.0 -> FETCH_HEAD! [rejected] …...
Python OCR 使用easyocr库将图片中的文章提取出来
Python OCR 使用easyocr库将图片中的文章提取出来 初环境内容步骤一:安装easyocr库步骤二:导入必要的库步骤三:创建OCR阅读器对象步骤四:指定要识别的图片路径步骤五:执行OCR识别并提取文章内容步骤六:遍历…...
门禁系统忘记登入密码,现在更换电脑如何迁移旧电脑门禁系统的数据
环境: ivms-4200 v3.10.0.6_c 问题描述: 门禁系统忘记登入密码,现在更换电脑如何迁移旧电脑门禁系统的数据,旧电脑记住密码,忘了密码和密保了 解决方案: 1.前往海康官网下载4200客户端,在新电脑上安装 …...
初试Eureka注册中心
Eureka是spring cloud中的一个负责服务注册与发现的组件。遵循着CAP理论中的A(可用性)P(分区容错性)。一个Eureka中分为eureka server和eureka client。其中eureka server是作为服务的注册与发现中心。 搭建eureka服务 引入eureka依赖 引入SpringCloud为eureka提供的starter依…...
【趣味随笔】怎么维护自己的电脑?
📢:如果你也对机器人、人工智能感兴趣,看来我们志同道合✨ 📢:不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 📢:文章若有幸对你有帮助,可点赞 👍…...
element 下拉组件获取对象
// 选择数据user:[{name:"小白",id:1,money:"100",love:"蛋糕"},{name:"小黑",id:2,money:"200",love:"奶茶"},{name:"小红",id:3,money:"300",love:"烧烤"},] <div><el…...
IDEA下SpringBoot指定环境、配置文件启动
1、idea下的SpringBoot启动:指定配置文件 Springboot项目有如下配置文件 主配置文件application.yml, 测试环境:application-test.yml 生产环境:application-pro.yml 开发环境:application-dev.yml 1.1.配置文件…...
python可视化matplotlib——绘制正弦和余弦
这是一个使用matplotlib库绘制正弦和余弦函数曲线的代码示例。代码中导入了需要的库,并设置了x轴和y轴的标签字体为华文楷体。然后,使用numpy生成一组x轴上的值t,并使用正弦函数生成对应的y轴值s,再使用余弦函数生成对应的y轴值z。…...
Day48|leetcode 198.打家劫舍、213.打家劫舍II、打家劫舍|||
leetcode 198.打家劫舍 题目链接:198. 打家劫舍 - 力扣(LeetCode) 视频链接:动态规划,偷不偷这个房间呢?| LeetCode:198.打家劫舍_哔哩哔哩_bilibili 题目概述 你是一个专业的小偷,…...
Mysql001:Mysql概述以及安装
前言:本课程将从头学习Mysql,以我的工作经验来说,sql语句真的太重要的,现在互联网所有的一切都是建立在数据上,因为互联网的兴起,现在的数据日月增多,每年都以翻倍的形式增长,对于数…...
网络编程(Modbus进阶)
思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…...
UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
【决胜公务员考试】求职OMG——见面课测验1
2025最新版!!!6.8截至答题,大家注意呀! 博主码字不易点个关注吧,祝期末顺利~~ 1.单选题(2分) 下列说法错误的是:( B ) A.选调生属于公务员系统 B.公务员属于事业编 C.选调生有基层锻炼的要求 D…...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
是否存在路径(FIFOBB算法)
题目描述 一个具有 n 个顶点e条边的无向图,该图顶点的编号依次为0到n-1且不存在顶点与自身相连的边。请使用FIFOBB算法编写程序,确定是否存在从顶点 source到顶点 destination的路径。 输入 第一行两个整数,分别表示n 和 e 的值(1…...
HDFS分布式存储 zookeeper
hadoop介绍 狭义上hadoop是指apache的一款开源软件 用java语言实现开源框架,允许使用简单的变成模型跨计算机对大型集群进行分布式处理(1.海量的数据存储 2.海量数据的计算)Hadoop核心组件 hdfs(分布式文件存储系统)&a…...
MySQL 知识小结(一)
一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
