arkime

C/C++ 2025-08-10

arkime

arkime是一个大规模的开源网络分析和数据包捕获系统。

arkime将您当前的安全基础架构以标准PCAP格式存储和索引网络流量,从而提供快速,索引的访问。为PCAP浏览,搜索和导出提供了直观而简单的Web界面。 arkime公开了API,该API允许直接下载和消耗PCAP数据和JSON格式化会话数据。在分析工作流程期间, arkime存储和以标准PCAP格式导出所有数据包,使您还可以使用自己喜欢的PCAP摄入工具(例如Wireshark)。

arkime是在许多系统中部署的,并且可以扩展以处理数十千兆/秒的流量。 PCAP保留基于可用的传感器磁盘空间。元数据保留基于Elasticsearch群集量表。两者都可以随时增加,并且可以完全控制。

了解有关arkime .com的更多信息

目录

  • 背景
  • 安装
  • 配置
  • 用法
  • 安全
  • API
  • 贡献
  • 执照

背景

arkime以前被称为Moloch,是为了替换2012年AOL的商业完整数据包系统的创建。通过完全控制硬件和成本,我们发现我们可以在所有网络中部署完整的数据包捕获,其成本与使用商业工具的一个网络相同,并具有更大的保留率。

arkime系统由3个主要组成部分组成:

  • 捕获- 一个螺纹C应用程序,可监视网络流量,将PCAP格式化文件写入本地磁盘,解析捕获的数据包,然后将元数据(SPI数据)发送到OpenSearch/Elasticsearch。
  • 查看器- 每次捕获计算机运行的node.js应用程序。它处理Web接口并将数据包传输到浏览器。
  • OpenSearch/Elasticsearch-搜索数据库技术为arkime提供动力。

我们还提供了几种可选的应用程序:

  • cont3xt-一种应用程序,提供了一种结构化方法来收集上下文智能以支持技术调查。
  • Esproxy-一个代理,可在捕获和OpenSearch/Elasticsearch之间提供额外的安全性。
  • 议会- 一种监视的应用程序,是多个arkime群集的前门。
  • WiseService-将威胁情报集成到会话元数据中的应用程序。

arkime提供了一个用于探索网络数据的用户友好的Web界面。会议页面提供了全面的概述,列出了可以扩展的单个会话以查看元数据和数据包详细信息。

SPI查看页面提供了数据的详细分解,显示了arkime识别的每个字段的所有唯一值

安装

大多数用户应使用我们的下载页面上可用的预制二进制文件,并按照简单的安装说明进行操作。我们还提供容器查看Docker说明,以使用最佳标签。

对于高级用户,您可以自己构建arkime :

  • 确保node在您的路径中,当前主要支持节点版本20.x
  • git clone https://gith*ub.c**om/arkime/ arkime github上的最新版本
  • .github/workflow/versions中查找您的操作系统,以便使用EasyButton选项
  • ./easybutton-build.sh [easybutton options] --install - 构建和安装arkime
  • make config - 执行初始arkime配置
  • 有关如何参与的信息,请参考贡献。

配置

大多数系统配置位于/opt/ arkime /etc/config.ini文件中。这些变量记录在我们的设置页面上。

用法

arkime运行后,将浏览器指向http:// localhost:8005以访问Web界面。单击猫头鹰进入Arkime帮助页面。

安全

通过将HTTP与Digest密码或使用提供Web服务器代理的身份验证来保护arkime 。所有PCAP都存储在传感器上,仅使用arkime接口或API访问。 arkime并不是要替换ID,而是与它们一起工作以存储和索引所有网络流量,以标准PCAP格式,提供快速访问。

  • 可以将arkime配置为使用OpenSearch/Elasticsearch用户验证或API键。

  • arkime机器应锁定,但是他们需要互相交谈(端口8005),与Elasticsearch Machines(端口9200-920X)进行交谈,并且需要打开Web接口(端口8005)。

  • arkime viewer应配置为使用TLS。

    • 最容易使用带有多个DNS或通配符的单个证书。
    • 确保使用适当的文件权限保护文件系统上的证书。
    • /opt/ arkime /etc/config.ini.ini中编辑certfile和keyfile设置以启用。
  • 对于大型部署,可以在不捕获任何数据的中央机器上设置arkime viewer ,而是机器网关所有UI请求。

    • 使用反向代理(Caddy,Apache,...)可以处理身份验证并将用户名传递到arkime ,这就是我们部署它的方式。
  • 存储在arkime配置文件中的共享密码用于加密密码哈希和arkime通信。

    • 确保使用适当的文件权限保护文件系统上的配置文件。
    • 使用加密的密码哈希,因此,如果没有固定,则无法将新密码哈希直接插入opensearch/elasticsearch。

API

您可以在我们的API页面上了解有关arkime API的更多信息。

贡献

请参考贡献文件,以获取有关如何参与的信息。我们欢迎Github中的问题,功能请求,拉请请求和文档更新。有关使用和故障排除arkime的问题,请使用Slack频道。

维护者

到达我们的最佳方法是懈怠。请请求邀请加入此处的arkime Slack Workspace。

执照

该项目是根据Apache 2.0开源许可证的条款许可的。请参阅《许可》以获取完整条款。

下载源码

通过命令行克隆项目:

git clone https://github.com/arkime/arkime.git