美文网首页Openshift:可靠的Kubernetes发行版
OpenShift日志审计功能与策略配置

OpenShift日志审计功能与策略配置

作者: 潘晓华Michael | 来源:发表于2020-03-23 22:42 被阅读0次
审计

OpenShift支持审计功能,它可以记录下所有API服务的请求。如果将所有请求记录下来,它的量非常庞大,同时也是没有太大意义的。所以OpenShift审计记录当然出会支持请求的过滤,通过方便地策略配置,可以有选择地记录下请求的内容。通常我们会记录对集群资源作更改的请求。

打开审计功能

在部署OpenShift时可以打开审计功能

openshift_master_audit_config={"enabled": true, "auditFilePath": "/var/lib/origin/audit-ocp.log", "maximumFileRetentionDays": 14, "maximumFileSizeMegabytes": 500, "maximumRetainedFiles": 5, "policyFile": "/etc/origin/master/adv-audit.yaml", "logFormat":"json"}
openshift_master_audit_policyfile="/<path>/adv-audit.yaml"

/etc/origin/master/master-config.yaml中的配置如下:

auditConfig:
  auditFilePath: "/var/lib/origin/audit-ocp.log"
  enabled: true
  maximumFileRetentionDays: 10
  maximumFileSizeMegabytes: 10
  maximumRetainedFiles: 5
  policyFile: "/etc/origin/master/adv-audit.yaml"
  logFormat: json

其中:
auditFilePath:审计日志保存地址
maximumFileRetentionDays:最长保留时间
maximumFileSizeMegabytes:每个文件最大大小
maximumRetainedFiles:保留最大文件数
policyFile:审计规则配置路径
openshift_master_audit_policyfile:安装时指定部署机上的审计规则配置文件路径
logFormat:日志格式

审计规则设置

审计规则策略实例

apiVersion: audit.k8s.io/v1beta1
kind: Policy
rules:

  # Do not log watch requests by the "system:kube-proxy" on endpoints or services
  - level: None 
    users: ["system:kube-proxy"] 
    verbs: ["watch"] 
    resources: 
    - group: ""
      resources: ["endpoints", "services"]

  # Do not log authenticated requests to certain non-resource URL paths.
  - level: None
    userGroups: ["system:authenticated"] 
    nonResourceURLs: 
    - "/api*" # Wildcard matching.
    - "/version"

  # Log the request body of configmap changes in kube-system.
  - level: Request
    resources:
    - group: "" # core API group
      resources: ["configmaps"]
    # This rule only applies to resources in the "kube-system" namespace.
    # The empty string "" can be used to select non-namespaced resources.
    namespaces: ["kube-system"] 

  # Log configmap and secret changes in all other namespaces at the metadata level.
  - level: Metadata
    resources:
    - group: "" # core API group
      resources: ["secrets", "configmaps"]

  # Log all other resources in core and extensions at the request level.
  - level: Request
    resources:
    - group: "" # core API group
    - group: "extensions" # Version of group should NOT be included.

  # A catch-all rule to log all other requests at the Metadata level.
  - level: Metadata 

  # Log login failures from the web console or CLI. Review the logs and refine your policies.
  - level: Metadata
    nonResourceURLs:
    - /login* 
    - /oauth* 

每个事件可记录的有四个级别level

  • None:不记录与此规则匹配的事件
  • Metadata:记录请求元数据(请求用户,时间戳,资源,动词等),但不记录请求或响应正文。 此级别与基本审核中使用的级别相同。
  • Request:记录事件元数据和请求正文,但不记录响应正文。
  • RequestResponse:记录事件元数据,请求和响应主体。

用户users:规则适用的用户列表。 空列表表示每个用户
请求类型verbs:调用 API的请求类型,(get, list, watch, create, update, patch, delete, deletecollection以及 proxy)。空列表表示每个动词。
资源类型resources:规则适用的资源列表。 空列表表示所有资源。
组列表userGroups:规则适用的组列表。 空列表表示每个组。
nonResourceURLs:规则适用的非资源URL列表。
namespaces:规则适用的名称空间列表。 空列表表示每个名称空间。

一个实用的例子

apiVersion: audit.k8s.io/v1beta1
kind: Policy
rules:

  - level: None
    userGroups: ["system:masters", "system:nodes", "system:serviceaccounts:kube-system"]
  - level: None
    verbs: ["get", "list", "watch"]
  - level: Metadata

该配置将会过滤掉大部分组件之间交互的请求,同时也会过滤掉一些查询请求的审计。

参考文章:

OpenShift官方文档:master-node-config-advanced-audit

相关文章

  • OpenShift日志审计功能与策略配置

    OpenShift支持审计功能,它可以记录下所有API服务的请求。如果将所有请求记录下来,它的量非常庞大,同时也是...

  • hadoop日志审计

    1、配置 hadoop开启审计日志需要修改hadoop-env.sh export HADOOP_NAMENODE...

  • 实现审核身份验证

    AD DS审核 审核日志类型 配置AD DS审核 审核日志类型 配置AD DS审核 1:进入组策略管理,配置默认策...

  • go-logrus 日志框架封装使用

    go-logrus 日志框架封装使用 配置 logs hook gin日志中间件 日志文件清理策略 rotatelogs

  • HDFS使用RBF注意事项

    RBF 需要优化的配置 NameNode 侧 NN 启用 RPC context 特性,在审计日志中打印真实的客户...

  • 整合了一个命令行程序的框架(1)

    aop和定时任务 这次更新主要增加了审计日志还有集成了hangfire做定时任务 先来看审计日志部分,审计日志主要...

  • 日志审计系统的基本原理

    日志审计系统简介 什么是日志审计? 综合日志审计平台,通过集中采集信息系统中的系统安全事件、用户访问记录、系统运行...

  • 等保测评需要解决的问题

    等保测评问题汇总 1,终端开启安全审计策略 2.开启密码策略 3.终端未启用登录失败处理功能 4.终端未开启日志审...

  • 2018/6/1–6/29任务   王智坤

    6.5 成功日志 6.11成功日志 6.12成功日志 6.15成功日志 6.17成功日志 6.22成功日志 6.2...

  • audit Linux 用户空间审计工具

    审计的目的是基于事先配置的规则生成日志,记录可能发生在系统上的事件(正常或非正常行为的事件),审计不会为系统提供额...

网友评论

    本文标题:OpenShift日志审计功能与策略配置

    本文链接:https://www.haomeiwen.com/subject/dtejyhtx.html