이 페이지에서는 Google Kubernetes Engine(GKE)에서 Kubernetes 및 GKE의 인터넷 보안 센터(CIS) 벤치마크 준수를 개선하기 위해 취하는 방법을 설명합니다. 이 페이지에는 다음 정보가 포함되어 있습니다.
- CIS Kubernetes 벤치마크를 준수하도록 관리형 GKE 컨트롤 플레인을 구성하는 방법
- CIS Google Kubernetes Engine(GKE) 벤치마크를 준수하도록 GKE 노드와 워크로드를 구성하는 방법
CIS 벤치마크 정보
CIS는 Kubernetes의 보안 구성 가이드라인이 포함된 다음 벤치마크를 출시합니다.
- CIS Kubernetes 벤치마크: 오픈소스 Kubernetes 프로젝트에 적용됩니다. 이는 다양한 자체 관리형 및 호스팅된 Kubernetes 구현에 대한 안내를 제공하기 위함입니다.
- CIS GKE 벤치마크: GKE 클러스터에서 제어할 수 있는 구성요소의 보안 구성에 대한 가이드라인을 설정합니다. Google Cloud의 GKE에 대한 권장사항이 포함됩니다.
CIS GKE 벤치마크를 우선시하는 것이 좋습니다. Google Cloud의 GKE에만 해당되기 때문입니다. CIS Kubernetes 벤치마크에는 GKE에서 보거나 수정할 수 없는 제어에 대한 다양한 권장사항이 포함되어 있습니다. Google의 클러스터 보안 방법에는 오픈소스 Kubernetes 벤치마크의 범위를 벗어나고 이러한 권장사항과 충돌할 수 있는 완화 조치가 포함됩니다.
GKE에 적용되는 기타 벤치마크
CIS GKE 벤치마크와 CIS Kubernetes 벤치마크 외에도 다음 벤치마크가 GKE에서 사용할 수 있는 운영체제에 적용됩니다. 특정 OS 벤치마크에서 Kubernetes 사용을 명시적으로 다루지 않더라도 추가 보안 안내를 위해 해당 벤치마크를 계속 참조해야 합니다.
- Container-Optimized OS 벤치마크: 모든 GKE Linux 노드에 설치된 기본 운영체제
- Ubuntu Linux 벤치마크: GKE Standard에서 사용 가능
- Windows Server 벤치마크: GKE Standard에서 사용 가능
기본 컨테이너 런타임인 containerd에는 벤치마크가 없습니다.
공유 책임 모델
Google은 GKE 공유 책임 모델에 따라 다음 구성요소를 자동으로 관리합니다.
- 컨트롤 플레인 VM, API 서버, 구성요소(예: etcd, kube-controller-manager, kube-scheduler)가 포함된 컨트롤 플레인
- 노드 운영체제
이러한 구성요소는 GKE에서 소유한 프로젝트에 있으므로 해당 CIS 벤치마크 컨트롤에 대해 이러한 구성요소를 수정하거나 평가할 수 없습니다. 하지만 워커 노드와 워크로드에 적용되는 CIS 벤치마크 제어를 평가하고 해결할 수 있습니다. GKE 공유 책임 모델에 따라 개발자가 이러한 구성요소를 담당합니다.
CIS 벤치마크를 위한 Google의 GKE 보안 강화 방법
GKE는 오픈소스 Kubernetes의 관리형 구현입니다. Google은 컨트롤 플레인을 완전히 관리하고 컨트롤 플레인 구성요소 구성을 보호할 책임이 있습니다. 다음 표에는 CIS 벤치마크의 점수에 영향을 줄 수 있는 Google의 결정사항 일부가 나와 있습니다.
GKE 보안 방법 | |
---|---|
인증 |
|
허용 컨트롤러 | GKE는 다음 허용 컨트롤러를 사용 중지합니다.
|
감사 로깅 | GKE는 GKE 감사 정책을 사용하여 감사 로그를 캡처합니다. 따라서 Kubernetes API 서버 감사 로깅 플래그를 설정할 필요가 없습니다. |
디버깅 | GKE는 디버깅용 프로파일링을 사용합니다. |
암호화 |
|
kubelet |
|
CIS 벤치마크에 따라 GKE 평가
다음 방법 중 하나를 사용하여 벤치마크에 대한 클러스터 평가를 자동화할 수 있습니다.
CIS GKE 벤치마크:
- 모든 GKE 버전:
kube-bench
를 실행하여 벤치마크를 기준으로 워커 노드를 평가합니다. 자세한 내용은 kube-bench GitHub 저장소를 참조하세요.- Twistlock Defender와 같은 서드 파티 도구를 사용하여 벤치마크를 기준으로 노드를 평가합니다.
- GKE Enterprise 버전: 규정 준수 대시보드를 사용하여 모든 클러스터가 CIS GKE 벤치마크를 준수하는지 평가합니다. 자세한 내용은 GKE Compliance 대시보드 정보를 참조하세요.
- 모든 GKE 버전:
CIS Kubernetes 벤치마크:
kube-bench
를 실행하여 벤치마크를 기준으로 워커 노드를 평가합니다. 벤치마크의 권장사항에 따라 관리형 컨트롤 플레인을 평가할 수 없습니다.
다음 단계
- GKE 보안 개요읽기
- GKE 강화 가이드의 보안 권장사항 따라하기
- GKE 보안 상황을 사용하여 클러스터의 보안 문제를 모니터링하는 방법 알아보기
- GKE Enterprise의 GKE 규정 준수 대시보드에서 클러스터의 규정 준수 문제를 평가하는 방법을 알아보기