Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo mostra como usar intervalos de endereços IP autorizados do servidor de API para limitar quais endereços IP e CIDRs podem acessar pontos de extremidade do plano de controle para suas cargas de trabalho do AKS (Serviço de Kubernetes do Azure).
Pré-requisitos
- Azure CLI versão 2.0.76 ou posterior instalada e configurada. Verifique a versão usando o comando
az --version. Se você precisa instalar ou atualizar, consulte Instalar a CLI do Azure. - Para saber quais endereços IP incluir ao integrar seu cluster do AKS ao Azure DevOps, consulte endereços IP permitidos e URLs de domínio.
Dica
No portal do Azure, você pode usar o Azure Copilot para fazer alterações nos endereços IP que podem acessar o cluster. Para obter mais informações, consulte Trabalhar com clusters do AKS com eficiência usando o Azure Copilot.
Limitações e considerações
- Esse recurso só tem suporte no balanceador de carga de SKU Standard para clusters criados após outubro de 2019. Todos os clusters existentes no balanceador de carga de SKU Básico com o recurso habilitado devem continuar funcionando corretamente se a versão do Kubernetes e o plano de controle forem atualizados. No entanto, você não pode migrar esses clusters para o balanceador de carga de SKU Standard.
- Você não pode usar esse recurso com clusters privados.
- Ao usar esse recurso com clusters que usam IPs públicos de nó, os pools de nós que usam os IPs públicos de nó devem usar prefixos IP públicos. Você deve adicionar os prefixos IP públicos como intervalos autorizados.
- Você pode especificar até 200 intervalos de IP autorizados. Para ir além desse limite, considere usar a Integração VNet do Servidor de API, que dá suporte a até 2.000 intervalos de IP autorizados.
Visão geral de intervalos de IP autorizados do servidor de API
O servidor de API do Kubernetes expõe as APIs subjacentes do Kubernetes e fornece a interação para ferramentas de gerenciamento como o kubectl e o painel do Kubernetes. O AKS fornece um plano de controle de cluster de locatário único com um servidor de API dedicado. O servidor de API recebe um endereço IP público por padrão. Você pode controlar o acesso usando o controle de acesso baseado em função do Kubernetes (Kubernetes RBAC) ou o Azure RBAC.
Para proteger o acesso ao servidor do plano de controle AKS/API publicamente acessível, você pode habilitar e usar intervalos de IP autorizados. Esses intervalos de IP autorizados permitem que apenas os intervalos de endereços IP definidos se comuniquem com o servidor de API. Todas as solicitações feitas ao servidor de API a partir de um endereço IP que não faça parte desses intervalos de IP autorizados serão bloqueadas. A propagação das regras pode levar até dois minutos. Aguarde esse período ao testar a conexão.
Intervalos de IP recomendados para permitir
É recomendável incluir os seguintes intervalos de endereços IP na configuração de intervalos de IP autorizados do servidor de API:
- O endereço IP de saída do cluster (firewall, gateway NAT ou outro endereço, dependendo do seu tipo de saída).
- Qualquer intervalo que represente as redes das quais você administrará o cluster.
Criar um cluster do AKS com o recurso intervalos de IP autorizados do servidor de API habilitado
Observação
Quando você habilita intervalos de IP autorizados do servidor de API durante a criação do cluster, o IP público do servidor de API e o IP público de saída do balanceador de carga de SKU Standard são automaticamente permitidos por padrão, além de quaisquer intervalos especificados.
Caso especial - 0.0.0.0/32: esse é um valor especial que informa ao AKS para permitir que apenas o IP público de saída do balanceador de carga de SKU Standard acesse o servidor de API. O valor 0.0.0.0/32 atua como um espaço reservado que:
- Desabilita o comportamento padrão de permitir intervalos de IP de cliente extras.
- Restringe o acesso do servidor de API apenas ao IP de saída do próprio cluster.
- É útil para cenários em que você deseja que o cluster seja autogerenciado, mas bloqueie o acesso externo.
Ao criar um cluster com intervalos de IP autorizados do servidor de API habilitados, você fornece uma lista de intervalos de endereços IP públicos autorizados. Ao especificar um intervalo CIDR, você deve usar o endereço de rede (primeiro endereço IP no intervalo). Por exemplo, se você quiser permitir o intervalo de 137.117.106.88 a 137.117.106.95, você deve especificar 137.117.106.88/29.
Crie um cluster AKS com intervalos de IP autorizados do servidor de API habilitados usando o comando
az aks createcom o parâmetro--api-server-authorized-ip-ranges. O exemplo a seguir cria um cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup e permite que o intervalo73.140.245.0/24de endereços IP acesse o servidor de API:az aks create --resource-group myResourceGroup --name myAKSCluster --vm-set-type VirtualMachineScaleSets --load-balancer-sku standard --api-server-authorized-ip-ranges 73.140.245.0/24 --generate-ssh-keys
Crie um cluster AKS com intervalos de IP autorizados do servidor de API habilitados usando o cmdlet
New-AzAksClustercom o parâmetro-ApiServerAccessAuthorizedIpRange. O exemplo a seguir cria um cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup e permite que o intervalo73.140.245.0/24de endereços IP acesse o servidor de API:New-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster -NodeVmSetType VirtualMachineScaleSets -LoadBalancerSku Standard -ApiServerAccessAuthorizedIpRange '73.140.245.0/24' -GenerateSshKey
- Na página inicial do portal do Azure, selecione Criar um recurso>Contêineres>Serviço de Kubernetes do Azure (AKS).
- Defina as configurações de cluster conforme necessário.
- Na seção Rede em Acesso público, selecione Definir intervalos de IP autorizados.
- Para Especificar intervalos de IP, insira os intervalos de endereços IP que você deseja autorizar a acessar o servidor de API.
- Defina o restante das configurações do cluster conforme necessário.
- Quando estiver pronto, selecione Revisar + criar>Criar para criar o cluster.
Especificar IPs de saída para um balanceador de carga SKU padrão
Ao criar um cluster com intervalos de IP autorizados do servidor de API habilitados, você também pode especificar os endereços IP de saída ou prefixos para o cluster usando os parâmetros --load-balancer-outbound-ips ou --load-balancer-outbound-ip-prefixes. Todos os IPs fornecidos nos parâmetros são permitidos junto com os IPs no parâmetro --api-server-authorized-ip-ranges.
Crie um cluster AKS com intervalos de IP autorizados do servidor de API habilitados e especifique os endereços IP de saída para o balanceador de carga de SKU padrão usando o parâmetro
--load-balancer-outbound-ips. O exemplo a seguir cria um cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup, permite que o intervalo73.140.245.0/24de endereços IP acesse o servidor de API e especifica dois endereços IP de saída para o balanceador de carga de SKU Standard. Certifique-se de substituir os espaços reservados<public-ip-id-1>e<public-ip-id-2>pelos IDs de recurso reais dos seus endereços IP públicos.az aks create --resource-group myResourceGroup --name myAKSCluster --vm-set-type VirtualMachineScaleSets --load-balancer-sku standard --api-server-authorized-ip-ranges 73.140.245.0/24 --load-balancer-outbound-ips <public-ip-id-1>,<public-ip-id-2> --generate-ssh-keys
Permitir somente o IP público de saída do balanceador de carga do SKU Standard
Crie um cluster AKS com intervalos de IP autorizados do servidor de API habilitados e permita apenas o IP público de saída do balanceador de carga de SKU padrão usando o parâmetro
--api-server-authorized-ip-ranges. O exemplo a seguir cria um cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup com intervalos de IP autorizados do servidor de API habilitados e permite apenas o IP público de saída do balanceador de carga de SKU padrão:az aks create --resource-group myResourceGroup --name myAKSCluster --vm-set-type VirtualMachineScaleSets --load-balancer-sku standard --api-server-authorized-ip-ranges 0.0.0.0/32 --generate-ssh-keys
Crie um cluster AKS com intervalos de IP autorizados do servidor de API habilitados e permita apenas o IP público de saída do balanceador de carga de SKU padrão usando o parâmetro
-ApiServerAccessAuthorizedIpRange. O exemplo a seguir cria um cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup com intervalos de IP autorizados do servidor de API habilitados e permite apenas o IP público de saída do balanceador de carga de SKU padrão:New-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster -NodeVmSetType VirtualMachineScaleSets -LoadBalancerSku Standard -ApiServerAccessAuthorizedIpRange '0.0.0.0/32' -GenerateSshKey
- Na página inicial do portal do Azure, selecione Criar um recurso>Contêineres>Serviço de Kubernetes do Azure (AKS).
- Defina as configurações de cluster conforme necessário.
- Na seção Rede em Acesso público, selecione Definir intervalos de IP autorizados.
- Para especificar intervalos de IP, insira
0.0.0.0/32. Essa configuração permite apenas o IP público de saída do balanceador de carga de SKU Standard. - Defina o restante das configurações do cluster conforme necessário.
- Quando estiver pronto, selecione Revisar + criar>Criar para criar o cluster.
Atualizar os intervalos de IP autorizados do servidor de API em um cluster existente
Atualize os intervalos de IP autorizados do servidor de API de um cluster existente usando o comando
az aks updatecom o parâmetro--api-server-authorized-ip-ranges. O exemplo a seguir atualiza os intervalos de IP autorizados do servidor de API no cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup e atualiza o intervalo de endereços IP para73.140.245.0/24:az aks update --resource-group myResourceGroup --name myAKSCluster --api-server-authorized-ip-ranges 73.140.245.0/24
Permitir vários intervalos de endereços IP
Para permitir vários intervalos de endereços IP, você pode listar vários endereços IP, separados por vírgulas.
Atualize os intervalos de IP autorizados do servidor de API de um cluster existente para permitir vários intervalos de endereços IP usando o
az aks updatecomando com o--api-server-authorized-ip-rangesparâmetro. O exemplo a seguir atualiza os intervalos de IP autorizados do servidor de API no cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup e permite vários intervalos de endereços IP:az aks update --resource-group myResourceGroup --name myAKSCluster --api-server-authorized-ip-ranges 73.140.245.0/24,193.168.1.0/24,194.168.1.0/24
Atualize os intervalos de IP autorizados do servidor de API de um cluster existente usando o cmdlet
Set-AzAksClustercom o parâmetro-ApiServerAccessAuthorizedIpRange. O exemplo a seguir atualiza os intervalos de IP autorizados do servidor de API no cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup e atualiza o intervalo de endereços IP para73.140.245.0/24:Set-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster -ApiServerAccessAuthorizedIpRange '73.140.245.0/24'
- Navegue até o portal do Azure e selecione o cluster AKS que você deseja atualizar.
- No menu de serviço, em Configurações, selecione Rede.
- Em Configurações de recurso, selecione Gerenciar.
- Na página Intervalos de IP autorizados atualize os Intervalos de IP autorizados conforme necessário.
- Quando terminar, selecione Salvar.
Desabilitar intervalos de IP autorizados do servidor de API em um cluster existente
Desabilite os intervalos de IP autorizados do servidor de API usando o
az aks updatecomando e especifique um intervalo""vazio para o--api-server-authorized-ip-rangesparâmetro.az aks update --resource-group myResourceGroup --name myAKSCluster --api-server-authorized-ip-ranges ""
Desabilite os intervalos de IP autorizados do servidor de API usando o
Set-AzAksClustercmdlet e especifique um intervalo''vazio para o-ApiServerAccessAuthorizedIpRangeparâmetro.Set-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster -ApiServerAccessAuthorizedIpRange ''
- Navegue até o portal do Azure e selecione o cluster AKS que você deseja atualizar.
- No menu de serviço, em Configurações, selecione Rede.
- Em Configurações de recurso, selecione Gerenciar.
- Na página Intervalos de IP autorizados desmarque a caixa de seleção Definir intervalos de IP autorizados caixa.
- Clique em Salvar.
Localizar os intervalos de IP autorizados existentes do servidor de API
Localize os intervalos de IP autorizados do servidor de API existentes usando o
az aks showcomando com o--queryparâmetro definido comoapiServerAccessProfile.authorizedIpRanges.az aks show --resource-group myResourceGroup --name myAKSCluster --query apiServerAccessProfile.authorizedIpRangesExemplo de saída:
[ "73.140.245.0/24" ]
Localize os intervalos de IP autorizados do servidor de API existentes usando o
Get-AzAksClustercmdlet.Get-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster | Select-Object -ExpandProperty ApiServerAccessProfileExemplo de saída:
AuthorizedIPRanges: {73.140.245.0/24} ...
Navegue até o portal do Azure e selecione seu cluster do AKS.
No menu de serviço, em Configurações, selecione Rede. Os intervalos de IP autorizados do servidor de API existentes são listados nas configurações de recurso.
Acessar o servidor de API de seu computador de desenvolvimento, ferramentas ou automação
Você precisa adicionar seus computadores de desenvolvimento, ferramentas ou endereços IP de automação à lista de intervalos de IP aprovados no cluster do AKS para acessar o servidor de API com eles.
Outra opção é configurar um Jumpbox com as ferramentas necessárias dentro de uma sub-rede separada na rede virtual do firewall. Essa opção pressupõe que seu ambiente tenha um firewall com a respectiva rede e que você adicionou os IPs de firewall às faixas autorizadas. Da mesma forma, se você forçar o túnel da sub-rede do AKS para a sub-rede do firewall, também será possível colocar o jumpbox na sub-rede do cluster.
Observação
O exemplo a seguir adiciona outro endereço IP aos intervalos aprovados. Ele ainda inclui o endereço IP existente. Se você não incluir o endereço IP existente, esse comando o substituirá pelo novo em vez de adicioná-lo aos intervalos autorizados.
Recupere o endereço IP e defina-o como uma variável de ambiente usando o seguinte comando:
# Retrieve your IP address CURRENT_IP=$(dig +short "myip.opendns.com" "@resolver1.opendns.com")Adicione seu endereço IP à lista aprovada usando o
az aks updatecomando com o--api-server-authorized-ip-rangesparâmetro. O exemplo a seguir adiciona seu endereço IP atual aos intervalos de IP autorizados do servidor de API existentes no cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup:az aks update --resource-group myResourceGroup --name myAKSCluster --api-server-authorized-ip-ranges $CURRENT_IP/24,73.140.245.0/24
Recupere o endereço IP e defina-o como uma variável de ambiente usando o seguinte comando:
# Retrieve your IP address CURRENT_IP=$(dig +short "myip.opendns.com" "@resolver1.opendns.com")Adicione seu endereço IP à lista aprovada usando o
Set-AzAksClustercmdlet com o-ApiServerAccessAuthorizedIpRangeparâmetro. O exemplo a seguir adiciona seu endereço IP atual aos intervalos de IP autorizados do servidor de API existentes no cluster chamado myAKSCluster no grupo de recursos chamado myResourceGroup:Set-AzAksCluster -ResourceGroupName myResourceGroup -Name myAKSCluster -ApiServerAccessAuthorizedIpRange '$CURRENT_IP/24,73.140.245.0/24'
Outra opção é usar o seguinte comando em sistemas Windows para obter o endereço IPv4 público:
Invoke-RestMethod http://ipinfo.io/json | Select -exp ip
Você também pode seguir as etapas em Localizar seu endereço IP ou pesquisar no que é meu endereço IP? Em um navegador da Internet.
Conteúdo relacionado
Para saber mais sobre segurança no AKS, confira os seguintes artigos: