이 페이지에서는 Google Distributed Cloud에 대한 우수한 보안 관행을 설정하는 방법을 소개합니다. 이 페이지의 안내는 포괄적인 권장사항 목록을 제공하기 위한 것이 아닙니다.
Google Distributed Cloud에서 보안을 위한 권장사항을 사용하려면 Kubernetes 및 Google Kubernetes Engine(GKE)의 개념과 Google Distributed Cloud에 고유한 개념을 적용합니다.
Kubernetes 보안
Google Distributed Cloud를 사용하는 경우 보안을 위한 일반적인 Kubernetes 가이드라인을 따르는 것이 좋습니다.
Kubernetes 보안 가이드라인 소개를 보려면 Kubernetes 문서에서 보안 체크리스트 및 클라우드 기반 보안 개요를 참조하세요.
GKE 보안
Google Distributed Cloud는 GKE를 확장하여 자체 프레미스에 있는 자체 Linux 서버에 GKE 클러스터를 만들 수 있도록 합니다. GKE 보안에 대한 자세한 내용은 GKE 보안 개요를 참조하세요. 읽는 동안 제어 영역과 노드가 온프레미스에서 실행되므로 제어 영역 보안 및 제안 노드 보안에 대한 제안이 적용되지 않는다는 점에 유의하세요.
Google Distributed Cloud 보안
다음 섹션에서는 Google Distributed Cloud에 대한 우수한 보안 관행을 수립하는 방법을 제공합니다.
하드웨어 보안
업계 표준의 물리적 보안 및 안전 기능으로 온프레미스 데이터 센터를 보호합니다.
관리자 워크스테이션에 대한 액세스가 엄격하게 제한되어 있는지 확인합니다. 관리자 워크스테이션에는
kubeconfig
파일, SSH 키, 서비스 계정 키와 같은 민감한 정보가 저장됩니다.
노드 보안
소프트웨어 패키지 업데이트 및 보안 패치 설치로 운영체제를 최신 상태로 유지합니다.
워크로드 이미지 가져오기 및 관련 보안 이점을 추가로 제어하기 위해 비공개 레지스트리에 인증하도록 워커 노드를 구성할 수 있습니다. 노드의 비공개 레지스트리 지원은 버전 1.29 클러스터에 미리보기 버전으로 제공됩니다.
기본적으로 Google Distributed Cloud는 Docker
apt
저장소 및 필요한 GPG 키를 클러스터 노드에 추가합니다. 배포에서 각 클러스터 노드에 패키지 저장소를 추가하는 대신 컨테이너 이미지에 비공개 패키지 저장소를 사용하도록 클러스터를 구성할 수 있습니다.
클러스터 보안
관리자 및 사용자 클러스터 배포를 사용해서 트래픽 및 데이터를 격리합니다. 이 배포 유형은 다음 유형의 격리를 달성하는 데 도움이 됩니다.
- 워크로드 트래픽이 운영 및 관리 영역의 트래픽으로부터 격리됩니다.
- 클러스터 액세스는 그룹 또는 역할별로 격리됩니다.
- 프로덕션 워크로드가 개발 워크로드로부터 격리됩니다.
지원되는 버전으로 클러스터를 업그레이드합니다. 지원되는 버전을 사용하면 다음과 같은 보안 이점을 얻을 수 있습니다.
- 보안 취약점 수정
- 최신 보안 상황과 기술을 활용하는 새로운 특성 및 기능
- 번들 소프트웨어 구성요소 업데이트
외부 노출을 줄이고 기타 보안 이점을 얻기 위해 레지스트리 미러를 구성하여 공개 레지스트리의 로컬 사본에서 Google Distributed Cloud 구성요소를 설치할 수 있습니다.
워크로드 보안
Binary Authorization으로 워크로드를 보호합니다. Binary Authorization은 Cloud에서 실행되는 애플리케이션에 소프트웨어 공급망 보안을 제공하는 Google Cloud 서비스입니다. Binary Authorization을 사용하면 애플리케이션을 프로덕션 환경에 배포하기 전에 소프트웨어의 품질과 무결성을 보호하는 내부 프로세스가 성공적으로 완료되었는지 확인할 수 있습니다.
포드에 Google Cloud 리소스 액세스 권한을 부여하려면 GKE용 워크로드 아이덴티티 제휴를 사용합니다. GKE용 워크로드 아이덴티티 제휴를 통해 Kubernetes 서비스 계정을 IAM 서비스 계정으로 실행할 수 있습니다. Kubernetes 서비스 계정으로 실행되는 포드는 IAM 서비스 계정의 권한을 가집니다.
네트워크 보안
Google Distributed Cloud 및 Google Cloud 간에 보안 연결을 선택합니다. 기본 연결이 설정되었으면 연결 보안을 강화하는 기능을 추가합니다.
클러스터를 프록시 뒤에 설치하고 방화벽 규칙을 생성하여 클러스터가 공개 인터넷에 노출되지 않도록 제한합니다. 또한 네트워크 환경에서 적절한 제어를 사용하여 클러스터에 대한 공개 액세스를 제한합니다.
인증 보안
GKE Identity Service로 ID 관리 GKE Identity Service는 인증용 기존 ID 솔루션을 여러 Google Kubernetes Engine(GKE) Enterprise 버전 환경에 제공할 수 있게 해주는 인증 서비스입니다. 명령줄(모든 공급업체) 또는 Google Cloud 콘솔(OIDC만 해당)에서 모두 기존 ID 공급업체를 사용하여 Google Distributed Cloud 클러스터에 로그인하고 이를 사용할 수 있습니다.
Connect 게이트웨이로 등록된 클러스터에 연결합니다. Connect 게이트웨이는 Fleet 성능을 기반으로 빌드되므로 GKE Enterprise 사용자는 일관되며 안전한 방식으로 등록된 클러스터에 연결하여 명령어를 실행할 수 있습니다.
사용자 인증 정보 보안
인증 기관을 순환합니다. Google Distributed Cloud는 인증서 및 비공개 키를 사용하여 클러스터의 시스템 구성요소 간 연결을 인증하고 암호화합니다. 보안 클러스터 통신을 유지하려면 주기적으로 사용자 클러스터 인증 기관을 순환하고 보안 침해가 발생할 가능성이 있을 때마다 순환합니다.
서비스 계정 키 순환. 키 유출로 인한 보안 위험을 줄이려면 서비스 키를 정기적으로 순환하는 것이 좋습니다.
보안 모니터링
- Kubernetes 감사 로깅 사용. 감사 로깅은 관리자가 Google Distributed Cloud 환경에서 발생하는 이벤트를 보관, 쿼리, 처리하고 알릴 수 있는 방법을 제공합니다.
클러스터 보안 모니터링에 대한 자세한 내용은 Fleet 보안 상황 모니터링을 참조하세요.