AKS 네트워크 정책 미구성

AKS에서 네트워크 정책을 적용해 필요한 Pod 통신만 허용하세요.

설명

AKS에서 네트워크 정책을 적용할 엔진이 없으면 Kubernetes NetworkPolicy로 Pod 간 통신을 제한할 수 없습니다. 기본적으로 Pod 간 통신은 허용됩니다.

잠재적 영향

불필요한 Pod 간 통신이 열려 있으면 침해된 워크로드에서 다른 서비스로 접근하기 쉬워질 수 있습니다.

해결 방법

클러스터 네트워크와 호환되는 정책 엔진을 활성화하고, 필요한 수신·송신 통신을 허용하는 NetworkPolicy를 배포하세요. 정상 통신과 차단 결과를 확인하세요.

예시

예시는 Linux 노드에서 Azure NPM을 구성하는 부분입니다. 지원되는 Kubernetes 버전과 노드 크기를 지정하세요. 엔진 활성화 후에도 실제 정책 배포가 필요하며, 새 클러스터는 Microsoft가 권장하는 Cilium도 검토하세요.

변경 전

bicep
param kubernetesVersion string
param nodeVmSize string

resource aksCluster1 'Microsoft.ContainerService/managedClusters@2020-02-01' = {
  name: 'aksCluster1'
  location: resourceGroup().location
  properties: {
    kubernetesVersion: kubernetesVersion
    dnsPrefix: 'dnsprefix'
    agentPoolProfiles: [
      {
        name: 'agentpool'
        count: 2
        vmSize: nodeVmSize
        osType: 'Linux'
      }
    ]
  }
}

변경 후

bicep
param kubernetesVersion string
param nodeVmSize string

resource aksCluster1 'Microsoft.ContainerService/managedClusters@2020-02-01' = {
  name: 'aksCluster1'
  location: resourceGroup().location
  properties: {
    kubernetesVersion: kubernetesVersion
    dnsPrefix: 'dnsprefix'
    agentPoolProfiles: [
      {
        name: 'agentpool'
        count: 2
        vmSize: nodeVmSize
        osType: 'Linux'
      }
    ]
    networkProfile: {
      networkPlugin: 'azure'
      networkPolicy: 'azure'
    }
  }
}

참조