설명
Master Authorized Networks는 GKE 제어 플레인의 IP 엔드포인트에 접근할 수 있는 소스 주소를 제한합니다. 관리에 필요하지 않은 네트워크까지 허용하면 API 서버에 대한 접근 시도가 늘어날 수 있습니다. DNS 엔드포인트의 IAM 접근 제어는 별도로 확인해야 합니다.
잠재적 영향
공개 엔드포인트와 연결 경로가 있으면 외부 클라이언트의 스캔과 인증 시도가 API 서버에 도달할 수 있습니다. 네트워크 연결만으로 인증이나 권한 검사가 생략되지는 않습니다.
해결 방법
IP 엔드포인트를 사용한다면 master_authorized_networks_config.enabled: yes를 설정하고 cidr_blocks를 승인된 관리 소스로 제한하세요. 내부 IP 엔드포인트에 대한 제한은 별도의 집행 설정을 확인하세요. 필요한 VPN·점프 호스트 경로를 먼저 확인하고 임시 예외를 제거하세요. IAM 및 RBAC 권한도 별도로 제한하세요.
예시
접근 제한 설정 발췌입니다. 192.0.2.0/24는 문서용 주소이므로 실제 관리 클라이언트의 승인된 소스 범위로 바꾸세요.
변경 전
yaml
- name: create a cluster
google.cloud.gcp_container_cluster:
name: my-cluster
location: us-central1-a
auth_kind: serviceaccount
master_authorized_networks_config:
cidr_blocks:
- cidr_block: 192.0.2.0/24
enabled: no
state: present
- name: create a third cluster
google.cloud.gcp_container_cluster:
name: my-third-cluster
location: us-central1-a
auth_kind: serviceaccount
state: present
첫 작업은 주소를 적었지만 기능을 비활성화합니다. 두 번째 작업의 설정 생략만으로 실제 엔드포인트의 공개 여부를 판단할 수는 없습니다.
변경 후
yaml
- name: create a cluster
google.cloud.gcp_container_cluster:
name: my-cluster
initial_node_count: 2
location: us-central1-a
auth_kind: serviceaccount
master_authorized_networks_config:
cidr_blocks:
- cidr_block: 192.0.2.0/24
enabled: yes
state: present
관리용 CIDR 허용 목록을 활성화합니다. 내부 IP 엔드포인트의 집행 설정과 필요한 운영 경로의 허용 여부는 별도로 확인하세요.