DevOps/Kubernetes

Audit Policy 설정 방법

우드의개발개발 2024. 10. 10. 16:59

1.  감사 정책 파일 생성

로그로 기록하고 싶은 감사 정책 파일을 작성해야합니다. 이 때 파일 내 group 부문에 무엇을 적어야 할지에 대해 잠시 알아보겠습니다. group에는 공식문서 Kubernetes v1.20 [stable] 기준 4가지 그룹이 있습니다. 아래와 같으니 리소스 명시하실 때 그룹을 잘 지정해서 명시하시길 바랍니다.

 

core

- pods, services, configmaps, sercrets, namespaces, persistentvolumes, persistentvolumeclaims, nodes, namespaces, endpoints

 

apps

- deployments, replicasets, statefulsets

 

batch

- jobs, cronjobs

 

networking.k8s.io 

- ingress, networkpolicies

apiVersion: audit.k8s.io/v1 # This is required.
kind: Policy
# Don't generate audit events for all requests in RequestReceived stage.
omitStages:
  - "RequestReceived"
rules:
  # Log pod changes at RequestResponse level
  - level: RequestResponse
    resources:
    - group: ""
      # Resource "pods" doesn't match requests to any subresource of pods,
      # which is consistent with the RBAC policy.
      resources: ["pods"]
  # Log "pods/log", "pods/status" at Metadata level
  - level: Metadata
    resources:
    - group: ""
      resources: ["pods/log", "pods/status"]

 

2.  apiserver 설정파일 설정

 

apiserver 설정파일 수정을 통해 아래 항목을 설정해줍니다.

- 감사 정책 파일 경로 설정

- 감사 정책으로 관련 로그 파일 경로 설정

- 감사 정책 로그 보관 기간 설정

- 감사 정책 최대 파일 보유수 설정

 

- 감사 정책 파일 경로 호스트 volume 설정

 

- 호스트 volume 설정에 따른 컨테이너 volume 설정