Azure 网络观察器 NSG
编辑Azure 网络观察器 NSG
编辑网络安全组 (NSG) 流日志是 Azure 网络观察器的一项功能,允许您记录有关流经网络安全组的 IP 流量的信息。流日志是云环境中所有网络活动的真实来源。无论您是试图优化资源的初创公司,还是试图检测入侵的大型企业,流日志都可以提供帮助。您可以使用它们来优化网络流、监视吞吐量、验证合规性、检测入侵等等。
数据流
编辑此集成支持通过 Azure Blob 存储 输入从 Azure 网络观察器 NSG 摄取日志。
- 日志 用于检索 NSG 流数据。有关更多详细信息,请参阅此处的文档。
要求
编辑必须安装 Elastic Agent。有关更多详细信息和安装说明,请参阅Elastic Agent 安装指南。
安装和管理 Elastic Agent
编辑有几种安装和管理 Elastic Agent 的选项
安装由 Fleet 管理的 Elastic Agent(推荐)
编辑使用此方法,您可以安装 Elastic Agent 并使用 Kibana 中的 Fleet 在中心位置定义、配置和管理您的代理。我们建议使用 Fleet 管理,因为它使代理的管理和升级变得容易得多。
以独立模式安装 Elastic Agent(高级用户)
编辑使用此方法,您可以安装 Elastic Agent 并在安装它的系统上手动配置代理。您负责管理和升级代理。此方法仅保留给高级用户。
在容器化环境中安装 Elastic Agent
编辑您可以在容器内运行 Elastic Agent,无论使用 Fleet Server 还是独立运行。Elastic Docker 注册表中提供了所有版本的 Elastic Agent 的 Docker 镜像,并且我们提供了在 Kubernetes 上运行的部署清单。
请注意,运行 Elastic Agent 有最低要求。有关更多信息,请参阅Elastic Agent 最低要求。
设置
编辑要从 Azure 网络观察器 NSG 收集数据,请按照以下步骤操作
编辑- 在 Azure 门户中,转到您的 存储帐户。
- 在 安全性 + 网络 下,单击 访问密钥。将显示您的帐户访问密钥,以及每个密钥的完整连接字符串。
- 单击 显示 密钥以显示您的 访问密钥 和 连接字符串,并启用复制值的按钮。
- 在密钥 1 下,找到密钥值。单击“复制”按钮以复制 帐户密钥。同样,您可以复制密钥上方显示的 存储帐户名称。
- 转到存储帐户中 数据存储 下的 容器 以复制 容器名称。
使用 参考中提供的步骤启用虚拟网络流日志。
在 Elastic 中启用集成
编辑- 在 Kibana 中,导航到“管理”>“集成”。
- 在顶部的“搜索集成”栏中,搜索
Azure Network Watcher NSG
。 - 从搜索结果中选择“Azure Network Watcher NSG”集成。
- 选择“添加 Azure Network Watcher NSG”以添加集成。
-
添加集成时,要通过 Azure Blob 存储收集日志,请保持 通过 Azure Blob 存储收集 NSG 日志 开关处于打开状态,然后配置以下参数
- 帐户名称
- 容器
- 服务帐户密钥/服务帐户 URI
- 保存集成。
日志参考
编辑日志
编辑这是 日志
数据集。
示例
日志
的示例事件如下所示
{ "@timestamp": "2018-11-13T12:00:35.389Z", "agent": { "ephemeral_id": "b9d6de84-93bd-40d6-9dc8-c06a84e0718e", "id": "7a02b789-2d3c-4e39-a804-6995ecfd6bc0", "name": "docker-fleet-agent", "type": "filebeat", "version": "8.12.0" }, "azure": { "resource": { "group": "FABRIKAMRG", "id": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG", "name": "FABRIAKMVM1-NSG", "provider": "MICROSOFT.NETWORK/NETWORKSECURITYGROUPS" }, "storage": { "blob": { "content_type": "application/json", "name": "testblob" }, "container": { "name": "azure-container1" } }, "subscription_id": "00000000-0000-0000-0000-000000000000" }, "azure_network_watcher_nsg": { "log": { "category": "NetworkSecurityGroupFlowEvent", "operation_name": "NetworkSecurityGroupFlowEvents", "properties": { "flows": [ { "flows": [ { "mac": "00-0D-3A-F8-78-56", "tuples": [ { "destination": { "ip": "10.5.16.4", "port": 443 }, "flow_state": "Begin", "protocol": "UDP", "source": { "ip": "94.102.49.190", "port": 28746 }, "timestamp": "2018-11-13T12:00:02.000Z", "traffic": { "decision": "Denied", "flow": "Inbound" } }, { "destination": { "ip": "10.5.16.4", "port": 59336 }, "flow_state": "Begin", "protocol": "TCP", "source": { "ip": "176.119.4.10", "port": 56509 }, "timestamp": "2018-11-13T12:00:24.000Z", "traffic": { "decision": "Denied", "flow": "Inbound" } }, { "destination": { "ip": "10.5.16.4", "port": 8088 }, "flow_state": "Begin", "protocol": "TCP", "source": { "ip": "167.99.86.8", "port": 48495 }, "timestamp": "2018-11-13T12:00:32.000Z", "traffic": { "decision": "Denied", "flow": "Inbound" } } ] } ], "rule": "DefaultRule_DenyAllInBound" }, { "flows": [ { "mac": "00-0D-3A-F8-78-56", "tuples": [ { "destination": { "ip": "13.67.143.118", "port": 443 }, "flow_state": "Begin", "protocol": "TCP", "source": { "ip": "10.5.16.4", "port": 59831 }, "timestamp": "2018-11-13T11:59:37.000Z", "traffic": { "decision": "Allowed", "flow": "Outbound" } }, { "bytes": { "received": 66, "sent": 66 }, "destination": { "ip": "13.67.143.117", "port": 443 }, "flow_state": "End", "packets": { "received": 1, "sent": 1 }, "protocol": "TCP", "source": { "ip": "10.5.16.4", "port": 59932 }, "timestamp": "2018-11-13T11:59:39.000Z", "traffic": { "decision": "Allowed", "flow": "Outbound" } }, { "bytes": { "received": 14008, "sent": 16978 }, "destination": { "ip": "13.67.143.115", "port": 443 }, "flow_state": "Continuing", "packets": { "received": 24, "sent": 30 }, "protocol": "TCP", "source": { "ip": "10.5.16.4", "port": 44931 }, "timestamp": "2018-11-13T11:59:39.000Z", "traffic": { "decision": "Allowed", "flow": "Outbound" } }, { "bytes": { "received": 7054, "sent": 8489 }, "destination": { "ip": "40.71.12.225", "port": 443 }, "flow_state": "End", "packets": { "received": 12, "sent": 15 }, "protocol": "TCP", "source": { "ip": "10.5.16.4", "port": 59929 }, "timestamp": "2018-11-13T12:00:06.000Z", "traffic": { "decision": "Allowed", "flow": "Outbound" } } ] } ], "rule": "DefaultRule_AllowInternetOutBound" } ], "version": "2" }, "resource_id": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG", "system_id": "a0fca5ce-022c-47b1-9735-89943b42f2fa", "time": "2018-11-13T12:00:35.389Z" } }, "cloud": { "provider": "azure" }, "data_stream": { "dataset": "azure_network_watcher_nsg.log", "namespace": "ep", "type": "logs" }, "destination": { "bytes": [ 66, 7054, 14008 ], "ip": [ "13.67.143.118", "13.67.143.117", "10.5.16.4", "40.71.12.225", "13.67.143.115" ], "packets": [ 1, 12, 24 ], "port": [ 8088, 443, 59336 ] }, "ecs": { "version": "8.11.0" }, "elastic_agent": { "id": "7a02b789-2d3c-4e39-a804-6995ecfd6bc0", "snapshot": false, "version": "8.12.0" }, "event": { "agent_id_status": "verified", "category": [ "network" ], "dataset": "azure_network_watcher_nsg.log", "ingested": "2024-05-03T08:30:09Z", "kind": "event", "type": [ "info" ] }, "input": { "type": "azure-blob-storage" }, "log": { "file": { "path": "http://elastic-package-service-azure-network-watcher-nsg-log-1:10000/devstoreaccount1/azure-container1/testblob" }, "offset": 1 }, "network": { "direction": [ "outbound", "inbound" ], "transport": [ "udp", "tcp" ] }, "related": { "ip": [ "13.67.143.118", "13.67.143.117", "10.5.16.4", "40.71.12.225", "13.67.143.115", "176.119.4.10", "94.102.49.190", "167.99.86.8" ] }, "rule": { "name": [ "DefaultRule_DenyAllInBound", "DefaultRule_AllowInternetOutBound" ] }, "source": { "bytes": [ 66, 8489, 16978 ], "ip": [ "176.119.4.10", "10.5.16.4", "94.102.49.190", "167.99.86.8" ], "mac": [ "00-0D-3A-F8-78-56" ], "packets": [ 1, 15, 30 ], "port": [ 59932, 44931, 59831, 28746, 56509, 59929, 48495 ] }, "tags": [ "forwarded", "azure_network_watcher_nsg-log" ] }
导出的字段
字段 | 描述 | 类型 |
---|---|---|
@timestamp |
事件时间戳。 |
日期 |
azure.resource.group |
资源组。 |
关键字 |
azure.resource.id |
资源 ID。 |
关键字 |
azure.resource.name |
名称。 |
关键字 |
azure.resource.provider |
资源类型/命名空间。 |
关键字 |
azure.storage.blob.content_type |
Azure Blob 存储 blob 对象的内容类型。 |
关键字 |
azure.storage.blob.name |
Azure Blob 存储 blob 对象的名称。 |
关键字 |
azure.storage.container.name |
Azure Blob 存储容器的名称。 |
关键字 |
azure.subscription_id |
Azure 订阅 ID。 |
关键字 |
azure_network_watcher_nsg.log.category |
事件的类别。 |
关键字 |
azure_network_watcher_nsg.log.operation_name |
始终为 NetworkSecurityGroupFlowEvents。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.flows.mac |
列出流的网络接口的 MAC 地址。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.bytes.received |
从目标发送到源的 TCP 数据包字节总数。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.bytes.sent |
从源发送到目标的 TCP 数据包字节总数。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.destination.ip |
目标 IP 地址。 |
ip |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.destination.port |
目标端口。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.flow_state |
流的状态。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.packets.received |
从目标发送到源的 TCP 数据包总数。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.packets.sent |
从源发送到目标的 TCP 数据包总数。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.protocol |
流的协议。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.source.ip |
源 IP 地址。 |
ip |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.source.port |
源端口。 |
长整型 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.timestamp |
流发生的 UNIX 时间戳格式的时间戳。 |
日期 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.traffic.decision |
是否允许或拒绝流量。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.flows.tuples.traffic.flow |
流量流的方向。 |
关键字 |
azure_network_watcher_nsg.log.properties.flows.rule |
列出流的规则。 |
关键字 |
azure_network_watcher_nsg.log.properties.version |
流日志的事件架构的版本号。 |
关键字 |
azure_network_watcher_nsg.log.resource_id |
网络安全组的资源 ID。 |
关键字 |
azure_network_watcher_nsg.log.system_id |
网络安全组的系统 ID。 |
关键字 |
azure_network_watcher_nsg.log.time |
记录事件时的 UTC 时间。 |
日期 |
data_stream.dataset |
数据流数据集。 |
constant_keyword |
data_stream.namespace |
数据流命名空间。 |
constant_keyword |
data_stream.type |
数据流类型。 |
constant_keyword |
event.dataset |
事件数据集。 |
constant_keyword |
event.module |
事件模块。 |
constant_keyword |
input.type |
Filebeat 输入的类型。 |
关键字 |
log.offset |
日志偏移量。 |
长整型 |
变更日志
编辑变更日志
版本 | 详细信息 | Kibana 版本 |
---|---|---|
1.1.0 |
增强 (查看拉取请求) |
8.13.0 或更高版本 |
1.0.0 |
增强 (查看拉取请求) |
8.13.0 或更高版本 |
0.3.0 |
增强 (查看拉取请求) |
— |
0.2.1 |
Bug 修复 (查看拉取请求) |
— |
0.2.0 |
增强 (查看拉取请求) |
— |
0.1.0 |
增强 (查看拉取请求) |
— |