Habilitar o acesso just-in-time em VMs

Você pode usar o acesso just-in-time (JIT) do Microsoft Defender for Cloud para proteger suas máquinas virtuais (VMs) do Azure contra acesso não autorizado à rede. Muitas vezes, os firewalls contêm regras de permissão que deixam suas VMs vulneráveis a ataques. O JIT permite que você permita o acesso às suas VMs somente quando o acesso for necessário, nas portas necessárias e pelo período de tempo necessário.

Saiba mais sobre como o JIT funciona e as permissões necessárias para configurar e usar o JIT.

Neste artigo, você aprenderá a incluir o JIT em seu programa de segurança, incluindo como:

  • Habilite o JIT em suas VMs a partir do portal do Azure ou programaticamente
  • Solicitar acesso a uma VM que tenha o JIT habilitado no portal do Azure ou programaticamente
  • Audite a atividade JIT para garantir que suas VMs estejam protegidas adequadamente

Disponibilidade

Aspeto Detalhes
Estado de lançamento: Disponibilidade geral (GA)
VMs suportadas: VMs implantadas por meio do Azure Resource Manager
VMs implantadas com modelos de implantação clássicos
VMs protegidas por Firewalls do Azure na mesma VNET que a VM
VMs protegidas por Firewalls do Azure controladas pelo Azure Firewall Manager
Instâncias do AWS EC2 (visualização)
Funções e permissões necessárias: Reader, SecurityReader ou uma função personalizada pode exibir o status e os parâmetros do JIT.
Para criar uma função menos privilegiada para usuários que só precisam solicitar acesso JIT a uma VM, use o script Set-JitLeastPrivilegedRole.
Nuvens: Nuvens comerciais
Nacional (Azure Government, Microsoft Azure operado pela 21Vianet)
Contas da AWS conectadas (visualização)

