使用基于 Kafka 或 Logstash 的数据连接器进行 SIEM 集成
Citrix Analytics for Security SIEM 集成使您能够将用户的数据从 Citrix Analytics 导出并关联到 SIEM 环境,从而更深入地了解组织的安全状况。
有关集成的好处以及发送到您的 SIEM 的数据事件类型(风险洞察和数据源事件)的更多信息,请参阅安全信息和事件管理集成。
您可以通过以下两种机制(由您的 SIEM 和 IT 部署支持)将 Citrix Analytics for Security 与 SIEM 解决方案集成:
- 通过 Kafka 端点进行连接
- 通过 Logstash 数据代理使用基于 Kafka 的采集功能进行连接
必备条件
-
为至少一个数据源启用数据处理。它可以帮助 Citrix Analytics for Security 开始与 SIEM 工具的集成。
-
确保以下终端节点位于网络的允许列表中。
端点 美国地区 欧盟区域 亚太南部地区 Kafka 代理 casnb-0.citrix.com:9094
casnb-eu-0.citrix.com:9094
casnb-aps-0.citrix.com:9094
casnb-1.citrix.com:9094
casnb-eu-1.citrix.com:9094
casnb-aps-1.citrix.com:9094
casnb-2.citrix.com:9094
casnb-eu-2.citrix.com:9094
casnb-aps-2.citrix.com:9094
casnb-3.citrix.com:9094
使用 Kafka 与 SIEM 服务集成
Kafka 是一款开源软件,用于实时传输数据。使用 Kafka,您可以分析实时数据以更快地获得见解。大多数情况下,处理足够数据的大型组织使用 Kafka。
Northbound Kafka 是一个内部中间层,使 Citrix Analytics 能够通过 Kafka 端点与 SIEM 客户共享实时数据源。如果您的 SIEM 支持 Kafka 端点,请使用 Logstash 配置文件中提供的参数以及 JKS 文件或 PEM 文件中的证书详细信息将 SIEM 与 Citrix Analytics for Security 集成。
使用 Kafka 进行集成需要以下参数:
属性名称 | 说明 | 配置数据示例 |
---|---|---|
用户名 | Kafka 提供的用户名。 | 'sasl.username': cas_siem_user_name, |
主机 | 要连接的 Kafka 服务器的主机名。 | 'bootstrap.servers': cas_siem_host, |
主题名称/客户端 ID | 分配给每个租户的客户端 ID。 | 'client.id': cas_siem_topic, |
组名称/ID | 读取消费者共享的消息所需的组名称。 | 'group.id': cas_siem_group_id, |
安全协议 | 安全协议的名称。 | 'security.protocol': 'SASL_SSL', |
SASL 机制 | 通常用于加密以实现安全身份验证的身份验证机制。 | 'sasl.mechanisms': 'SCRAM-SHA-256', |
SSL 信任存储位置 | 可以存储证书文件的位置。客户端信任存储密码是可选的,应留空。 | 'ssl.ca.location': ca_location |
会话超时 | 会话超时用于在使用 Kafka 时检测客户端故障。 | 'session.timeout.ms': 60000, |
自动偏移复位 | 定义在没有初始偏移量时使用来自主题分区的数据时的行为。您可以设置值,例如最新、最早或无。 | 'auto.offset.reset': 'earliest', |
以下是示例配置输出:
{'bootstrap.servers': cas_siem_host,
'client.id': cas_siem_topic,
'group.id': cas_siem_group_id,
'session.timeout.ms': 60000,
'auto.offset.reset': 'earliest',
'security.protocol': 'SASL_SSL',
'sasl.mechanisms': 'SCRAM-SHA-256',
'sasl.username': cas_siem_user_name,
'sasl.password': self.CLEAR_PASSWORD,
'ssl.ca.location': ca_location
}
<!--NeedCopy-->
上述参数在 Logstash 配置文件中可用。要下载配置文件,请导航到“设置”>“数据导出”>“SIEM 环境”选择“其他”选项卡 > 单击“下载 Logstash 配置文件”。
要了解/了解有关配置值的更多信息,请参阅配置。
数据流
身份验证数据通信发生在 Kafka 服务器端代理(Citrix Analytics for Security 云)和 Kafka 客户端之间。所有代理/外部客户端的通信都使用启用的 SASL_SSL 安全协议和目标 9094 端口进行公共访问。
Apache Kafka 有一个安全组件,可以使用 SSL 加密对飞行中的数据进行加密。 启用加密并设置 SSL 证书后,网络上的数据传输将得到加密和保护。只有第一台和最后一台计算机具有解密通过 SSL 发送的数据包的能力。
身份验证
有两个级别的身份验证可用,如下所示:
-
TLS/在客户端和服务器之间。
- 用于在客户端和服务器之间交换 TLS 身份验证的服务器证书(公钥)。
- 不支持基于客户端的身份验证或双向身份验证(需要客户端私钥证书)。
-
用于控制主题/端点访问的用户名/密码
- 确保特定客户只能从特定客户主题中读取
- SASL/SCRAM 用于用户名/密码身份验证机制以及 TLS 加密,以实现安全身份验证。
使用 SSL 加密和使用 SASL/SSL&SASL/PLAINTEXT 进行身份验证
默认情况下,Apache Kafka 以纯文本方式进行通信,其中所有数据均以明文发送,任何路由器都可以读取数据内容。Apache Kafka 有一个安全组件,可以使用 SSL 加密对飞行中的数据进行加密。 启用加密并仔细设置 SSL 证书后,数据现在已加密并通过网络安全传输。使用 SSL 加密,只有第一台和最后一台计算机具有解密发送的数据包的能力。
由于使用双向 SSL 加密,因此用户名/密码登录对于外部通信是安全的。
加密仅在进行中,数据仍未加密在代理的磁盘上。
在客户端配置中,需要客户端信任存储 JKS 文件和 PEM 文件(从信任存储 jks 文件转换)。您可以从 Citrix Analytics for Security GUI 下载这些文件,如以下屏幕截图所示:
使用 Logstash 集成 SIEM
如果您的 SIEM 不支持 Kafka 端点,可以使用 Logstash 数据收集引擎。您可以将数据事件从 Citrix Analytics for Security 发送到 Logstash 支持的输出插件之一。
以下部分介绍了使用 Logstash 将 SIEM 与 Citrix Analytics for Security 集成时必须遵循的步骤。
使用 Logstash 与 SIEM 服务集成
-
前往“设置”>“数据导出”。
-
在“帐户设置”页面上,通过指定用户名和密码来创建帐户。此帐户用于准备集成所需的配置文件。
-
确保密码满足以下条件:
-
选择 配置 以生成 Logstash 配置文件。
-
选择“其他”选项卡以下载配置文件。
-
Logstash 配置文件:此文件包含用于使用 Logstash 数据收集引擎从 Citrix Analytics for Security 发送事件的配置数据(输入、筛选器和输出部分)。有关 Logstash 配置文件结构的信息,请参阅 Logstash 文档。
-
JKS 文件:此文件包含 SSL 连接所需的证书。使用 Logstash 集成您的 SIEM 时,这个文件是必需的。
-
PEM 文件:此文件包含 SSL 连接所需的证书。使用 Kafka 集成 SIEM 时需要此文件。
注意
这些文件包含敏感信息。将它们存放在安全可靠的地方。
-
-
配置 Logstash:
-
在您的 Linux 或 Windows 主机上,安装 Logstash (与 Citrix Analytics for Security 兼容性的测试版本:v7.17.7 和 v8.5.3)。您也可以使用现有的 Logstash 实例。
-
在安装了 Logstash 的主机上,将以下文件放在指定的目录中:
主机类型 文件名 目录路径 Linux CAS_Others_LogStash_Config.config 对于 Debian 和 RPM 软件包: /etc/logstash/conf.d/
对于 .zip 和 .tar.gz 存档: {extract.path}/config
kafka.client.truststore.jks 对于 Debian 和 RPM 软件包: /etc/logstash/ssl/
对于 .zip 和 .tar.gz 存档: {extract.path}/ssl
Windows CAS_Others_LogStash_Config.config C:\logstash-7.xx.x\config
kafka.client.truststore.jks C:\logstash-7.xx.x\config
-
Logstash 配置文件包含敏感信息,例如 Kafka 凭据、LogAnalytics Workspace ID、主密钥。建议不要将这些敏感凭据存储为纯文本。为了确保集成,可以使用 Logstash 密钥库来添加带有相应值的密钥,这些密钥又可以在配置文件中使用密钥名称进行引用。有关 Logstash 密钥库及其如何增强设置安全性的更多信息,请参阅安全设置的 Secr ets 密钥库。
-
打开 Logstash 配置文件并执行以下操作:
在文件的输入部分,输入以下信息:
-
密码:您在 Citrix Analytics for Security 中创建的用于准备配置文件的帐户的密码。
-
SSL 信任存储位置:SSL 客户端证书的位置。这是主机中 kafka.client.truststore.jks 文件的位置。
在文件的输出部分,输入要将数据发送到的目标路径或详细信息。有关输出插件的信息,请参阅 Logstash 文档。
以下代码段显示输出已写入本地日志文件。
-
-
重新启动主机,将 Citrix Analytics for Security 处理后的数据发送到 SIEM 服务。
-
配置完成后,登录 SIEM 服务并验证 SIEM 中的 Citrix Analytics 数据。
打开或关闭数据传输
Citrix Analytics for Security 准备配置文件后,将为您的 SIEM 启用数据传输。
要停止从 Citrix Analytics for Security 传输数据,请执行以下操作:
- 前往“设置”>“数据导出”。
-
关闭切换按钮以禁用数据传输。默认情况下,数据传输始终处于启用状态。
此时会出现一个警告窗口供您确认。单击“关闭数据传输”按钮以停止传输活动。
要再次启用数据传输,请打开切换按钮。
注意
请联系 CAS-PM-Ext@cloud.com 以请求有关您的 SIEM 集成、将数据导出到 SIEM 的帮助或提供反馈。