[Kubernetes Cluster Component Security] Pod Security

IMKUNYOUNG·2025년 3월 5일
0

KCSA

목록 보기
5/10

1. Pod Security 개요

  • Kubernetes에서 Pod의 보안 설정을 관리하기 위한 기능.
  • 특정 기능 및 권한을 가진 Pod의 생성을 제한하는 정책을 구현하는 데 사용됨.
  • 원래는 Pod Security Policies (PSP)를 사용했지만, Kubernetes 1.25에서 제거됨.
  • 대신 Pod Security Admission(PSA)Pod Security Standards(PSS)가 도입됨.

2. Pod Security Policies(PSP)의 동작 방식

  • Pod 생성 요청 시 Pod Security Policy Admission Controller가 검토함.
  • 미리 정의된 정책을 기반으로 Pod 생성 요청을 승인하거나 거부함.
  • 예시:
    • privileged: false > 특권 컨테이너 실행 방지
    • runAsUser: MustRunAsNonRoot > root 사용자 실행 방지
    • allowedVolumes: ["configMap", "secret"] > hostPath 볼륨 차단

3. PSP의 문제점

  • 기본적으로 비활성화됨(default enabled) > 사용자가 직접 활성화해야 함.
  • 초기 설정 어려움 > 정책을 미리 생성하지 않으면 모든 Pod 생성 요청이 거부됨.
  • RBAC 설정 필요 > Role과 RoleBinding을 통해 Pod Security Polices API에 접근 가능해야 함.
  • 운영 환경 적용 어려움 > 기존에 이미 운영중인 클러스터에 적용 시 예상하지 못한 문제 발생 가능성큼
  • 복잡성 증가 > 여러 요구사항에 맞춰 다양한 정책이 필요해 관리가 어려움

4. Pod Security Admission(PSA)과 Pod Security Standards(PSS)

  • Kubernetes 1.25부터 PSP를 대체하는 새로운 보안 모델.
  • PSA: Admission Controller로 동작하며, Pod 생성 시 정책 준수 여부를 평가.
  • PSS: 세 가지 표준 보안 수준 제공
    • Privileged > 모든 권한 허용
    • Baseline > 최소한의 제한 적용 (일반적인 애플리케이션 실행 가능)
    • Restricted > 강화된 보안 정책 적용 (보안 최우선 환경)

5. 요약

  • Kubernetes 1.25 이전: Pod Security Policies(PSP) 사용 (설정 복잡, 유지보수 어려움)
  • Kubernetes 1.25 이후: Pod Security Admission(PSA) + Pod Security Standards(PSS) 로 전환 (설정 단순화)
  • 보안 정책 적용 시 RBAC 설정 필요
  • 기존 PSP 적용 환경에서는 새로운 보안 모델로 마이그레이션 고려 필요

0개의 댓글

관련 채용 정보