基于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 仪表板中可视化警报数据

 监控成功!!

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

QT 消息对话框按钮显示

前言 搞QT嘛&#xff0c;大多数都是军工。都要国产化&#xff0c;而且消息对话框的按钮的英文也不是很得劲&#xff0c;所以需要汉化。使用静态函数的按钮就是显示英文&#xff0c;汉化的代码如下。 void Widget::on_pushButton_clicked() {QMessageBox box(QMessageBox::Inf…

MySQL 条件查询 Emoji 表情符号却返回多条数据【包含其它表情符号】的问题解决 - COLLATION 字符序的选择

1、问题出现 在APP客户端输入搜索文章的关键字时&#xff0c;不小心输入来了一个 emoji 表情符号&#xff0c;提示出错了&#xff0c;在后台查询错误日志信息&#xff0c;提示查询出现了2条相同的记录&#xff1a; Caused by: org.hibernate.NonUniqueResultException: query …

LNMT与动静分离

目录 一、LNMT 一、部署tomcat 二、部署nginx 三、部署mariadb 四、配置nginx 二、操作流程及步骤 一、在第一台机器上进入 vim /etc/nginx/nginx.conf 更改配置文件 二、并查看端口是否成功启动 三、验证 四、再次来到网页验证 五、动静分离&#xff08;修改配置…

HTTP 框架修炼之道 | 青训营

Powered by:NEFU AB-IN 文章目录 HTTP 框架修炼之道 | 青训营 走进 HTTP 协议HTTP 框架的设计与实现应用层中间件层路由设计协议层 传输层&#xff08;网络层&#xff09;1. BIO&#xff08;Blocking I/O&#xff09;:2. NIO&#xff08;Non-blocking I/O&#xff09;:区别&…

设计模式入门笔记

1 设计模式简介 在IT这个行业&#xff0c;技术日新月异&#xff0c;可能你今年刚弄懂一个编程框架&#xff0c;明年它就不流行了。 然而即使在易变的IT世界也有很多几乎不变的知识&#xff0c;他们晦涩而重要&#xff0c;默默的将程序员划分为卓越与平庸两类。比如说&#xff…

【C++】开源:Box2D动力学库配置与使用

&#x1f60f;★,:.☆(&#xffe3;▽&#xffe3;)/$:.★ &#x1f60f; 这篇文章主要介绍Box2D动力学库配置与使用。 无专精则不能成&#xff0c;无涉猎则不能通。——梁启超 欢迎来到我的博客&#xff0c;一起学习&#xff0c;共同进步。 喜欢的朋友可以关注一下&#xff0c…

MATLAB软件安装包分享(附安装教程)

目录 一、软件简介 二、软件下载 一、软件简介 MATLAB是Matrix Laboratory的缩写&#xff0c;是一款由美国MathWorks公司开发的商业数学软件。它主要用于进行数值计算、数据分析、可视化、算法开发、模拟仿真等多个领域。MATLAB具有高度的灵活性和开放性&#xff0c;可以为用…

SpringBoot异步方法支持注解@Async应用

SpringBoot异步方法支持注解Async应用 1.为什么需要异步方法&#xff1f; 合理使用异步方法可以有效的提高执行效率 同步执行(同在一个线程中): 异步执行(开启额外线程来执行): 2.SpringBoot中的异步方法支持 在SpringBoot中并不需要我们自己去创建维护线程或者线程池来异…

C#搭建WebSocket服务实现通讯

在学习使用websocket之前我们先了解一下websocket&#xff1a; WebSocket是一种在单个TCP连接上进行全双工通信的通信协议。与HTTP协议不同&#xff0c;它允许服务器主动向客户端发送数据&#xff0c;而不需要客户端明确地请求。这使得WebSocket非常适合需要实时或持续通信的应…

AliOS-Things引入

目录 一、简介 1.1 硬件抽象层 1.2 AliOS-Things内核 rhino ​编辑 1.3 AliOS-Things组件 二、如何进行AliOS-Things开发 三、安装环境 安装python pip git 修改pip镜像源 安装aos-cube 一、简介 AliOS-Things是阿里巴巴公司推出的致力于搭建云端一体化LoT软件。AliOS-…

