基于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)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值