gravwell

代码 主页

启用方式
gravwell:github.com/gravwell/coredns

gravwell - 集成到 Gravwell 审计。

说明

此插件允许将 DNS 审计直接集成到 Gravwell 中。该插件充当集成收集器,并且将 DNS 请求和响应直接发送到 Gravwell 实例。

DNS 请求和响应可以编码为文本、JSON 或打包的二进制格式。

语法

gravwell {
    Ingest-Secret IngestSecretToken
    Cleartext-Target 192.168.1.1:4023
    Tag dns
    Encoding json
    Log-Level INFO
    #Cleartext-Target 192.168.1.2:4023 #second indexer
    #Ciphertext-Target 192.168.1.1:4024
    #Insecure-Novalidate-TLS true #disable TLS certificate validation
    #Ingest-Cache-Path /tmp/coredns_ingest.cache #enable the local ingest cache
    #Max-Cache-Size-MB 1024
}
  • Ingest-Secret 定义用于对索引器进行身份验证的令牌。需要 Ingest-Secret
  • Cleartext-Target 定义使用 TCP 连接的远程索引器的地址和端口。支持 IPv4 和 IPv6 地址以及主机名。
  • Ciphertext-Target 定义使用 TLS 连接的远程索引器的地址和端口。支持 IPv4 和 IPv6 地址以及主机名。
  • Tag 指定分配 DNS 审计日志的标记。可以是任何不包含特殊字符或空格的字母数字值。需要一个有效的 Tag 值。
  • Encoding 指定传输的 DNS 审计日志的格式。选项是 jsontext。默认值为 json
  • Insecure-Novalidate-TLS 切换 TLS 连接上的证书验证。默认情况下,验证处于开启状态。
  • Log-Level 指定集成 gravwell 标记上的日志记录详细程度。选项有 OFF INFO WARN ERROR。默认值为 ERROR
  • Ingest-Cache-Path 为缓存系统指定一个文件路径,该系统在索引器连接丢失时启用。路径必须是可写文件的绝对路径。
  • Max-Cache-Size-MB 以兆字节指定缓存文件最大大小。将其用作安全网。零值是默认值,表示无限制。

示例

没有本地缓存,通过 TCP 使用单个索引器

一个示例 Corefile,该文件通过未加密的连接将 DNS 请求发送到单个索引器。已禁用本地缓存。

gravwell {
    Ingest-Secret IngestSecretToken
    Cleartext-Target 192.168.1.1:4023
    Tag dns
  }

与两个索引器的 TLS 连接,并且不进行 TLS 验证

一个示例 Corefile,该文件通过 TLS 连接将 DNS 请求发送到两个索引器,并且接受未签名证书。对于 Cleartext 和 Ciphertext 目标,都支持 IPv4 和 IPv6 地址。IPv6 地址必须用方括号括起来。

gravwell {
    Ingest-Secret IngestSecretToken
    Ciphertext-Target 192.168.1.1:4024
    Ciphertext-Target [fe80::dead:beef:feed:febe%p1p1]:4024 #connecting to link local address via device p1p1
    Tag dns
    Encoding json
    Log-Level INFO
  }

与两个索引器的 TLS 连接,并且不进行 TLS 验证

一个示例 Corefile,该文件通过 TLS 连接将 DNS 请求发送到两个索引器,并且接受未签名证书。已禁用本地缓存。

gravwell {
    Ingest-Secret IngestSecretToken
    Ciphertext-Target 192.168.1.1:4024
    Ciphertext-Target [dead::beef]:4024
    Insecure-Novalidate-TLS true
    Tag dns
    Encoding json
    Log-Level INFO
  }

用于高可靠性操作的本地缓存

一个示例 Corefile,该文件将 DNS 请求发送到两个索引器,并且在索引器通信出现故障时启用本地缓存。本地缓存最多可存储 1GB 的数据。

gravwell {
    Ingest-Secret IngestSecretToken
    Cleartext-Target 192.168.1.1:4023
    Ciphertext-Target 192.168.1.2:4024
    Insecure-Novalidate-TLS true
    Ingest-Cache-Path /tmp/coredns_ingest.cache
    Max-Cache-Size-MB 1024
    Tag dns
    Encoding json
    Log-Level INFO
  }

另请参阅

开始使用 Gravwell 社区版 社区版许可证 摄取 API 和代码