AKS API 서버 접근 범위 점검

공개 API 서버에 접근할 수 있는 관리 네트워크를 필요한 범위로 제한하세요.

설명

공개 AKS API 서버에 허용 IP 대역을 적용하지 않으면 불필요한 네트워크에서도 연결을 시도할 수 있습니다. 제어 플레인은 클러스터를 관리하는 핵심 인터페이스이므로 승인된 관리 경로로 접근을 제한해야 합니다. 네트워크 연결이 허용되어도 인증과 RBAC 권한은 별도로 필요합니다.

잠재적 영향

  • 관리 엔드포인트가 더 넓은 범위의 스캔과 접근 시도에 노출될 수 있습니다.
  • 탈취된 자격 증명이나 잘못된 권한 설정이 악용될 수 있는 경로가 늘어날 수 있습니다.

해결 방법

  • 공개 API 서버에는 apiServerAccessProfile.authorizedIPRanges로 실제 관리 클라이언트와 필요한 클러스터 송신 공인 IP 대역을 허용하세요. 변경 전에 운영·자동화 경로를 확인하세요.
  • 프라이빗 클러스터에는 이 기능을 적용하지 않으며 사설 연결 경로를 별도로 관리하세요. 변경 후 필요한 관리 접근은 되고 다른 출발지의 접근은 차단되는지 시험하세요.

예시

기존 API 형식의 설정 비교이며 Kubernetes 1.15.7은 현재 배포용 버전이 아닙니다. 실제 적용에는 지원되는 버전과 생략한 클러스터 설정이 필요합니다. 변경 후 문서용 CIDR은 실제 관리·송신 공인 주소 대역으로 바꾸세요.

변경 전

bicep
resource aksCluster 'Microsoft.ContainerService/managedClusters@2017-08-31' = {
  name: 'aksCluster'
  location: resourceGroup().location
  properties: {
    dnsPrefix: 'team-aks'
    kubernetesVersion: '1.15.7'
  }
}

허용 IP 대역을 지정하지 않습니다. 실제 클러스터의 공개·사설 모드도 확인해야 합니다.

변경 후

bicep
resource aksCluster 'Microsoft.ContainerService/managedClusters@2020-02-01' = {
  name: 'aksCluster'
  location: resourceGroup().location
  properties: {
    dnsPrefix: 'team-aks'
    kubernetesVersion: '1.15.7'
    apiServerAccessProfile: {
      authorizedIPRanges: [
        '203.0.113.10/32'
        '198.51.100.0/24'
      ]
    }
  }
}

공개 API 서버의 허용 대역을 명시합니다. 예시 주소를 그대로 사용하면 필요한 운영 접근이 차단될 수 있습니다.

참조