基于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 代理以应用更改

攻击模拟

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

也可以这样来监控预警:

1、创建suricata.rules

2、启动suricata

 如果出现以下报错:表示版本太老无法使用

 解决:

 重启 suricata

再次启动 suricata即可

 3、查看预警日志

 4、访问一个404网址,触发监控规则

监控成功!!!

suricata命令


缺点:规则太多,误报率较高

解决:降噪——禁用无用规则

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

 监控成功!!

也可以这样来监控预警:

1、创建suricata.rules

在rules文件夹下创建/etc/suricata/rules/suricata.rules,如果没有这个启动suricata的时候会报错

root@ubuntu-virtual-machine:/etc/suricata/rules# vim suricata.rules

# alert代表触发了就预警,还有drop、reject、pass
# http为协议,suricata支持tcp,udp,http等常见协议
# any(源IP) any(源端口) ->代表源请求目的 <>请求+响应() $HOME_NET(目标IP) any(目标端口)
# 圆括号里面代表规则匹配,msg为预警信息详细描述
# content表示过滤条件,变量http_stat_code为404
# sid是自定义规则id
# rev规定的修订版本,默认为0


alert http any any <> $HOME_NET any (msg: "Web服务器出现404状态码"; content: "404"; http_stat_code; sid: 561001; )

2、启动suricata

cd /etc/suricata
suricata -c suricata.yaml -i ens33

 如果出现以下报错:表示版本太老无法使用

 解决:

root@ubuntu-virtual-machine:/etc/suricata# ps -ef | grep suricata
root@ubuntu-virtual-machine:/etc/suricata# rm -rf 10778

 重启 suricata

root@ubuntu-virtual-machine:/home/ubuntu# systemctl restart suricata

再次启动 suricata即可

 3、查看预警日志

tail -f fast.log

1

 4、访问一个404网址,触发监控规则

使用python搭建一个虚拟访问网址

root@ubuntu-virtual-machine:/var/log/suricata# python3 -m http.server 9999

 

可见此时日志已经生成(看日志生成时间)

监控成功!!!

suricata命令

suricata
-c:指定配置文件
-i:指定网卡
-T:测试配置文件
-v:设置日志级别
-D:后台启动
-l:临时设置日志输出目录(/etc/suricata/suricata.yaml中的default-log-dir)
-s:临时添加新规则(/etc/suricata/suricata.yaml中的default-rule-path和rule-files)

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

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

相关文章

打造高权重店铺的秘密,详解Shopee平台权重评估机制(测评补单)

很多虾皮卖家经常提到的"权重"是指商品或店铺在Shopee平台上的重要性程度。权重评估了商品或店铺是否符合用户需求&#xff0c;并且能否促进订单转化率&#xff0c;为平台带来收益。说白了权重就是给商品和店铺打分的机制&#xff0c;得分越高&#xff0c;权重越高&a…

简单shell脚本的编写

文章目录 简单使用shell脚本参数判断整数的比较运算符字符串的比较运算shell脚本流程控制shell脚本循环for循环批量添加用户批量ping IP地址检测同一局域网&#xff0c;多台主机存活情况检测同一局域网&#xff0c;多台主机存活情况多线程检测主机存活情况 while循环case选择语…

Python中处理Excel文件的常见问题与技巧

在数据分析和办公自动化领域&#xff0c;Excel是一种广泛使用的工具。本文将介绍如何利用Python来处理Excel文件时可能遇到的常见问题&#xff0c;并分享一些实用技巧。 1. 安装必要库 - 使用pip或conda安装openpyxl、pandas等第三方库&#xff1b; – 确保所选版本兼容性以及…

Java之SpringCloud Alibaba【五】【微服务 Sentinel整合openfeign进行降级】

一、Sentinel整合openfeign 1、复制一下order-openfeign项目&#xff08;创建order-openfeign-sentinel&#xff09; 然后在stock-nacos当中编写对应的接口 RequestMapping("/reduct2")public String reduct2(){int a 1/0;System.out.println("扣减库存"…

说说Lambda架构

分析&回答 Lambda架构是由Storm的作者Nathan Marz提出的一个实时大数据处理框架。Marz在Twitter工作期间开发了著名的实时大数据处理框架Storm&#xff0c;Lambda架构是其根据多年进行分布式大数据系统的经验总结提炼而成。Lambda架构的目标是设计出一个能满足实时大数据系…

python读取图像小工具

一、和图像交互获得图像的坐标和像素值 import cv2 import numpy as np import signal import threading import timeif __name__ __main__:img cv2.imread(XXX,0)#读取图片font_face,font_scale,thicknesscv2.FONT_HERSHEY_SIMPLEX,0.5,1#鼠标交互def mouseHandler(event,x…

【校招VIP】前端算法考点之大数据相关

考点介绍&#xff1a; 大数据的关键技术分为分析技术和处理技术&#xff0c;可用于大数据分析的关键技术主要包括A/B测试&#xff0c;关联规则挖掘&#xff0c;数据挖掘&#xff0c;集成学习&#xff0c;遗传算法&#xff0c;机器学习&#xff0c;自然语言处理&#xff0c;模式…

Oracle中LEFT JOIN后AND与WHERE的异同

1、AND 过滤之后再连接 2、WHERE 连接之后再过滤 下面以具体例子来说明&#xff1a; (1)、建表及插入测试数据 --建测试表 create table FACT_TAB ( ID INTEGER,STATUS VARCHAR2(8) ); create table DIM_STATUS ( STSTUS_CLASS VARCHAR2(8),STATUS_CODE VARCHAR2(8),S…

Spring框架知识点汇总

01.Spring框架的基本理解 关键字&#xff1a;核心思想IOC/AOP&#xff0c;作用&#xff08;解耦&#xff0c;简化&#xff09;&#xff0c;简单描述框架组成&#xff1b; Spring框架是一款轻量级的开发框架&#xff0c;核心思想是IOC&#xff08;反转控制&#xff09;和AOP&a…

沐风老师3DMAX厨房橱柜生成器KitchenCabinetGenerator教程

3DMAX厨房橱柜生成器插件使用方法 3DMAX橱柜生成器KitchenCabinetGenerator是一个在3dMax中自动创建三维橱柜模型的高效脚本。它有多种风格的台面、门和橱柜&#xff0c;可以灵活地应用于Archviz项目&#xff0c;同时为3D艺术家节省大量时间。 【适用版本】 1.3dMax2018 – 20…

从零构建深度学习推理框架-10 算子的执行流程

计算图的设计 Graph的结构 Operators: 记录所有的节点Input operator: 指定的输入节点Output operator: 指定的输出节点Global input data: 模型的外部全局输入&#xff08;用户指定的输入&#xff09; Operator的结构 Input data: 节点的输入数据Output data: 节点的输出数…

系统架构技能之设计模式-单件模式

一、开篇 其实我本来不是打算把系统架构中的一些设计模式单独抽出来讲解的&#xff0c;因为很多的好朋友也比较关注这方面的内容&#xff0c;所以我想通过我理解及平时项目中应用到的一 些常见的设计模式,拿出来给大家做个简单讲解&#xff0c;我这里只是抛砖引玉&#xff0c…

ArmSoM-W3 DDR压力测试

1. 简介 专栏总目录 ArmSoM团队在产品量产之前都会对产品做几次专业化的功能测试以及性能压力测试&#xff0c;以此来保证产品的质量以及稳定性 优秀的产品都要进行多次全方位的功能测试以及性能压力测试才能够经得起市场的检验 2. 环境介绍 硬件环境&#xff1a; ArmSoM-W…

任意文件读取

文章目录 渗透测试漏洞原理任意文件读取1. 任意文件读取概述1.1 漏洞成因1.2 漏洞危害1.3 漏洞分类1.4 任意文件读取1.4.1 文件读取1.4.2 任意文件读取1.4.3 权限问题 1.5 任意文件下载1.5.1 一般情况1.5.2 PHP实现1.5.3 任意文件下载 2. 任意文件读取攻防2.1 路径过滤2.1.1 过…

字符设备驱动(内核态用户态内存交互)

前言 内核驱动&#xff1a;运行在内核态的动态模块&#xff0c;遵循内核模块框架接口&#xff0c;更倾向于插件。 应用程序&#xff1a;运行在用户态的进程。 应用程序与内核驱动交互通过既定接口&#xff0c;内核态和用户态访问依然遵循内核既定接口。 环境搭建 系统&#…

Maven 基础之安装和命令行使用

Maven 的安装和命令行使用 1. 下载安装 下载解压 maven 压缩包&#xff08;http://maven.apache.org/&#xff09; 配置环境变量 前提&#xff1a;需要安装 java 。 在命令行执行如下命令&#xff1a; mvn --version如出现类似如下结果&#xff0c;则证明 maven 安装正确…

【100天精通python】Day49:python web编程_web框架,Flask的使用

目录 1 Web 框架 2 python 中常用的web框架 3 Flask 框架的使用 3.1 Flask框架安装 3.2 第一个Flask程序 3.3 路由 3.3.1 基本路由 3.3.2 动态路由 3.3.3 HTTP 方法 3.3.4 多个路由绑定到一个视图函数 3.3.5 访问URL 参数的路由 3.3.6 带默认值的动态路由 3.3.7 带…

文件读取漏洞复现(Metinfo 6.0.0)

安装环境 安装phpstudy&#xff0c;下载MetInfo 6.0.0版本软件&#xff0c;复制到phpstudy目录下的www目录中。 打开phpstudy&#xff0c;访问浏览器127.0.0.1/MetInfo6.0.0/install/index.php&#xff0c;打开Meinfo 6.0.0主页&#xff1a; 点击下一步、下一步&#xff0c…

深入理解css3背景图边框

border-image知识点 重点理解 border-image-slice 设置的值将边框背景图分为9份&#xff0c;图像中间的舍弃&#xff0c;其他部分图像对应边框的相应区域放置&#xff0c;上右下左四角固定&#xff0c;border-image-repeat设置的是除四角外其他部分的显示方式。 截图来自菜鸟教…

【锁】定时任务推送数据-redission加锁实例优化

文章目录 redission 加锁代码-有问题优化代码看门狗是什么&#xff1f; redission 加锁代码-有问题 /*** 收货入库物料标签(包装码)推送接口** throws Exception*/public void synReceiveMaterialTags() throws Exception {String tag DateFormatUtils.format(new Date(), &qu…