Pré-requisitos

  • O JIT requer que o Microsoft Defender for Servers Plan 2 esteja habilitado na assinatura.

  • As funções Reader e SecurityReader podem visualizar o status e os parâmetros do JIT.

  • Se quiser criar funções personalizadas que funcionem com JIT, você precisará dos detalhes da tabela a seguir:

    Para permitir que um usuário: Permissões para definir
    Configurar ou editar uma política JIT para uma VM Atribua estas ações à função:
    • No escopo de uma assinatura (ou grupo de recursos ao usar somente API ou PowerShell) associada à VM:
      Microsoft.Security/locations/jitNetworkAccessPolicies/write
    • No escopo de uma assinatura (ou grupo de recursos ao usar somente API ou PowerShell) de VM:
      Microsoft.Compute/virtualMachines/write
    Solicitar acesso JIT a uma VM Atribua estas ações ao usuário:
    • Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action
    • Microsoft.Security/locations/jitNetworkAccessPolicies/*/read
    • Microsoft.Compute/virtualMachines/read
    • Microsoft.Network/networkInterfaces/*/read
    • Microsoft.Network/publicIPAddresses/read
    Leia as políticas do JIT Atribua estas ações ao usuário:
    • Microsoft.Security/locations/jitNetworkAccessPolicies/read
    • Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action
    • Microsoft.Security/policies/read
    • Microsoft.Security/pricings/read
    • Microsoft.Compute/virtualMachines/read
    • Microsoft.Network/*/read

    Nota

    Apenas as permissões são relevantes para a Microsoft.Security AWS.

  • Para configurar o JIT em sua VM do Amazon Web Service (AWS), você precisa conectar sua conta da AWS ao Microsoft Defender for Cloud.

    Gorjeta

    Para criar uma função menos privilegiada para usuários que precisam solicitar acesso JIT a uma VM e não executar outras operações JIT, use o script Set-JitLeastPrivilegedRole das páginas da comunidade do Defender for Cloud GitHub.

    Nota

    Para criar com êxito uma política JIT personalizada, o nome da política, juntamente com o nome da VM de destino, não deve exceder um total de 56 caracteres.

Trabalhar com acesso a VM JIT usando o Microsoft Defender for Cloud

Você pode usar o Defender for Cloud ou habilitar programaticamente o acesso à VM JIT com suas próprias opções personalizadas, ou pode habilitar o JIT com parâmetros padrão codificados de máquinas virtuais do Azure.

O acesso a VMs just-in-time mostra suas VMs agrupadas em:

  • Configurado - VMs configuradas para suportar acesso a VM just-in-time e mostra:
    • o número de pedidos de EIC aprovados nos últimos sete dias;
    • a data e hora do último acesso
    • os detalhes da conexão configurados
    • o último utilizador
  • Não configurado - VMs sem JIT habilitado, mas que podem suportar JIT. Recomendamos que você habilite o JIT para essas VMs.
  • Sem suporte - VMs que não suportam JIT porque:
    • NSG (grupo de segurança de rede) ausente ou Firewall do Azure - o JIT requer a configuração de um NSG ou uma configuração de Firewall (ou ambas)
    • VM clássica - O JIT dá suporte a VMs implantadas por meio do Azure Resource Manager. Saiba mais sobre os modelos de implantação clássicos vs Azure Resource Manager.
    • Outros - A solução JIT está desativada na política de segurança da subscrição ou do grupo de recursos.

Habilite o JIT em suas VMs do Microsoft Defender for Cloud

Screenshot showing configuring JIT VM access in Microsoft Defender for Cloud.

No Defender for Cloud, você pode habilitar e configurar o acesso à VM JIT.

  1. Abra as proteções de carga de trabalho e, nas proteções avançadas, selecione Acesso à VM just-in-time.

  2. Na guia Máquinas virtuais não configuradas, marque as VMs a serem protegidas com JIT e selecione Habilitar JIT em VMs.

    A página de acesso à VM JIT é aberta listando as portas que o Defender for Cloud recomenda proteger:

    • 22 - SSH
    • 3389 - PDR
    • 5985 - WinRM
    • 5986 - WinRM

    Para personalizar o acesso JIT:

    1. Selecione Adicionar.

    2. Selecione uma das portas na lista para editá-la ou insira outras portas. Para cada porta, você pode definir:

      • Protocolo - O protocolo que é permitido nesta porta quando uma solicitação é aprovada
      • IPs de origem permitidos - Os intervalos de IP permitidos nesta porta quando uma solicitação é aprovada
      • Tempo máximo de solicitação - A janela de tempo máxima durante a qual uma porta específica pode ser aberta
    3. Selecione OK.

  3. Para salvar a configuração da porta, selecione Salvar.

Editar a configuração JIT em uma VM habilitada para JIT usando o Defender for Cloud

Você pode modificar a configuração just-in-time de uma VM adicionando e configurando uma nova porta para proteger essa VM ou alterando qualquer outra configuração relacionada a uma porta já protegida.

Para editar as regras JIT existentes para uma VM:

  1. Abra as proteções de carga de trabalho e, nas proteções avançadas, selecione Acesso à VM just-in-time.

  2. Na guia Máquinas virtuais configuradas, clique com o botão direito do mouse em uma VM e selecione Editar.

  3. Na configuração de acesso à VM JIT, você pode editar a lista de portas ou selecionar Adicionar uma nova porta personalizada.

  4. Quando terminar de editar as portas, selecione Guardar.

Solicitar acesso a uma VM habilitada para JIT do Microsoft Defender for Cloud

Quando uma VM tem um JIT habilitado, você precisa solicitar acesso para se conectar a ele. Você pode solicitar acesso de qualquer uma das maneiras suportadas, independentemente de como você habilitou o JIT.

  1. Na página Acesso à VM just-in-time, selecione a guia Configurado.

  2. Selecione as VMs que você deseja acessar:

    • O ícone na coluna Detalhes da Conexão indica se o JIT está habilitado no security group ou firewall da rede. Se estiver ativado em ambos, apenas o ícone do firewall será exibido.

    • A coluna Detalhes da Conexão mostra o usuário e as portas que podem acessar a VM.

  3. Selecione Solicitar acesso. A janela Solicitar acesso é aberta.

  4. Em Solicitar acesso, selecione as portas que deseja abrir para cada VM, os endereços IP de origem nos quais deseja abrir a porta e a janela de tempo para abrir as portas.

  5. Selecione Abrir portas.

    Nota

    Se um usuário que está solicitando acesso estiver atrás de um proxy, você poderá inserir o intervalo de endereços IP do proxy.

Outras maneiras de trabalhar com acesso a VM JIT

Máquinas virtuais do Azure

Habilite o JIT em suas VMs a partir de máquinas virtuais do Azure

Você pode habilitar o JIT em uma VM nas páginas de máquinas virtuais do Azure do portal do Azure.

Gorjeta

Se uma VM já tiver o JIT habilitado, a página de configuração da VM mostrará que o JIT está habilitado. Você pode usar o link para abrir a página de acesso à VM JIT no Defender for Cloud para visualizar e alterar as configurações.

  1. No portal do Azure, procure e selecione Máquinas virtuais.

  2. Selecione a máquina virtual que deseja proteger com JIT.

  3. No menu, selecione Configuração.

  4. Em Acesso just-in-time, selecione Ativar just-in-time.

    Por padrão, o acesso just-in-time para a VM usa estas configurações:

    • Máquinas Windows
      • Porta RDP: 3389
      • Acesso máximo permitido: Três horas
      • Endereços IP de origem permitidos: Qualquer
    • Máquinas Linux
      • Porta SSH: 22
      • Acesso máximo permitido: Três horas
      • Endereços IP de origem permitidos: Qualquer
  5. Para editar qualquer um desses valores ou adicionar mais portas à sua configuração JIT, use a página just-in-time do Microsoft Defender for Cloud:

    1. No menu do Defender for Cloud, selecione Acesso à VM just-in-time.

    2. Na guia Configurado, clique com o botão direito do mouse na VM à qual você deseja adicionar uma porta e selecione Editar.

      Editing a JIT VM access configuration in Microsoft Defender for Cloud.

    3. Em Configuração de acesso à VM JIT, você pode editar as configurações existentes de uma porta já protegida ou adicionar uma nova porta personalizada.

    4. Quando terminar de editar as portas, selecione Salvar.

Solicitar acesso a uma VM habilitada para JIT na página de conexão da máquina virtual do Azure

Quando uma VM tem um JIT habilitado, você precisa solicitar acesso para se conectar a ele. Você pode solicitar acesso de qualquer uma das maneiras suportadas, independentemente de como você habilitou o JIT.

Screenshot showing jit just-in-time request.

Para solicitar acesso de máquinas virtuais do Azure:

  1. No portal do Azure, abra as páginas de máquinas virtuais.

  2. Selecione a VM à qual você deseja se conectar e abra a página Conectar .

    O Azure verifica se o JIT está habilitado nessa VM.

    • Se o JIT não estiver habilitado para a VM, você será solicitado a habilitá-lo.

    • Se o JIT estiver habilitado, selecione Solicitar acesso para passar uma solicitação de acesso com o IP solicitante, o intervalo de tempo e as portas que foram configuradas para essa VM.

Nota

Depois que uma solicitação é aprovada para uma VM protegida pelo Firewall do Azure, o Defender for Cloud fornece ao usuário os detalhes de conexão adequados (o mapeamento de porta da tabela DNAT) a ser usado para se conectar à VM.

PowerShell

Ativar o JIT nas VMs com o PowerShell

Para habilitar o acesso just-in-time à VM a partir do PowerShell, use o cmdlet Set-AzJitNetworkAccessPolicyoficial do Microsoft Defender for Cloud PowerShell .

Exemplo - Habilite o acesso just-in-time à VM em uma VM específica com as seguintes regras:

  • Feche as portas 22 e 3389
  • Defina uma janela de tempo máxima de 3 horas para cada um para que possam ser abertos por solicitação aprovada
  • Permitir que o usuário que está solicitando acesso controle os endereços IP de origem
  • Permitir que o usuário que está solicitando acesso estabeleça uma sessão bem-sucedida mediante uma solicitação de acesso just-in-time aprovada

Os seguintes comandos do PowerShell criam essa configuração JIT:

  1. Atribua uma variável que contenha as regras de acesso de VM just-in-time para uma VM:

    $JitPolicy = (@{
        id="/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Compute/virtualMachines/VMNAME";
        ports=(@{
             number=22;
             protocol="*";
             allowedSourceAddressPrefix=@("*");
             maxRequestAccessDuration="PT3H"},
             @{
             number=3389;
             protocol="*";
             allowedSourceAddressPrefix=@("*");
             maxRequestAccessDuration="PT3H"})})
    
  2. Insira as regras de acesso de VM just-in-time da VM em uma matriz:

    $JitPolicyArr=@($JitPolicy)
    
  3. Configure as regras de acesso à VM just-in-time na VM selecionada:

    Set-AzJitNetworkAccessPolicy -Kind "Basic" -Location "LOCATION" -Name "default" -ResourceGroupName "RESOURCEGROUP" -VirtualMachine $JitPolicyArr
    

    Use o parâmetro -Name para especificar uma VM. Por exemplo, para estabelecer a configuração JIT para duas VMs diferentes, VM1 e VM2, use: Set-AzJitNetworkAccessPolicy -Name VM1 e Set-AzJitNetworkAccessPolicy -Name VM2.

Pedir acesso a uma VM com o JIT ativado com o PowerShell

No exemplo a seguir, você pode ver uma solicitação de acesso de VM just-in-time a uma VM específica para a porta 22, para um endereço IP específico e para um período de tempo específico:

Execute os seguintes comandos no PowerShell:

  1. Configure as propriedades de acesso de solicitação de VM:

    $JitPolicyVm1 = (@{
        id="/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Compute/virtualMachines/VMNAME";
        ports=(@{
           number=22;
           endTimeUtc="2020-07-15T17:00:00.3658798Z";
           allowedSourceAddressPrefix=@("IPV4ADDRESS")})})
    
  2. Insira os parâmetros de solicitação de acesso da VM em uma matriz:

    $JitPolicyArr=@($JitPolicyVm1)
    
  3. Envie o acesso à solicitação (use o ID do recurso da etapa 1)

    Start-AzJitNetworkAccessPolicy -ResourceId "/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Security/locations/LOCATION/jitNetworkAccessPolicies/default" -VirtualMachine $JitPolicyArr
    

Saiba mais na documentação do cmdlet do PowerShell.

API REST

Habilite o JIT em suas VMs usando a API REST

O recurso de acesso à VM just-in-time pode ser usado por meio da API do Microsoft Defender for Cloud. Use essa API para obter informações sobre VMs configuradas, adicionar novas, solicitar acesso a uma VM e muito mais.

Saiba mais em Políticas de acesso à rede JIT.

Solicitar acesso a uma VM habilitada para JIT usando a API REST

O recurso de acesso à VM just-in-time pode ser usado por meio da API do Microsoft Defender for Cloud. Use essa API para obter informações sobre VMs configuradas, adicionar novas, solicitar acesso a uma VM e muito mais.

Saiba mais em Políticas de acesso à rede JIT.

Auditar a atividade de acesso JIT no Defender for Cloud

Você pode obter informações sobre as atividades da VM usando a pesquisa de log. Para visualizar os logs:

  1. Em Acesso à VM just-in-time, selecione a guia Configurado .

  2. Para a VM que você deseja auditar, abra o menu de reticências no final da linha.

  3. Selecione Registro de atividades no menu.

    Select just-in-time JIT activity log.

    O log de atividades fornece uma exibição filtrada de operações anteriores para essa VM, juntamente com hora, data e assinatura.

  4. Para baixar as informações de log, selecione Baixar como CSV.

Próximos passos

Neste artigo, você aprendeu como configurar e usar o acesso de VM just-in-time. Para saber por que você deve usar o JIT, leia o artigo que explica as ameaças contra as quais o JIT se defende: