suricata安装与配置

news2024/12/29 8:11:00

一、功能介绍

1、概述

suricata来源于经典的nids系统snort,是一套基于网络流量的威胁检测引擎,整合了ids,ips,network security monitoring(NSM)和PCAP processing等功能。

2、IDS功能

通过监听网卡流量并匹配规则引擎进行入侵实时监测和预警,检测手段上也和Wazuh比较类似。

3、IPS功能

与Wazuh的主动响应功能并不完全一样,IPS功能并不需要对防火墙进行调用,而是直接通过流量引入iptables队列中,再根据特征进行检测,满足规则的流量会直接被Suricata丢弃或拒绝,导致整个流量根本无法到达目标服务器。而Wazuh的主动响应机制则是在攻击行为已经发生或正在发生的情况下,通过日志信息进行检测,再调用iptables或firewall-cmd进行处理,实时性和准确性方面相对于suricata更延后一些。

4、支持的协议

Suricata来源于Snort,但是比Snort更加实用也增强了更多的功能,同时,Snort支持传输层和网络层协议,而Suricata还支持应用层的协议进行解析和规则匹配。

二、安装suricata

1、源码安装 (不推荐)

sudo yum -y install gcc libpcap-devel pcre-devel libyaml-devel file-devel \
  zlib-devel jansson-devel nss-devel libcap-ng-devel libnet-devel tar make \
  libnetfilter_queue-devel lua-devel PyYAML libmaxminddb-devel rustc cargo \
  lz4-devel
  
#下载安装包
wget https://www.openinfosecfoundation.org/download/suricata-6.0.0.tar.gz
tar -xvf suricata-6.0.0.tar.gz
cd  suricata-6.0.0

#编译安装
make
sudo make install
sudo ldconfig

#自动安装配置文件
make install-conf 
make install-rules
make install-full

2、二进制安装

centos7安装

yum install epel-release yum-plugin-copr
yum copr enable @oisf/suricata-6.0
yum install suricata
​
#安装完成后,对应路径如下:
suricata主程序路径:/usr/sbin/suricata
suricata核心配置目录:/etc/suricata/
suricata日志目录:/var/log/suricata/
suricata附属程序目录:/usr/bin
​
#日志目录下得4个文件的功能
eve.json:以json格式存储预警信息或附加信息
fast.log:预警核心文件,只用于存储警告信息,非结构话数据
stat.log:suricata的统计信息
suricata.log:suricata程序的运行日志

安装完可以执行如下命令进行验证是否安装成功

/usr/sbin/suricata --build-info
​
suricata -V

三、修改配置运行

直接编辑/etc/suricata/suricata.yaml

vars:
  # more specific is better for alert accuracy and performance
  address-groups:
    #HOME_NET: "[192.168.0.0/16,10.0.0.0/8,172.16.0.0/12]"
    #HOME_NET: "[192.168.0.0/16]"
    #HOME_NET: "[10.0.0.0/8]"
    #HOME_NET: "[172.16.0.0/12]"
    #HOME_NET: "any"
    HOME_NET: "[192.168.100.0/24]"      #这里改成自己ip对应网段
​
    #EXTERNAL_NET: "!$HOME_NET"
    EXTERNAL_NET: "any"

运行suricata,

cd /etc/suricata && suricata -c suricata.yaml -i ens33(这里网卡根据实际情况修改)

首次运行必定会报错误:

30/8/2023 -- 10:32:09 - <Info> - Configuration node 'HOME_NET' redefined.
30/8/2023 -- 10:32:09 - <Notice> - This is Suricata version 6.0.13 RELEASE running in SYSTEM mode
30/8/2023 -- 10:32:09 - <Warning> - [ERRCODE: SC_ERR_NO_RULES(42)] - No rule files match the pattern /var/lib/suricata/rules/suricata.rules
30/8/2023 -- 10:32:09 - <Warning> - [ERRCODE: SC_ERR_NO_RULES_LOADED(43)] - 1 rule files specified, but no rules were loaded!
30/8/2023 -- 10:32:09 - <Notice> - all 4 packet processing threads, 4 management threads initialized, engine started.

要在/etc/suricata/suricata.yaml修改如下配置,并创建一个suricata.rules

default-rule-path: /etc/suricata/rules
​
rule-files:
  - suricata.rules

还要在suricata.rules中编写一条规则,不然还是会报错

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

这条规则是如果访问目标网站响应404则发生告警

四、安装XAMPP进行规则测试

详解Xampp和wordpress在Centos7上的搭建与使用 - Python技术站

1. 下载和安装XAMPP

首先,我们需要下载并安装XAMPP。可以在官方网站 XAMPP Installers and Downloads for Apache Friends 上下载最新版本的XAMPP。下载完成后,使用以下命令进行安装:

$ chmod +x xampp-linux-x64-7.X.X-X-installer.run
$ sudo ./xampp-linux-x64-7.X.X-X-installer.run

2. 启动XAMPP

安装完成后,可以使用以下命令启动XAMPP:

$ sudo /opt/lampp/lampp start

后台启动suricata

suricata -c suricata.yaml -i ens33 -D

在浏览器中访问主机ip对应的网站/phpinfo这个不存在的页面,在另一个终端窗口查看日志,可以看到规则生效。

补充:

我们还可以通过eve.json文件中查看告警信息,相对于fast.log多了很多其他信息,有很多其实不用关心,可以用以下命令进行过滤:

cat /var/log/suricata/eve.json |grep 'event_type":"alert'

如果不想要eve.json产生过多无用信息,可以在suricata.yaml的配置文件中对各种类型的输出进行禁用,如:

在核心配置文件中,找到outputs->eve-log->types节点
- anomaly:
  enabled: no
- http:
  extended: no
​
可以大量减少无效信息,当然也取决于我们是否需要对此类日志进行收集

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

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

相关文章

Omni Recover for Mac(专业的iPhone数据恢复软件)

Omni Recover for Mac是一款专业的Mac数据恢复软件&#xff0c;能够帮助用户快速找回被误删除、格式化、病毒攻击等原因造成的文件和数据&#xff0c;包括图片、视频、音频、文档、邮件、应用程序等。同时&#xff0c;Omni Recover for Mac还具有数据备份和清理功能&#xff0c…

香橙派 Orangepi Zero2 全志H616——简介

目录 1.外设功能介绍 1.1指令集 1.2cortex 架构 1.3CPU内核 1.4芯片SOC—麒麟9000芯片 1.外设功能介绍 1.1指令集 指令是计算机运行的最小的功能单位&#xff0c;而硬件的作用是完成每条指令规定的功能。就是加、减、乘、除、指数运算、等的命令集合。就相当于造房子中砌…

java设计模式---策略模式

策略模式的定义 策略设计模式是一种行为设计模式。当在处理一个业务时&#xff0c;有多种处理方式&#xff0c;并且需要再运行时决定使哪一种具体实现时&#xff0c;就会使用策略模式。 策略模式的类图&#xff1a; 策略模式的实现 在支付业务中&#xff0c;有三种付款方式&…

从C语言到C++_36(智能指针RAII)auto_ptr+unique_ptr+shared_ptr+weak_ptr

目录 1. 智能指针的引入_内存泄漏 1.1 内存泄漏 1.2 如何避免内存泄漏 2. RAII思想 2.1 RAII解决异常安全问题 2.2 智能指针原理 3. auto_ptr 3.1 auto_ptr模拟代码 4. unique_ptr 4.1 unique_ptr模拟代码 5. shared_ptr 5.1 shared_ptr模拟代码 5.2 循环引用 6.…

大数据学习:Hive安装部署

Hive的安装部署 注意hive就是一个构建数据仓库的工具&#xff0c;只需要在一台服务器上安装就可以了&#xff0c;不需要在多台服务器上安装。 此处以安装到node03为例&#xff1b;请大家保持统一 使用hadoop普通用户操作 1.1 先决条件 搭建好三节点Hadoop集群&#xff1b;node…

十六、策略模式

一、什么是策略模式 策略&#xff08;Strategy&#xff09;模式的定义&#xff1a;该模式定义了一系列算法&#xff0c;并将每个算法封装起来&#xff0c;使它们可以相互替换&#xff0c;且算法的变化不会影响使用算法的客户。策略模式属于对象行为模式&#xff0c;它通过对算法…

Python+turtle实现一个乌龟逃跑小游戏(可以和孩子一起完成)

直接上演示视频 这个代码也是之前当老师的时候&#xff0c;给孩子们写的一个小游戏&#xff0c;那么我们一起看一下这个小游戏是如何让完成的 1、首先完成代码的前期准备 1、这里我们t turtle.Pen() # 海龟—表示我们操作的小海龟 2、enemy turtle.Pen() # 敌龟—表示追击我…

计算机视觉的应用12-卷积神经网络中图像特征提取的可视化研究,让大家理解特征提取的全过程

大家好&#xff0c;我是微学AI&#xff0c;今天给大家介绍一下计算机视觉的应用12-卷积神经网络中图像特征提取的可视化研究&#xff0c;让大家理解特征提取的全过程。 要理解卷积神经网络中图像特征提取的全过程&#xff0c;我们可以将其比喻为人脑对视觉信息的处理过程。就像…

(数学) 剑指 Offer 39. 数组中出现次数超过一半的数字 ——【Leetcode每日一题】

