Compartilhar via


Restringir o acesso SSH a máquinas virtuais no AKS habilitado pelo Azure Arc (AKS no Azure Local 22H2)

Aplica-se ao: AKS no Azure Local 22H2, AKS no Windows Server

Este artigo descreve um novo recurso de segurança no AKS Arc que restringe o acesso do Protocolo Secure Shell (SSH) a VMs (máquinas virtuais) subjacentes. O recurso limita o acesso a apenas determinados endereços IP e restringe o conjunto de comandos que você pode executar por SSH.

Visão geral

Atualmente, qualquer pessoa com acesso de administrador ao AKS habilitado pelo Arc tem acesso a VMs por meio do SSH em qualquer computador. Em alguns cenários, talvez você queira limitar esse acesso, pois o acesso ilimitado dificulta a aprovação da conformidade.

Nota

Atualmente, essa funcionalidade está disponível apenas para uma nova instalação do AKS Arc e não para atualizações. Somente uma nova instalação do AKS Arc pode passar os IPs restritos e restringir os comandos executados por SSH.

Habilitar restrições de SSH

Para habilitar restrições de SSH, execute as seguintes etapas:

  1. Crie uma configuração SSH usando o cmdlet New-AksHciSHConfiguration, com os endereços IP de origem permitidos ou CIDR que você deseja permitir acesso às VMs:

    $ssh = New-AksHciSSHConfiguration -name sshConfig -cidr 172.16.0.0/24
    

    or

    $ssh = New-AksHciSSHConfiguration -name sshConfig -ipAddresses 4.4.4.4,8.8.8.8
    

    ou, para restringir o acesso SSH:

    $ssh = New-AksHciSSHConfiguration -name sshConfig –restrictSSHCommands 
    

    Nota

    Se as chaves SSH não forem passadas, serão reutilizadas as chaves SSH do cluster de gerenciamento.

  2. Adicione a configuração SSH executando o cmdlet Set-AksHciConfig, passando a configuração SSH que você criou na etapa anterior:

    Set-AksHciConfig -ssh $ssh
    

Validação: cluster de destino

Depois de criar o cluster, você pode validar manualmente se a restrição SSH foi adicionada ao tentar SSH em uma das VMs. Por exemplo:

ssh -i (get-MocConfig).sshPrivateKey clouduser@<vm-ipaddress>

Você pode executar essa etapa na lista de endereços IP/CIDRs especificados ou fora da lista de endereços IP. O SSH do intervalo de endereços IP/CIDR tem acesso. As tentativas de SSH de fora da lista não têm acesso.

Você também pode executar comandos diretamente do SSH. Esse comando retorna a data. Os comandos Sudo não funcionam:

ssh -i (get-mocconfig).sshPrivateKey clouduser@<ip> date 

Validação: coleta de logs

Esse comando retorna os logs de VM, como cloudinit, logs de lb etc.

Get-AksHciLogs –virtualMachineLogs

Considerações

  • A configuração de SSH individual para clusters de carga de trabalho agora está disponível. A configuração para clusters de carga de trabalho usa o cmdlet New-AksHciSSHConfiguration PowerShell.
  • A restrição é apenas para Linux. Os nós do Windows não têm essa restrição; você deve conseguir usar SSH com sucesso.
  • Você só pode definir a configuração durante a fase de instalação do AKS Arc.
  • Você deve executar uma reinstalação se definir incorretamente as configurações de SSH.
  • Não há suporte para atualizações.
  • Você pode adicionar CIDRs ou endereços IP aos quais o acesso SSH pode ser restrito.
  • A configuração SSH que você fornece é reutilizada para todos os clusters de destino. A configuração de SSH individual para clusters de carga de trabalho não está disponível.

Próximas etapas