【发布时间】:2020-05-21 15:38:03
【问题描述】:
人们如何实施生产访问控制(即记录和报告服务和人员通过 SSH 对计算实例的访问)。我们的目标是跨项目一致地将所有用户登录条目转发到我们的 SIEM,并在理想情况下避免使用特定于项目的 Stackdriver 接收器(以及相关的设置和维护)。
我们尝试了以下方法:
- 在 Fluentd 中启用身份验证日志转发,因为默认情况下仅完成 syslog
- 已启用组织级接收器,可发送到包含所有子级的主题(通过 HTTP 订阅者转发到 SIEM)
- 可以在项目级别查看非容器操作系统映像(即 Ubuntu)的 syslog/auth
我们看到的问题: - 组织级别过滤器格式的有限文档(似乎与项目级别的日志名称不同)。 log_id 函数似乎确实有效 - 某些日志类型出现在 org 级别(例如 cloudapis 活动),但 syslog 似乎没有得到处理 - 容器操作系统在 fluentd 中似乎默认不启用 ssh/sudo 转发(或者我还没有找到具有此数据的日志类型)。我确实看到这个记录到了测试节点上的 journalctl
有没有人有一致的方法来实现这一点?
【问题讨论】:
-
Stackdriver 默认不记录 SSH 服务器日志。您需要将
/var/log/auth.log添加到您正在监控的实例的 Stackdriver。 serverfault.com/a/955094/437769 -
是的。看到了链接的项目,这是我们尝试过的事情列表中的第一个。这些日志显然不会在组织级别对 Stackdriver 可见,或者至少我找到了启用此功能的方法。仅在项目级别。
-
“组织级别”是什么意思。 Stackdriver 日志是针对大多数服务的每个服务/资源的。您必须深入了解 Stackdriver 才能查看为资源记录的日志。如果您想要其他内容,则需要设置日志导出并在您自己的应用程序或日志监控服务中处理条目。
-
您可以在组织级别定义接收器(通过 UI 不可见 - 请参阅聚合日志文档)。我们使用接收器和发布/订阅将日志转发到 SIEM。进一步测试表明 syslog 在 org 中可用,但您无法通过 CLI 列出所有可用日志。
标签: google-cloud-platform stackdriver fluentd google-cloud-stackdriver