❓ 剑指 Offer 39. 数组中出现次数超过一半的数字 难度&#xff1a;简单 数组中有一个数字出现的次数超过数组长度的一半&#xff0c;请找出这个数字。 你可以假设数组是非空的&#xff0c;并且给定的数组总是存在多数元素。 示例 1: 输入: [1, 2, 3, 2, 2, 2, 5, 4, 2] 输…

echarts图表静态数据 象形柱形图、折线图、日历饼图、饼状图四种实现

标题 页面全部代码 <template><div class"data-serve"><div class"side"><div class"side-inner"><router-link class"side-btn" to"/camer/pushInfo"><i class"el-icon-picture&q…

学习ros机器人导航从精读nav2导航launch文件开始

nav2导航launch文件经过了多层套娃&#xff0c;真的是让初学者哭晕在厕所&#xff0c;今天我们就拆解一下他的launch文件&#xff0c;还原他最简单的状态&#xff0c;看看他到底启动了什么节点。 一 tb3仿真机器人启动文件&#xff1a;tb3_simulation_launch.py 1 文件目录结…

一文了解什么是同源策略

同源策略是一种重要的安全机制&#xff0c;它限制一个源加载的文档或脚本如何与另一个源的资源进行交互。下文小文智能就为您详细解答什么是同源策略。 一、目的 它有助于隔离潜在的恶意文档&#xff0c;减少可能的攻击媒介。例如&#xff0c;它可以防止互联网上的恶意网站在…

C++ 手写实现类似lower_bound和upper_bound的二分功能

目录 lower_bound和upper_bound介绍手动实现类似的二分效果lower_boundupper_bound另一种常见的二分形式 对lower_bound函数使用lamda函数 lower_bound和upper_bound介绍 lower_bound函数的作用是查找范围内第一个大于等于目标元素的元素迭代器/指针 数组的简单使用&#xff…

11、监测数据采集物联网应用开发步骤(8.2)

监测数据采集物联网应用开发步骤(8.1) 新建TCP/IP Client线程类com.zxy.tcp.ClientThread.py #! python3 # -*- coding: utf-8 -Created on 2017年05月10日 author: zxyong 13738196011 import datetime import socket import threading import timefrom com.zxy.adminlog.Us…

ATA-1222A宽带放大器的电子实验案例(案例合集)

ATA-1222A宽带放大器是安泰电子打造的高带宽功放产品&#xff0c;其采用ClassAB的工作模式&#xff0c;带宽高达22MHz&#xff0c;饱和输出功率40W&#xff0c;能兼容全球不同地区的电源标准要求。凭借其优异的指标参数受到不少电子工程师的喜欢&#xff0c;其在电子实验中的应…

远程访问Linux的DataEase数据可视化分析,有哪些推荐的工具?

DataEase 是开源的数据可视化分析工具&#xff0c;帮助用户快速分析数据并洞察业务趋势&#xff0c;从而实现业务的改进与优化。是开源的数据可视化分析工具&#xff0c;帮助用户快速分析数据并洞察业务趋势&#xff0c;从而实现业务的改进与优化。 在本地搭建后,借助cpolar 内…

Densenet模型详解

模型介绍 DenseNet的主要思想是密集连接&#xff0c;它在卷积神经网络&#xff08;CNN&#xff09;中引入了密集块&#xff08;Dense Block&#xff09;&#xff0c;在这些块中&#xff0c;每个层都与前面所有层直接连接。这种设计可以让信息更快速地传播&#xff0c;有助于解…

数据可视化工具中的显眼包:奥威BI自带方案上阵

根据经验来看&#xff0c;BI数据可视化分析项目是由BI数据可视化工具和数据分析方案两大部分共同组成&#xff0c;且大多数时候方案都需从零开始&#xff0c;反复调整&#xff0c;会耗费大量时间精力成本。而奥威BI数据可视化工具别具匠心&#xff0c;将17年经验凝聚成标准化、…

(AcWing) spfa求最短路

给定一个 n 个点 m 条边的有向图&#xff0c;图中可能存在重边和自环&#xff0c; 边权可能为负数。 请你求出 1 号点到 n 号点的最短距离&#xff0c;如果无法从 1 号点走到 n 号点&#xff0c;则输出 impossible。 数据保证不存在负权回路。 输入格式 第一行包含整数 n 和…

indexDb使用

indexDb是什么&#xff1f; indexDb是除了cookie&#xff0c;localstorage&#xff0c;sessionstroage外的另一种前端存贮方式。 现有前端存贮比较 indexDb特点 无大小限制&#xff0c;适用于前端存贮数据较多场景存贮结构以对象仓库形式&#xff0c;可以存入任何类型数据&a…