使用Suricata和ELK进行网络入侵检测

本文介绍了如何结合Suricata、Elastic Stack和Network Watcher进行网络入侵检测。Suricata作为IDS引擎,通过规则集监控网络流量并触发警报。通过Elastic Stack和Kibana,可以将Suricata的日志编制索引并创建可视化仪表板,便于分析网络漏洞。详细步骤包括安装Suricata、Elasticsearch、Logstash和Kibana,以及导入和配置Kibana看板以展示警报信息。

数据包捕获是实现网络入侵检测系统(IDS)和执行网络安全监控(NSM)的关键组件。 有几种开源IDS工具可以处理数据包捕获并查找可能的网络入侵和恶意活动的签名。 

其中一个开源工具是Suricata,这是一种IDS引擎,它使用规则集来监控网络流量,并在发生可疑事件时触发警报。 Suricata提供多线程引擎,这意味着它可以以更快的速度和效率执行网络流量分析。 有关Suricata及其功能的更多详细信息,请访问其网站https://suricata-ids.org/。

本文介绍如何使用Network Watcher,Suricata和Elastic Stack设置环境以执行网络入侵检测。 Network Watcher为您提供用于执行网络入侵检测的数据包捕获。 Suricata根据与其给定的威胁规则集匹配的数据包处理数据包捕获并触发警报。 这些警报存储在本地计算机上的日志文件中。 使用Elastic Stack,Suricata生成的日志可以编制索引并用于创建Kibana仪表板,为您提供日志的可视化表示,以及快速获取潜在网络漏洞洞察力的方法。

步骤:

1. 安装Suricata

具体安装过程可参考官方文档 http://suricata.readthedocs.io/en/latest/install.html

在Ubuntu系统上,可以通过以下命令进行安装

sudo add-apt-repository ppa:oisf/suricata-stable

sudo apt-get update

sudo apt-get install suricata

可通过以下命令行检验安装是否完成

suricata -h

在这个阶段,我们没有Suricata运行的任何规则。 如果您希望检测到特定的网络威胁,则可以创建自己的规则,也可以使用来自许多提供程序的开发规则集,例如Emerging Threats或Snort的VRT规则。 我们在此处使用可自由访问的Emerging Threats规则集:

wget http://rules.emergingthreats.net/open/suricata/emerging.rules.tar.gz

tar zxf emerging.rules.tar.gz

sudo cp -r rules /etc/suricata/

 

2. 安装Elasticsearch

虽然Suricata生成的日志包含有关我们网络上发生的事情的有价值信息,但这些日志文件并不是最容易阅读和理解的。 通过将Suricata与Elastic Stack连接起来,我们可以创建一个Kibana仪表板,使我们能够从日志中搜索,绘图,分析和获取洞察。

版本5.0及更高版本的Elastic Stack需要Java 8.运行命令java -version来检查您的版本。 如果您没有安装java,请参阅Oracle网站上的文档

在ubuntu系统上,可以通过以下命令安装

curl -L -O https://a

### 安装SuricataELK Stack (Elasticsearch, Logstash, Kibana)于Ubuntu #### 准备工作 确保系统是最新的,可以通过运行以下命令来更新软件包列表并升级现有软件包: ```bash sudo apt update && sudo apt upgrade -y ``` #### 安装Suricata 为了安装Suricata入侵检测系统(IDS),可以按照官方文档中的说明操作。首先添加必要的仓库支持库。 ```bash sudo apt-get install software-properties-common echo 'deb http://http.us.debian.org/debian buster-backports main' | sudo tee /etc/apt/sources.list.d/buster-backports.list sudo apt-get update sudo apt-get install suricata -t buster-backports ``` 完成上述步骤之后,配置文件位于`/etc/suricata/suricata.yaml`,可以根据需求调整设置[^1]。 #### 安装Java环境 由于ELK栈依赖于Java,因此先要安装OpenJDK: ```bash sudo apt install openjdk-11-jdk -y java -version ``` 确认版本号显示正确即表示安装成功。 #### 安装Elasticsearch 下载最新稳定版的Elasticsearch,并遵循其官方指导完成部署过程。这里提供一种简便的方法通过Apt源安装: ```bash wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elasticsearch-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/elasticsearch-keyring.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list sudo apt update sudo apt install elasticsearch ``` 启动服务并设为开机自启: ```bash sudo systemctl start elasticsearch.service sudo systemctl enable elasticsearch.service ``` 验证是否正常运行: ```bash curl -X GET "localhost:9200/" ``` 如果返回JSON格式的信息,则表明安装无误。 #### 安装Logstash 继续利用apt工具安装Logstash: ```bash sudo apt install logstash ``` 编辑配置文件以定义输入、过滤器以及输出插件逻辑路径通常是在`/etc/logstash/conf.d/`目录下创建`.conf`结尾的新文件来进行定制化设定。 重启Logstash使更改生效: ```bash sudo systemctl restart logstash ``` #### 安装Kibana 最后一步就是安装可视化平台-Kibana: ```bash sudo apt install kibana ``` 同样地开启并启用该服务: ```bash sudo systemctl start kibana sudo systemctl enable kibana ``` 访问浏览器打开地址 `http://<your_server_ip>:5601` 即可看到Kibana界面。 以上就是在Ubuntu服务器上搭建完整的IDS监控解决方案——由Suricata加上强大的日志分析组合ELK构成的安全防护体系概览。
评论 7
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值