반응형
1. 개념
- K8s의 보안은 On-prem 보안과는 접근방법이 다르고 Cloud 보안과도 차이가 존재
- Cloud Native Security의 기본은 4C
- Cloud
- Cluster
- Container
- Code
2. K8s Attack / Security Surface
- 공격 표면을 반대로 이야기하면 보안 표면으로 볼 수 있음
- K8s에는 3개의 공격 / 보안 표면이 존재
- Host OS Security
- Cluster Security
- Application Security
3. Host OS Security
- K8s 클러스터가 구동되는 Host의 운영체제를 의미(EKS라면 Node가 구동되는 EC2의 AMI)
- Host OS를 안전하게 관리하는 방법은 일반적인 서버 보안과 동일한 층위로 접근
- CCE 점검
- K8s 노드 서비스만 가동
- 불필요 애플리케이션 삭제
- 주기적 패치 / 업데이트 적용
- 런타임 보안 도구 실행
- 불필요 / 악성프로세스 모니터링 및 삭제
- SSH / IAM 접근제어
4. Cluster Security
- K8s 클러스터를 설정하고 운영하는 측면에서 적용할 수 있는 보안(Cluster 자체의 보안)
- K8s 컴포넌트 버전의 주기적 업데이트
- 엄격한 접근제어 및 인증 / 인가
- AdmissionControllers 적용
- NetworkPolicy 적용
- Audit 로그 활성화
- 주기적 Security Benchmark 점검
- 또한 ETCD에 대한 보안도 필요
- ETCD 암호화(또는 Vault 사용)
- ETCD로의 접근제어
- ETCD로 향하는 트래픽 암호화
5. Application Security
- 컨테이너에 대한 보안
- 시크릿 / 크레덴셜 관리
- RBAC 적용
- 컨테이너 샌드박싱
- 컨테이너 하드닝(securityContext 등)
- SAST / DAST
- mTLS
- ServiceMeshes
6. 참고
반응형
'Kubernetes' 카테고리의 다른 글
Kubernetes Ingress TLS 적용 (0) | 2024.02.29 |
---|---|
Kubernetes 네트워크 정책(NetworkPolicy) 개념 및 설정2 (0) | 2024.02.29 |
Kubernetes Blue·Green / Canary 배포 방법 (0) | 2023.03.16 |
Kubernetes Custom Resource 개념 및 설정 (0) | 2023.03.16 |
Kubernetes Admission Controller(Mutating / Validating) 개념 및 설정 (0) | 2023.03.16 |