반응형
1. 개념
- Seccomp는 secure computing mode 의 줄임말
- 리눅스 커널의 보안기능 중 하나로 syscall 실행을 허용/거부/로깅 할 수 있음
- K8s "전용" 보안 기능은 아니고 ASLR과 같이 리눅스에 구현된 보안 기능임
- AppArmor와 비슷한 기능으로 느껴져서 chatGPT한테 차이점을 질의한 결과 아래와 같은 컨셉으로 느껴졌음
- AppArmor : 특정 프로세스의 시스템 리소스 접근에 대한 허용/거부
- Seccomp : 모든 프로세스의 syscall 호출에 대한 허용/거부
2. Seccomp 사용 팁
- seccomp 정책
- SCMP_ACT_ALLOW : 허용
- SCMP_ACT_ERRNO : 거부
- SCMP_ACT_LOG : 로깅
- seccomp 기본 경로
- /var/lib/kubelet/seccomp
- seccomp 적용 여부 확인
- grep -i seccomp /boot/config-$(uname -r)
- mode 0 : disabled
- mode 1 : strict
- mode 2 : filtered
3. Seccomp 적용 방법
- seccomp 경로(/var/lib/kubelet/seccomp)에 seccomp 룰 생성(예시)
- pod 수준의 securityContext에 seccomp 설정("/var/lib/kubelet/seccomp" 경로를 기본으로 하며 예시의 profiles/audit.json의 의미는 절대 경로로 표현하자면 " /var/lib/kubelet/seccomp/profiles/audit.json" 임)
- 중요한 점은 securityContext에서 privileged: true로 설정된 경우 seccomp를 적용할 수 없음
4. 참고
반응형
'Kubernetes' 카테고리의 다른 글
Kubernetes 공격 표면 최소화(Reduce Attack Surface) (0) | 2024.03.16 |
---|---|
Kubernetes Security - AppArmor (1) | 2024.03.16 |
Kubernetes Audit Logs 설정 (0) | 2024.03.15 |
Kubernetes 컨테이너 불변성(Immutability of Containers) 개념 (0) | 2024.03.14 |
Kubernetes Falco 개념 및 설치 (0) | 2024.03.14 |