説明
AKS にネットワークポリシーを適用するエンジンがないと、Kubernetes の NetworkPolicy で 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'
}
}
}