Certified Kubernetes Administration - 44
2024-06-22
- Kubernetes
- Cloud
Kubernetes 보안 기본 요소
클러스터 호스트 보안
-
호스트에 대한 모든 접근은 반드시 보안되어야 합니다.
-
루트 접근 비활성화.
-
비밀번호 기반 인증 비활성화.
-
SSH 키 기반 인증만 허용.
-
클러스터를 호스팅하는 물리적 또는 가상 인프라의 추가 보안 조치 필요.
-
인프라가 손상되면 모든 것이 손상될 수 있습니다.
Kubernetes 관련 보안
-
Kubernetes 클러스터 보안의 핵심은
kube-apiserver
입니다. -
kube-apiserver
는 클러스터 내 모든 작업의 중심입니다. -
kubectl
유틸리티나 API 직접 접근을 통해kube-apiserver
와 상호작용하며 클러스터 내 거의 모든 작업을 수행할 수 있습니다.
API 서버 접근 제어
-
첫 번째 방어선은
API 서버
에 대한 접근 제어입니다. -
두 가지 결정을 내려야 합니다:
- 누가 클러스터에 접근할 수 있는가?: 인증 메커니즘
- 접근한 사용자가 무엇을 할 수 있는가?: 권한 부여 메커니즘
인증 메커니즘
-
API 서버
에 인증할 수 있는 여러 가지 방법이 있습니다:-
정적 파일에 저장된 사용자 ID 및 비밀번호.
-
토큰.
-
인증서.
-
LDAP와 같은 외부 인증 제공자와의 통합.
-
기계용 서비스 계정.
-
권한 부여 메커니즘
-
클러스터에 접근한 사용자가 할 수 있는 작업은 권한 부여 메커니즘에 의해 정의됩니다:
-
역할 기반 접근 제어 (RBAC): 사용자들을 특정 권한을 가진 그룹과 연관시킵니다.
-
속성 기반 접근 제어 (ABAC), 노드 인증자, 웹훅 등 다른 권한 부여 모듈도 존재합니다.
-
클러스터 내 통신 보안
-
클러스터 내 모든 통신은 TLS 암호화를 사용하여 보안 처리됩니다.
-
ETCD 클러스터,
kube-controller-manager
,scheduler
,API server
등의 컴포넌트 간 통신. -
워커 노드의
Kubelet
및kube-proxy
와의 통신.
-
클러스터 내 애플리케이션 간 통신
-
기본적으로 모든 파드는 클러스터 내 다른 모든 파드에 접근할 수 있습니다.
-
네트워크 정책을 사용하여 파드 간 접근을 제한할 수 있습니다.
요약
- 클러스터 호스트 보안, API 서버 접근 제어, 클러스터 내 통신 보안, 애플리케이션 간 통신 보안 등의 다양한 보안 요소를 이해해야 합니다.
Certified ...
Certified ...