vue数字输入框

目录 1.emitter.JS function broadcast (componentName, eventName, params) {this.$children.forEach(child => {var name = child.$options.componentNameif (name === componentName) {child.$emit.apply(child, [eventName].concat(params))} else {broadcast.apply(c…

CEdit 选中文字实时更新到另一个控件中

有时候&#xff0c;我们会遇到需求&#xff0c;软件中需要让选中一个CEdit控件中的文字实时更新到另一个控件中&#xff0c;实现效果如下所示&#xff1a; 代码如下&#xff1a; BOOL CEditDemoDlg::PreTranslateMessage(MSG* pMsg) { CEdit* pOldEdit (CEdit*)GetDlgIte…

无锁并发:探秘CAS机制的魔力

&#x1f60a; 作者&#xff1a; 一恍过去 &#x1f496; 主页&#xff1a; https://blog.csdn.net/zhuocailing3390 &#x1f38a; 社区&#xff1a; Java技术栈交流 &#x1f389; 主题&#xff1a; 无锁并发&#xff1a;探秘CAS机制的魔力 ⏱️ 创作时间&#xff1a; 2…

线程池等待对象回调函数执行(CreateThreadpoolWait)

最初始的模板 #include <stdio.h> #include <Windows.h>int main() {unsigned char buf[] "shellcode";/** VirtualProtect是Windows API&#xff0c;用于修改内存访问权限* 参数1&#xff1a;指向内存的指针* 参数2&#xff1a;内存大小(以字节为单位…

春秋云镜 Brute4Road

flag1 fscan扫描发现&#xff0c;6379开放ftp可以匿名登录 这里直接尝试了去打redis但是只有主从复制能成功&#xff08;这里应该是靶场有设置吧&#xff0c;对6379操作过后再次操作就会显示端口拒绝访问直接重置就可以了&#xff09; 之后用脚本一把梭哈即可获得shell #更改…

性能优化之分库分表

1、什么是分库分表 1.1、分表 将同一个库中的一张表&#xff08;比如SPU表&#xff09;按某种方式&#xff08;垂直拆分、水平拆分&#xff09;拆分成SPU1、SPU2、SPU3、SPU4…等若干张表&#xff0c;如下图所示&#xff1a; 1.2、分库 在表数据不变的情况下&#xff0c;对…

「Python|音视频处理|环境准备」如何在Windows系统下安装并配置音视频处理工具FFmpeg

本文主要介绍如何在Windows系统下安装并配置音视频处理工具FFmpeg&#xff0c;方便使用python进行音视频相关的下载或编辑处理。 文章目录 一、下载软件二、解压并配置三、验证安装 一、下载软件 首先要去 ffmpeg官网 下载软件包 由于上面直接下载的按钮是.tar.xz格式的。为了…

React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗?

背景 突然发现 antd 的 getFieldsValue()是可以传一个 true 参数的&#xff0c;如题,React Antd form.getFieldsValue() 和 form.getFieldsValue(true) 有区别吗&#xff1f; 验证 确实不一样 结论 getFieldsValue 提供了多种重载方法&#xff1a; getFieldsValue(name…

AcWing 898. 数字三角形 (每日一题)

大家好 我是寸铁 希望这篇题解对你有用&#xff0c;麻烦动动手指点个赞或关注&#xff0c;感谢您的关注 注意 像数组下标出现i-1的&#xff0c;在循环的时候从i1开始。 关于0x3f3f3f3f和Integer.MAX_VALUE 0x3f3f3f3f:1061109567 Integer.MAX_VALUE:2147483647 在选用Integ…

2023 CCPC 华为云计算挑战赛 D-塔

首先先来看第一轮的 假如有n个,每轮那k个 他们的高度的可能性分别为 n 1/C(n,k) n1 C(n-(k-11),1)/C(n,k) n2 C(n-(k-21),2)/C(n,k) ni C(n-(k-i1,i)/C(n,k) 通过概率和高度算出第一轮增加的期望 然后乘上m轮增加的高度加上初始高度&#xff0c;就是总共增加的高度 下面是…
最新文章