zeek/broker

GitHub: zeek/broker

Broker 是 Zeek 网络安全监控框架的官方消息通信库,提供远程日志、事件分发和分布式数据存储能力。

Stars: 69 | Forks: 27

# .. _用户手册: https://docs.zeek.org/projects/broker # Broker: Zeek 的消息库 Broker 库实现了 Zeek 的高级通信模式: ``` - remote logging - remote events - distributed data stores ``` 远程日志记录和事件都遵循发布/订阅 (pub/sub) 通信模型, 该模型运行在直接彼此对等互连的 Broker 端点之间。 一个 端点也可以选择订阅自己的消息。 订阅通过前缀进行匹配,端点有能力 微调他们希望向对等点广播的订阅主题字符串, 以及他们希望发送给对等点的消息。 分布式数据存储功能允许与一个 Broker 端点 关联的主数据存储在peer端点处被克隆,peer端点 随后可以对克隆执行轻量级的本地查询, 克隆会自动与主存储保持同步。 克隆 不能直接修改其内容,而是将修改发送到 集中式主存储,由主存储应用修改,然后将其 广播给所有克隆。 集成了 Broker 库的应用程序可以使用 上述 Zeek 通用的模式相互通信。 有关更多信息,请参阅 `User Manual`_。 对于离线阅读,它 也可以在源码树的 ``doc/`` 目录中找到。 请参阅 NEWS 文件以获取最重要的发行说明,以及 CHANGES 文件以获取完整的更改历史记录。 ## 依赖项 编译 Broker 需要已安装以下库/工具: ``` * C++ compiler with C++17 support (GCC 7+, Clang 4+, MSVC 19.14+) * OpenSSL headers/libraries (http://www.openssl.org) * CMake 3.0 or greater (https://cmake.org) ``` 可选的 Python 绑定还需要 Python 3.5 或更高版本 以及 Python 开发包。 默认情况下,Broker 将使用集成版本的 C++ Actor Framework (CAF; https://actor-framework.org),尽管仍然有 选项可以通过 ``--with-caf=`` 配置脚本选项指定外部 CAF 版本。 ## 编译/安装 在 UNIX 上,我们提供了一个 ``configure`` 脚本来自动化 CMake 设置。 要 编译并安装到 ``/usr/local`` 中: ``` ./configure make make install ``` 有关更高级的配置选项,请参阅 ``./configure --help``。 在 Windows 上,我们原生支持 MSVC。我们不支持通过 MinGW 或 Cygwin 构建。对于 Windows 构建,请直接使用 CMake 并使用您的 Visual Studio 版本的 CMake 生成器。之后,您可以 使用 Visual Studio 打开项目文件来构建 Broker,或者可以 使用 CMake 直接从命令行构建: ``` cmake --build --target install --config release ``` 请注意,Broker 目前在 MSVC 上仅支持 *静态* 构建。
标签:Actor模型, Bash脚本, Broker, C++, OpenSSL, Rootkit, Zeek, 分布式数据存储, 发布订阅模式, 安全工具开发, 安全测试工具, 安全遥测, 数据同步, 数据擦除, 消息队列, 网络安全, 跨进程通信, 远程日志, 逆向工具, 隐私保护