Apache Metron Bro 插件 Kafka 的使用指南
metron-bro-plugin-kafkaApache Metron 项目地址:https://gitcode.com/gh_mirrors/me/metron-bro-plugin-kafka
1. 项目介绍
Apache Metron 是一个集成的大数据安全智能平台,用于实时威胁检测和分析。Metron Bro 插件-Kafka 提供了一个 Bro(网络分析语言)日志记录器,它将 Bro 的输出发送到 Kafka 消息队列,以便其他 Hadoop 生态系统工具(如 Storm、Spark 等)可以处理这些数据。
该项目已经退役,详细信息请参考其Attic 页面。在撰写此文档时,插件已测试通过的版本是 librdkafka v0.9.4。
2. 项目快速启动
安装依赖
首先,需要安装 librdkafka
——Kafka 的原生客户端库。你可以按照以下步骤进行安装:
# 更新包列表
sudo apt-get update
# 安装依赖
sudo apt-get install -y build-essential autoconf automake libssl-dev libzmq3-dev pkg-config
# 下载并编译 librdkafka
git clone https://github.com/edenhill/librdkafka.git
cd librdkafka
./configure
make
sudo make install
配置及启动 Bro
编辑 $BRO_HOME/share/bro/site/local.bro
文件,配置 Kafka 插件:
@load Bro/Kafka/logs-to-kafka
redef Kafka::logs_to_send = set(HTTP::LOG, DNS::LOG);
redef Kafka::topic_name = "bro";
redef Kafka::tag_json = T;
redef Kafka::kafka_conf = table(
["metadata.broker.list"] = "node1:6667",
["security.protocol"] = "SASL_PLAINTEXT",
["sasl.kerberos.keytab"] = "/etc/security/keytabs/metron.headless.keytab",
["sasl.kerberos.service.name"] = "metron"
);
确保你的 Kafka 设置正确,并且 Metron 用户有权写入主题 "bro"。
启动 Bro
最后,启动 Bro 服务以开始将日志发送到 Kafka:
bro -i eth0 -c $BRO_HOME/etc/bro/site/local.bro
3. 应用案例和最佳实践
日志过滤
根据需求,可以在 Bro 中配置过滤规则,防止特定类型的消息被发送到 Kafka。例如,如果你的 Metron 当前不支持 IPv6 源,可以在 local.bro
文件中添加如下代码来过滤掉含有 IPv6 地址的日志:
event zeek_init() &priority=-10 {
# 过滤含有IPv6源的日志
local ipv6_filter: Log::Filter = [
$name = "no-ipv6"
$writer = Log::WRITER_KAFKAWRITER
$config =.kafka_conf
$filter = function(rec: log_rec): bool {
return !is_ipv6(rec咋.src_addr);
}
];
Log::add_filter(IP::LOG, ipv6_filter);
}
4. 典型生态项目
这个插件在 Hadoop 生态系统中的典型应用场景包括但不限于:
- Storm: 可以使用 Storm 从 Kafka 实时消费 Bro 数据,进行流式处理和实时分析。
- Spark: 利用 Spark SQL 或 Streaming 读取 Kafka 中的 Bro 日志,进行离线分析或复杂事件处理。
- HDFS: 通过设置 Kafka 的持久化策略,数据可定期归档至 HDFS 用于长期存储和批量分析。
- Elasticsearch: 结合 Elasticsearch 存储数据,提供搜索和可视化功能,便于安全分析师快速查找和识别模式。
这仅仅是 Metron Bro 插件-Kafka 在大数据安全生态中的一部分,实际使用场景可能更为多样,根据你的具体需求进行定制和扩展。
metron-bro-plugin-kafkaApache Metron 项目地址:https://gitcode.com/gh_mirrors/me/metron-bro-plugin-kafka