第 20 章 日志记录安全组操作
要监控虚拟机(VM)实例的流量流,您可以为安全组创建数据包日志。每个日志生成有关数据包流事件的数据流,并将其附加到启动虚拟机实例的 Compute 主机上的通用日志文件。
您可以将任何实例端口与一个或多个安全组关联,并为每个安全组定义一个或多个规则。例如,您可以创建一个规则,允许安全组中任何虚拟机的入站 SSH 流量。您可以在同一安全组中创建另一条规则,以允许该组中的虚拟机启动和响应 ICMP (ping)消息。
然后,您可以创建日志来记录数据包流事件的组合。例如,以下命令会创建一个日志来捕获安全组 security-group1 中的所有 ACCEPT
事件。
$ openstack network log create my-log1 \ --resource-type security_group \ --resource security-group1 \ --event ACCEPT
您可以创建多个日志来捕获有关安全组和数据包流事件特定组合的数据。
您可以配置以下参数:
resource-type
-
您必须将此必需参数设置为
security_group
。 资源
(安全组名称)-
您可以使用 target 参数将日志限制为特定的安全组。例如
:--resource security-group1
。如果没有指定资源,日志将从项目中指定端口上的所有安全组捕获事件。 事件
(要记录的事件类型)您可以选择记录以下数据包流事件:
DROP
:为每个丢弃的传入或传出会话记录一个DROP
日志条目。注意如果您在一个或多个安全组上记录丢弃的流量,网络服务会记录所有安全组上丢弃的流量。
-
ACCEPT
:为安全组允许的每个新会话记录一个ACCEPT
日志条目。 -
ALL
(拖放和接受):记录所有DROP
和ACCEPT
事件。如果没有设置 -eventACCEPT
或 -eventDROP
,则网络服务默认为ALL
。
网络服务将所有日志数据写入每个 Compute 节点上的同一文件中: /var/log/containers/openvswitch/ovn-controller.log
。
20.1. 验证安全组日志记录是否已启用
要为网络数据包日志记录准备部署,请确保配置了日志记录服务插件和日志记录扩展。
流程
- 提供使用 RHOSP admin 角色访问 overcloud 的凭据文件。
输入以下命令。
$ openstack extension list --max-width 80 | grep logging
如果正确配置了日志记录服务插件和扩展,输出包括以下内容:
| Logging API Extension | logging | Provides a logging API |
如果 openstack extension list 输出不包括日志记录 API 扩展:
将日志
添加到环境文件中的NeutronPluginExtensions
参数。示例
parameter_defaults: NeutronPluginExtensions: "qos,port_security,log"
-
运行
openstack overcloud deploy
命令,并包括核心编配模板、环境文件和此环境文件。
其他资源