Abilitare l'accesso just-in-time nelle macchine virtuali

È possibile usare Microsoft Defender per l'accesso JIT (Just-In-Time) di Cloud per proteggere le macchine virtuali di Azure dall'accesso alla rete non autorizzata. Molte volte i firewall contengono regole che lasciano le macchine virtuali vulnerabili agli attacchi. JIT consente l'accesso alle macchine virtuali solo quando è necessario l'accesso, sulle porte necessarie e per il periodo di tempo necessario.

Altre informazioni sul funzionamento di JIT e sulle autorizzazioni necessarie per configurare e usare JIT.

In questo articolo viene illustrato come includere JIT nel programma di sicurezza, incluse le procedure seguenti:

  • Abilitare JIT nelle macchine virtuali dal portale di Azure o a livello di codice
  • Richiedere l'accesso a una macchina virtuale con JIT abilitata dalla portale di Azure o a livello di codice
  • Controllare l'attività JIT per assicurarsi che le macchine virtuali siano protette in modo appropriato

Disponibilità

Aspetto Dettagli
Stato della versione: Disponibilità generale (GA)
Macchine virtuali supportate: Macchine virtuali distribuite tramite Azure Resource Manager
Macchine virtuali distribuite con modelli di distribuzione classici
Macchine virtuali protette da firewall di Azure nella stessa rete virtuale della macchina virtuale
Macchine virtuali protette da Firewall di Azure controllate da Firewall di Azure Manager
Istanze DI AWS EC2 (anteprima)
Autorizzazioni e ruoli obbligatori: Lettore, SecurityReader o un ruolo personalizzato può visualizzare lo stato e i parametri JIT.
Per creare un ruolo con privilegi minimi per gli utenti che devono richiedere solo l'accesso JIT a una macchina virtuale, usare lo script Set-JitLeastPrivilegedRole.
Cloud: Cloud commerciali
Nazionale (Azure per enti pubblici, Microsoft Azure gestito da 21Vianet)
Account AWS connessi (anteprima)

Prerequisiti

  • JIT richiede Microsoft Defender per il piano 2 dei server da abilitare nella sottoscrizione.

  • I ruoli Lettore e SecurityReader possono visualizzare sia lo stato JIT che i parametri.

  • Se si desidera creare ruoli personalizzati che funzionano con JIT, sono necessari i dettagli della tabella seguente:

    Per abilitare un utente a: Autorizzazioni per impostare
    Configurare o modificare un criterio JIT per una macchina virtuale Assegnare queste azioni al ruolo:
    • Nell'ambito di una sottoscrizione o di un gruppo di risorse associato alla macchina virtuale:
      Microsoft.Security/locations/jitNetworkAccessPolicies/write
    • Nell'ambito di una sottoscrizione o di un gruppo di risorse della macchina virtuale:
      Microsoft.Compute/virtualMachines/write
    Richiedere l'accesso JIT a una macchina virtuale Assegnare queste azioni all'utente:
    • Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action
    • Microsoft.Security/locations/jitNetworkAccessPolicies/*/read
    • Microsoft.Compute/virtualMachines/read
    • Microsoft.Network/networkInterfaces/*/read
    • Microsoft.Network/publicIPAddresses/read
    Leggere i criteri JIT Assegnare queste azioni all'utente:
    • 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

    Solo le Microsoft.Security autorizzazioni sono rilevanti per AWS.

  • Per configurare JIT nella macchina virtuale Amazon Web Service (AWS), è necessario connettere l'account AWS a Microsoft Defender for Cloud.

    Suggerimento

    Per creare un ruolo con privilegi minimi per gli utenti che devono richiedere l'accesso JIT a una macchina virtuale e non eseguire altre operazioni JIT, usare lo script Set-JitLeastPrivilegedRole dalle pagine della community Defender for Cloud GitHub.

Nota

Per creare correttamente un criterio JIT personalizzato, il nome del criterio, insieme al nome della macchina virtuale di destinazione, non deve superare un totale di 56 caratteri.

Usare l'accesso alla macchina virtuale JIT usando Microsoft Defender per cloud

È possibile usare Defender per Cloud oppure abilitare a livello di codice l'accesso alla macchina virtuale JIT con le proprie opzioni personalizzate oppure è possibile abilitare JIT con parametri predefiniti hardcoded dalle macchine virtuali di Azure.

L'accesso alle macchine virtuali just-in-time mostra le macchine virtuali raggruppate in:

  • Configurato : le macchine virtuali configurate per supportare l'accesso alla macchina virtuale just-in-time e visualizza:
    • numero di richieste JIT approvate negli ultimi sette giorni
    • data e ora dell'ultimo accesso
    • i dettagli della connessione configurati
    • ultimo utente
  • Non configurato : le macchine virtuali senza JIT abilitate, ma che possono supportare JIT. È consigliabile abilitare JIT per queste macchine virtuali.
  • Non supportato : le macchine virtuali che non supportano JIT perché:
    • Gruppo di sicurezza di rete mancante (NSG) o Firewall di Azure : JIT richiede che un gruppo di sicurezza di rete sia configurato o una configurazione del firewall (o entrambi)
    • Macchina virtuale classica: JIT supporta macchine virtuali distribuite tramite Azure Resource Manager. Altre informazioni sui modelli di distribuzione classici e di Azure Resource Manager.
    • Altro: la soluzione JIT è disabilitata nei criteri di sicurezza della sottoscrizione o del gruppo di risorse.

Abilitare JIT nelle macchine virtuali da Microsoft Defender per cloud

Screenshot che mostra la configurazione dell'accesso alla macchina virtuale JIT in Microsoft Defender per Cloud.

Da Defender for Cloud è possibile abilitare e configurare l'accesso alla macchina virtuale JIT.

  1. Aprire le protezioni del carico di lavoro e, nelle protezioni avanzate, selezionare Accesso alle macchine virtuali just-in-time.

  2. Nella scheda Macchine virtuali non configurate contrassegnare le macchine virtuali da proteggere con JIT e selezionare Abilita JIT nelle macchine virtuali.

    La pagina di accesso alla macchina virtuale JIT apre l'elenco delle porte consigliate da Defender per Cloud:

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

    Per personalizzare l'accesso JIT:

    1. Selezionare Aggiungi.

    2. Selezionare una delle porte nell'elenco per modificarla o immettere altre porte. Per ogni porta è possibile impostare:

      • Protocollo - Protocollo consentito su questa porta quando una richiesta viene approvata
      • INDIRIZZI IP di origine consentiti: gli intervalli IP consentiti in questa porta quando una richiesta viene approvata
      • Tempo massimo richiesta- Intervallo massimo di tempo durante il quale è possibile aprire una porta specifica
    3. Selezionare OK.

  3. Per salvare la configurazione della porta, selezionare Salva.

Modificare la configurazione JIT in una macchina virtuale abilitata per JIT usando Defender for Cloud

È possibile modificare la configurazione just-in-time di una macchina virtuale aggiungendo e configurando una nuova porta da proteggere per tale macchina virtuale oppure modificando qualsiasi altra impostazione correlata a una porta già protetta.

Per modificare le regole JIT esistenti per una macchina virtuale:

  1. Aprire le protezioni del carico di lavoro e, nelle protezioni avanzate, selezionare Accesso alle macchine virtuali just-in-time.

  2. Nella scheda Macchine virtuali configurate fare clic con il pulsante destro del mouse su una macchina virtuale e scegliere Modifica.

  3. Nella configurazione di accesso alla macchina virtuale JIT è possibile modificare l'elenco di porte o selezionare Aggiungi una nuova porta personalizzata.

  4. Al termine della modifica delle porte, selezionare Salva.

Richiedere l'accesso a una macchina virtuale abilitata per JIT da Microsoft Defender per cloud

Quando una macchina virtuale ha un JIT abilitato, è necessario richiedere l'accesso per connettersi. È possibile richiedere l'accesso in uno dei modi supportati, indipendentemente dal modo in cui è stato abilitato JIT.

  1. Nella pagina di accesso alla macchina virtuale JUST-in-time selezionare la scheda Configurata .

  2. Selezionare le macchine virtuali a cui si vuole accedere:

    • L'icona nella colonna Dettagli connessione indica se JIT è abilitato nel gruppo di sicurezza di rete o nel firewall. Se è abilitata in entrambi i casi, viene visualizzata solo l'icona del firewall.

    • La colonna Dettagli connessione mostra l'utente e le porte che possono accedere alla macchina virtuale.

  3. Selezionare Richiedi accesso. Verrà visualizzata la finestra Richiedi accesso .

  4. In Richiedi accesso selezionare le porte da aprire per ogni macchina virtuale, gli indirizzi IP di origine su cui si vuole aprire la porta e l'intervallo di tempo per aprire le porte.

  5. Selezionare Open ports (Apri porte).

    Nota

    Se un utente che richiede l'accesso è protetto da un proxy, è possibile immettere l'intervallo di indirizzi IP del proxy.

Altri modi per usare l'accesso JIT alle macchine virtuali

Macchine virtuali di Azure

Abilitare JIT nelle macchine virtuali da macchine virtuali di Azure

È possibile abilitare JIT in una macchina virtuale dalle pagine delle macchine virtuali di Azure del portale di Azure.

Suggerimento

Se una macchina virtuale ha già abilitato JIT, la pagina di configurazione della macchina virtuale mostra che JIT è abilitato. È possibile usare il collegamento per aprire la pagina di accesso alla macchina virtuale JIT in Defender for Cloud per visualizzare e modificare le impostazioni.

  1. Nella portale di Azure cercare e selezionare Macchine virtuali.

  2. Selezionare la macchina virtuale da proteggere con JIT.

  3. Nel menu selezionare Configurazione.

  4. In Accesso JUST-in-time selezionare Abilita JUST-in-time.

    Per impostazione predefinita, l'accesso JITE per la macchina virtuale usa queste impostazioni:

    • Computer Windows
      • Porta RDP: 3389
      • Accesso massimo consentito: tre ore
      • Indirizzi IP di origine consentiti: qualsiasi
    • Computer Linux
      • Porta SSH: 22
      • Accesso massimo consentito: tre ore
      • Indirizzi IP di origine consentiti: qualsiasi
  5. Per modificare uno di questi valori o aggiungere altre porte alla configurazione JIT, usare Microsoft Defender per la pagina JUST-in-time di Cloud:

    1. Dal menu di Defender for Cloud selezionare Accesso JUST-in-time alle macchine virtuali.

    2. Nella scheda Configurato fare clic con il pulsante destro del mouse sulla macchina virtuale a cui si vuole aggiungere una porta e scegliere Modifica.

      Modifica di una configurazione di accesso JIT alla macchina virtuale in Microsoft Defender for Cloud.

    3. In Configurazione dell'accesso JIT alla VM è possibile modificare le impostazioni esistenti di una porta già protetta o aggiungere una nuova porta personalizzata.

    4. Al termine della modifica delle porte, selezionare Salva.

Richiedere l'accesso a una macchina virtuale abilitata per JIT dalla pagina di connessione della macchina virtuale di Azure

Quando una macchina virtuale ha un JIT abilitato, è necessario richiedere l'accesso per connettersi. È possibile richiedere l'accesso in uno dei modi supportati, indipendentemente dalla modalità di abilitazione di JIT.

Screenshot che mostra la richiesta JIT JIT.

Per richiedere l'accesso dalle macchine virtuali di Azure:

  1. Nella portale di Azure aprire le pagine delle macchine virtuali.

  2. Selezionare la macchina virtuale a cui connettersi e aprire la pagina Connetti .

    Azure verifica se JIT è abilitato nella macchina virtuale.

    • Se JIT non è abilitato per la macchina virtuale, viene richiesto di abilitarlo.

    • Se JIT è abilitato, selezionare Richiedi accesso per passare una richiesta di accesso con l'indirizzo IP, l'intervallo di tempo e le porte richieste configurate per la macchina virtuale.

Nota

Dopo l'approvazione di una richiesta per una macchina virtuale protetta da Firewall di Azure, Defender for Cloud fornisce all'utente i dettagli di connessione appropriati (mapping delle porte dalla tabella DNAT) da usare per connettersi alla macchina virtuale.

PowerShell

Abilitare JIT nelle macchine virtuali usando PowerShell

Per abilitare l'accesso just-in-time alle macchine virtuali da PowerShell, usare il cmdlet Set-AzJitNetworkAccessPolicyufficiale Microsoft Defender for Cloud PowerShell .

Esempio : abilitare l'accesso just-in-time alle macchine virtuali in una macchina virtuale specifica con le regole seguenti:

  • Chiudere le porte 22 e 3389
  • Impostare un intervallo di tempo massimo di 3 ore per ognuno in modo che possa essere aperto per ogni richiesta approvata
  • Consentire all'utente che richiede l'accesso per controllare gli indirizzi IP di origine
  • Consentire all'utente che richiede l'accesso per stabilire una sessione riuscita dopo una richiesta di accesso JUST-in-time approvata

I comandi di PowerShell seguenti creano questa configurazione JIT:

  1. Assegnare una variabile che contiene le regole di accesso just-in-time della macchina virtuale per una macchina virtuale:

    $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. Inserire le regole di accesso just-in-time della macchina virtuale in una matrice:

    $JitPolicyArr=@($JitPolicy)
    
  3. Configurare le regole di accesso just-in-time della macchina virtuale nella macchina virtuale selezionata:

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

    Usare il parametro -Name per specificare una macchina virtuale. Ad esempio, per stabilire la configurazione JIT per due macchine virtuali diverse, VM1 e VM2, usare: Set-AzJitNetworkAccessPolicy -Name VM1 e Set-AzJitNetworkAccessPolicy -Name VM2.

Richiedere accesso a una macchina virtuale abilitata per JIT usando PowerShell

Nell'esempio seguente è possibile visualizzare una richiesta di accesso just-in-time alle macchine virtuali a una macchina virtuale specifica per la porta 22, per un indirizzo IP specifico e per un periodo di tempo specifico:

Eseguire i comandi seguenti in PowerShell:

  1. Configurare le proprietà di accesso alle richieste della macchina virtuale:

    $JitPolicyVm1 = (@{
        id="/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Compute/virtualMachines/VMNAME";
        ports=(@{
           number=22;
           endTimeUtc="2020-07-15T17:00:00.3658798Z";
           allowedSourceAddressPrefix=@("IPV4ADDRESS")})})
    
  2. Inserire i parametri della richiesta di accesso alla macchina virtuale in una matrice:

    $JitPolicyArr=@($JitPolicyVm1)
    
  3. Inviare l'accesso alla richiesta (usare l'ID risorsa del passaggio 1)

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

Per altre informazioni, vedere la documentazione del cmdlet di PowerShell.

API REST

Abilitare JIT nelle macchine virtuali usando l'API REST

La funzionalità di accesso JUST-in-time alle macchine virtuali può essere usata tramite il Microsoft Defender per l'API cloud. Usare questa API per ottenere informazioni sulle macchine virtuali configurate, aggiungerne di nuove, richiedere l'accesso a una macchina virtuale e altro ancora.

Per altre informazioni, vedere Criteri di accesso alla rete JIT.

Richiedere l'accesso a una macchina virtuale abilitata per JIT usando l'API REST

La funzionalità di accesso JUST-in-time alle macchine virtuali può essere usata tramite il Microsoft Defender per l'API cloud. Usare questa API per ottenere informazioni sulle macchine virtuali configurate, aggiungerne di nuove, richiedere l'accesso a una macchina virtuale e altro ancora.

Per altre informazioni, vedere Criteri di accesso alla rete JIT.

Controllare l'attività di accesso JIT in Defender for Cloud

È possibile ottenere informazioni approfondite sulle attività delle macchine virtuali tramite la funzionalità Ricerca log. Per visualizzare i log:

  1. Dall'accesso JUST-in-time alla macchina virtuale selezionare la scheda Configurato.

  2. Per la macchina virtuale da controllare, aprire il menu con i puntini di sospensione alla fine della riga.

  3. Selezionare Log attività dal menu.

    Selezionare jit log attività JIT.

    Il log attività fornisce una visualizzazione filtrata delle operazioni precedenti per la macchina virtuale insieme a ora, data e sottoscrizione.

  4. Per scaricare le informazioni di log, selezionare Scarica come CSV.

Passaggi successivi

In questo articolo si è appreso come configurare e usare l'accesso just-in-time alle macchine virtuali. Per informazioni sul motivo per cui è consigliabile usare JIT, leggere l'articolo che illustra le minacce contro cui si difende JIT: