1 个不稳定版本
0.13.0 | 2021年3月18日 |
---|
#1871 在 数据库接口
720KB
16K SLoC
EveBox
EveBox 是一个基于Web的Suricata "eve" 事件查看器,用于Elastic Search。
特性
- 基于Web的事件查看器,采用“收件箱”方式管理警报。
- 事件搜索。
- 一个代理,用于将Suricata事件发送到EveBox服务器(但您也可以使用Filebeat/Logstash)。
- 内嵌SQLite,适用于独立安装。
要求
- Suricata - 生成警报和事件。
以及以下之一...
- 现有的ElasticSearch/Logstash(版本6或更高)设置,已经处理Suricata事件(EveBox目前存在与Filebeat索引的问题)。
- 仅Elastic Search,使用EveBox或EveBox代理添加事件。
- 无 - EveBox可以使用适合低负载安装的内嵌SQLite数据库(注意:并非所有功能都受支持)。
- 现代网络浏览器。
安装。
下载一个包,并运行evebox应用程序,针对您现有的Elastic Search服务器。
示例
./evebox server -e https://127.0.0.1:9200
然后使用您的浏览器访问 https://127.0.0.1:5636。
最新发布版本构建可以在 https://evebox.org/files/release/latest/ 找到。
最新开发版本(来自git master)可以在 https://evebox.org/files/development/ 找到。
SELKS
EveBox 也包含在 SELKS 中,它提供了配置和准备就绪的Suricata和ELK堆栈。
Docker
如果您希望使用Docker安装EveBox,最新的镜像托管在Docker hub上。
示例
docker pull jasonish/evebox:latest
docker run -it -p 5636:5636 jasonish/evebox:latest -e http://elasticsearch:9200
用您的 http://elasticsearch:9200 替换Elastic Search URL。您很可能不想在这里使用localhost,因为这将是指容器的localhost,而不是宿主机的localhost。
或者,如果您想链接到已运行的 Elastic Search 容器
docker run -it -p 5636:5636 --link elasticsearch jasonish/evebox:latest
然后使用您的浏览器访问 https://127.0.0.1:5636。
这不需要修改您的 Elastic Search 配置。与 Evebox 的早期版本不同,您不需要启用动态脚本和 CORS。
使用方法
EveBox 默认以服务器形式运行,在端口 5636 上公开 Web 界面。
与具有事件的现有 Elastic Search 服务器
基本模式,其中 eve
事件通过 Logstash 和或 Filebeat 发送到 Elastic Search。
evebox server -e http://elasticsearch:9200
与嵌入式 SQLite 数据库
如果您没有 Elastic Search 且 EveBox 与 Suricata 在同一台机器上运行,这很有用。它使用嵌入式 SQLite 数据库来存储事件,适用于较轻的负载。目前 SQLite 不支持报告。
evebox server -D . --datastore sqlite --input /var/log/suricata/eve.json
更多文档可在 http://evebox.readthedocs.io/en/latest/ 找到。
构建 EveBox
EveBox 由一个 JavaScript 前端和一个用 Go 编写的非常简单的后端组成。要构建 EveBox,必须首先满足以下要求
- 安装 Node.js v12.16.1 或更高版本。
- 最新的 Rust 稳定版本。
首先检出 EveBox
git clone https://github.com/jasonish/evebox.git ~/projects/evebox
然后构建二进制文件
make
或构建发行版软件包
make dist
如果您不想使用所需的开发工具,但已安装 Docker,可以使用以下命令构建 Linux 发行版
./build.sh linux
可能的问题
JavaScript 堆内存不足
如果在构建过程中遇到 JavaScript 内存不足问题,请尝试设置以下环境变量并重新构建
export NODE_OPTIONS="--max-old-space-size=4096"
以开发模式运行
./dev.sh -e http://elasticsearch:9200
要使用位于 http://elasticsearch:9200 的 Elastic Search 数据存储库以开发模式运行。
将您的浏览器连接到 https://127.0.0.1:4200。注意,此端口号不同于 EveBox 端口,因为 Angular CLI/Webpack 开发服务器用于提供 Web 应用程序,而后端请求被代理到 Go 应用程序。
在开发模式下,Go 文件的更改将触发重新编译/重启,而 Web 应用的更改将触发 JavaScript 的重新编译和浏览器刷新。
变更日志
请参阅 https://github.com/jasonish/evebox/blob/master/CHANGELOG.md。
许可证
Affero GPL。 https://www.gnu.org/licenses/agpl-3.0.en.html
依赖项
~67MB
~1M SLoC