Włączanie dostępu just in time

Usługa Defender for Servers w systemie Microsoft Defender dla Chmury zapewnia funkcję dostępu just in time do maszyny.

Aby chronić maszyny wirtualne platformy Azure przed nieautoryzowanym dostępem sieciowym, możesz użyć dostępu just in time Microsoft Defender dla Chmury. Wiele razy zapory zawierają reguły zezwalania, które pozostawiają maszyny wirtualne narażone na ataki. Dostęp JIT umożliwia dostęp do maszyn wirtualnych tylko wtedy, gdy jest potrzebny dostęp, na potrzebnych portach i przez okres potrzebny.

Z tego artykułu dowiesz się, jak skonfigurować dostęp just in time i korzystać z niego, w tym instrukcje:

  • Włączanie just in time na maszynach wirtualnych z witryny Azure Portal lub programowo
  • Żądanie dostępu do maszyny wirtualnej z włączonym dostępem just in time z poziomu witryny Azure Portal lub programowo
  • Przeprowadź inspekcję aktywności dostępu just in time, aby upewnić się, że maszyny wirtualne są odpowiednio zabezpieczone

Wymagania wstępne

  • Usługa Microsoft Defender dla serwerów (plan 2 ) musi być włączona w ramach subskrypcji.

  • Obsługiwane maszyny wirtualne: maszyny wirtualne wdrożone za pośrednictwem usługi Azure Resource Manager, maszyny wirtualne wdrożone z klasycznymi modelami wdrażania, maszyny wirtualne chronione przez usługę Azure Firewalls w tej samej sieci wirtualnej co maszyna wirtualna, maszyny wirtualne chronione przez usługę Azure Firewalls kontrolowane przez usługę Azure Firewall Manager, wystąpienia usługi AWS EC2 (wersja zapoznawcza)

  • Aby skonfigurować dostęp just in time na maszynach wirtualnych platformy AWS, musisz połączyć konto platformy AWS z Microsoft Defender dla Chmury.

  • W przypadku zasad JIT nazwa zasad wraz z docelową nazwą maszyny wirtualnej nie może przekraczać łącznie 56 znaków.

  • Potrzebujesz uprawnień Czytelnik i SecurityReader lub rola niestandardowa może wyświetlać stan i parametry trybu JIT.

  • W przypadku roli niestandardowej przypisz uprawnienia podsumowane w tabeli. Aby utworzyć rolę o najniższych uprawnieniach dla użytkowników, którzy muszą zażądać dostępu JIT do maszyny wirtualnej, użyj skryptu Set-JitLeastPrivilegedRole.

    Akcja użytkownika Uprawnienia do ustawienia
    Konfigurowanie lub edytowanie zasad JIT dla maszyny wirtualnej Przypisz te akcje do roli:
    • W zakresie subskrypcji (lub grupy zasobów tylko w przypadku korzystania z interfejsu API lub programu PowerShell) skojarzonej z maszyną wirtualną:
      Microsoft.Security/locations/jitNetworkAccessPolicies/write
    • W zakresie subskrypcji (lub grupy zasobów tylko w przypadku korzystania z interfejsu API lub programu PowerShell) maszyny wirtualnej:
      Microsoft.Compute/virtualMachines/write
    Żądanie dostępu JIT do maszyny wirtualnej Przypisz te akcje do użytkownika:
    • Microsoft.Security/locations/jitNetworkAccessPolicies/initiate/action
    • Microsoft.Security/locations/jitNetworkAccessPolicies/*/read
    • Microsoft.Compute/virtualMachines/read
    • Microsoft.Network/networkInterfaces/*/read
    • Microsoft.Network/publicIPAddresses/read
    Odczytywanie zasad trybu JIT Przypisz te akcje do użytkownika:
    • 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

    Uwaga

    Microsoft.Security Tylko uprawnienia są istotne dla platformy AWS. Aby utworzyć rolę o najniższych uprawnieniach dla użytkowników, którzy muszą zażądać dostępu JIT tylko do maszyny wirtualnej, użyj skryptu Set-JitLeastPrivilegedRole.

Praca z dostępem do maszyny wirtualnej JIT przy użyciu Microsoft Defender dla Chmury

Możesz użyć Defender dla Chmury lub programowo włączyć dostęp do maszyn wirtualnych JIT przy użyciu własnych opcji niestandardowych lub włączyć tryb JIT z domyślnymi, zakodowanymi parametrami z maszyn wirtualnych platformy Azure.

Dostęp just in time do maszyn wirtualnych pokazuje maszyny wirtualne pogrupowane w:

  • Skonfigurowane — maszyny wirtualne skonfigurowane do obsługi dostępu just in time do maszyn wirtualnych i pokazują:
    • liczba zatwierdzonych żądań JIT w ciągu ostatnich siedmiu dni
    • data i godzina ostatniego dostępu
    • skonfigurowane szczegóły połączenia
    • ostatni użytkownik
  • Nieskonfigurowane — maszyny wirtualne bez włączonego trybu JIT, ale mogą obsługiwać tryb JIT. Zalecamy włączenie trybu JIT dla tych maszyn wirtualnych.
  • Nieobsługiwane — maszyny wirtualne, które nie obsługują trybu JIT, ponieważ:
    • Brak sieciowej grupy zabezpieczeń lub usługi Azure Firewall — JIT wymaga skonfigurowania sieciowej grupy zabezpieczeń lub konfiguracji zapory (lub obu tych grup)
    • Klasyczna maszyna wirtualna — JIT obsługuje maszyny wirtualne wdrażane za pośrednictwem usługi Azure Resource Manager.
    • Inne — rozwiązanie JIT jest wyłączone w zasadach zabezpieczeń subskrypcji lub grupy zasobów.

Włączanie trybu JIT na maszynach wirtualnych z poziomu Microsoft Defender dla Chmury

Zrzut ekranu przedstawiający konfigurowanie dostępu do maszyny wirtualnej JIT w Microsoft Defender dla Chmury.

W Defender dla Chmury można włączyć i skonfigurować dostęp do maszyny wirtualnej JIT.

  1. Otwórz pozycję Zabezpieczenia obciążeń, a następnie w obszarze zaawansowanej ochrony wybierz pozycję Dostęp just in time do maszyny wirtualnej.

  2. Na karcie Nieskonfigurowane maszyny wirtualne oznacz maszyny wirtualne w celu ochrony za pomocą trybu JIT i wybierz pozycję Włącz dostęp JIT na maszynach wirtualnych.

    Zostanie otwarta strona dostępu do maszyny wirtualnej JIT zawierająca listę portów, które Defender dla Chmury zaleca ochronę:

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

    Aby dostosować dostęp JIT:

    1. Wybierz Dodaj.

    2. Wybierz jeden z portów na liście, aby go edytować lub wprowadzić inne porty. Dla każdego portu można ustawić następujące ustawienia:

      • Protokół — protokół dozwolony na tym porcie po zatwierdzeniu żądania
      • Dozwolone źródłowe adresy IP — zakresy adresów IP dozwolone na tym porcie po zatwierdzeniu żądania
      • Maksymalny czas żądania — maksymalny przedział czasu, w którym można otworzyć określony port
    3. Wybierz przycisk OK.

  3. Aby zapisać konfigurację portu, wybierz pozycję Zapisz.

Edytowanie konfiguracji trybu JIT na maszynie wirtualnej z obsługą trybu JIT przy użyciu Defender dla Chmury

Konfigurację just in time maszyny wirtualnej można zmodyfikować, dodając i konfigurując nowy port do ochrony dla tej maszyny wirtualnej lub zmieniając inne ustawienie związane z już chronionym portem.

Aby edytować istniejące reguły JIT dla maszyny wirtualnej:

  1. Otwórz pozycję Zabezpieczenia obciążeń, a następnie w obszarze zaawansowanej ochrony wybierz pozycję Dostęp just in time do maszyny wirtualnej.

  2. Na karcie Skonfigurowane maszyny wirtualne kliknij prawym przyciskiem myszy maszynę wirtualną i wybierz polecenie Edytuj.

  3. W konfiguracji dostępu do maszyny wirtualnej JIT można edytować listę portów lub wybrać pozycję Dodaj nowy port niestandardowy.

  4. Po zakończeniu edytowania portów wybierz pozycję Zapisz.

Żądanie dostępu do maszyny wirtualnej z obsługą trybu JIT z Microsoft Defender dla Chmury

Jeśli maszyna wirtualna ma włączony dostęp JIT, musisz zażądać dostępu, aby nawiązać z nią połączenie. Dostęp można zażądać na dowolny z obsługiwanych sposobów, niezależnie od sposobu włączania trybu JIT.

  1. Na stronie Dostęp just in time do maszyny wirtualnej wybierz kartę Skonfigurowane.

  2. Wybierz maszyny wirtualne, do których chcesz uzyskać dostęp:

    • Ikona w kolumnie Szczegóły połączenia wskazuje, czy tryb JIT jest włączony w sieciowej grupie zabezpieczeń lub zaporze. Jeśli jest ona włączona w obu tych przypadkach, zostanie wyświetlona tylko ikona zapory.

    • W kolumnie Szczegóły połączenia jest wyświetlany użytkownik i porty, które mogą uzyskiwać dostęp do maszyny wirtualnej.

  3. Wybierz pozycję Zażądaj dostępu. Zostanie otwarte okno Żądanie dostępu .

  4. W obszarze Żądanie dostępu wybierz porty, które chcesz otworzyć dla każdej maszyny wirtualnej, źródłowe adresy IP, na których ma zostać otwarty port, oraz okno czasowe do otwarcia portów.

  5. Wybierz pozycję Otwórz porty.

    Uwaga

    Jeśli użytkownik, który żąda dostępu, znajduje się za serwerem proxy, możesz wprowadzić zakres adresów IP serwera proxy.

Inne sposoby pracy z dostępem do maszyny wirtualnej JIT

Maszyny wirtualne platformy Azure

Włączanie trybu JIT na maszynach wirtualnych z maszyn wirtualnych platformy Azure

Dostęp JIT można włączyć na maszynie wirtualnej na stronach maszyn wirtualnych platformy Azure w witrynie Azure Portal.

Napiwek

Jeśli maszyna wirtualna ma już włączony tryb JIT, na stronie konfiguracji maszyny wirtualnej zostanie wyświetlony komunikat o włączeniu trybu JIT. Możesz użyć linku, aby otworzyć stronę dostępu do maszyny wirtualnej JIT w Defender dla Chmury, aby wyświetlić i zmienić ustawienia.

  1. W witrynie Azure Portal wyszukaj i wybierz pozycję Maszyny wirtualne.

  2. Wybierz maszynę wirtualną, którą chcesz chronić za pomocą trybu JIT.

  3. W menu wybierz pozycję Konfiguracja.

  4. W obszarze Dostęp just in time wybierz pozycję Włącz just-in-time.

    Domyślnie dostęp just in time dla maszyny wirtualnej używa następujących ustawień:

    • Maszyny z systemem Windows
      • Port RDP: 3389
      • Maksymalny dozwolony dostęp: trzy godziny
      • Dozwolone źródłowe adresy IP: dowolne
    • Maszyny z systemem Linux
      • Port SSH: 22
      • Maksymalny dozwolony dostęp: trzy godziny
      • Dozwolone źródłowe adresy IP: dowolne
  5. Aby edytować dowolną z tych wartości lub dodać więcej portów do konfiguracji JIT, użyj strony just in time Microsoft Defender dla Chmury:

    1. Z menu Defender dla Chmury wybierz pozycję Dostęp just in time do maszyny wirtualnej.

    2. Na karcie Skonfigurowane kliknij prawym przyciskiem myszy maszynę wirtualną, do której chcesz dodać port, a następnie wybierz pozycję Edytuj.

      Edytowanie konfiguracji dostępu do maszyny wirtualnej JIT w Microsoft Defender dla Chmury.

    3. W obszarze Konfiguracja dostępu do maszyny wirtualnej JIT można edytować istniejące ustawienia już chronionego portu lub dodać nowy port niestandardowy.

    4. Po zakończeniu edytowania portów wybierz pozycję Zapisz.

Żądanie dostępu do maszyny wirtualnej z obsługą trybu JIT na stronie połączenia maszyny wirtualnej platformy Azure

Jeśli maszyna wirtualna ma włączony dostęp JIT, musisz zażądać dostępu, aby nawiązać z nią połączenie. Dostęp można zażądać na dowolny z obsługiwanych sposobów, niezależnie od sposobu włączania trybu JIT.

Zrzut ekranu przedstawiający żądanie jit just in time.

Aby zażądać dostępu z maszyn wirtualnych platformy Azure:

  1. W witrynie Azure Portal otwórz strony maszyn wirtualnych.

  2. Wybierz maszynę wirtualną, z którą chcesz nawiązać połączenie, a następnie otwórz stronę Połącz .

    Platforma Azure sprawdza, czy na tej maszynie wirtualnej jest włączony tryb JIT.

    • Jeśli tryb JIT nie jest włączony dla maszyny wirtualnej, zostanie wyświetlony monit o jego włączenie.

    • Jeśli tryb JIT jest włączony, wybierz pozycję Zażądaj dostępu, aby przekazać żądanie dostępu z żądanym adresem IP, zakresem czasu i portami skonfigurowanymi dla tej maszyny wirtualnej.

Uwaga

Po zatwierdzeniu żądania dla maszyny wirtualnej chronionej przez usługę Azure Firewall Defender dla Chmury udostępnia użytkownikowi odpowiednie szczegóły połączenia (mapowanie portów z tabeli DNAT) do nawiązania połączenia z maszyną wirtualną.

PowerShell

Włączanie funkcji JIT na maszynach wirtualnych za pomocą programu PowerShell

Aby włączyć dostęp just in time do maszyny wirtualnej z poziomu programu PowerShell, użyj oficjalnego polecenia cmdlet Set-AzJitNetworkAccessPolicyprogramu PowerShell Microsoft Defender dla Chmury .

Przykład — włączanie dostępu just in time do maszyny wirtualnej przy użyciu następujących reguł:

  • Zamknij porty 22 i 3389
  • Ustaw maksymalny przedział czasu wynoszący 3 godziny dla każdego z nich, aby można było je otworzyć dla zatwierdzonego żądania
  • Zezwalaj użytkownikowi, który żąda dostępu do kontrolowania źródłowych adresów IP
  • Zezwalaj użytkownikowi, który żąda dostępu, aby ustanowić pomyślną sesję po zatwierdzonym żądaniu dostępu just in time

Następujące polecenia programu PowerShell tworzą tę konfigurację trybu JIT:

  1. Przypisz zmienną, która zawiera reguły dostępu just in time dla maszyny wirtualnej:

    $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. Wstaw reguły dostępu just in time maszyny wirtualnej do tablicy:

    $JitPolicyArr=@($JitPolicy)
    
  3. Skonfiguruj reguły dostępu just in time do maszyny wirtualnej na wybranej maszynie wirtualnej:

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

    Użyj parametru -Name, aby określić maszynę wirtualną. Aby na przykład ustanowić konfigurację trybu JIT dla dwóch różnych maszyn wirtualnych, maszyn wirtualnych VM1 i VM2, użyj następujących poleceń: Set-AzJitNetworkAccessPolicy -Name VM1 i Set-AzJitNetworkAccessPolicy -Name VM2.

Żądanie dostępu do maszyny wirtualnej z obsługą JIT za pomocą programu PowerShell

W poniższym przykładzie można zobaczyć żądanie dostępu just in time do określonej maszyny wirtualnej dla portu 22, dla określonego adresu IP i przez określony czas:

Uruchom następujące polecenia w programie PowerShell:

  1. Skonfiguruj właściwości dostępu żądania maszyny wirtualnej:

    $JitPolicyVm1 = (@{
        id="/subscriptions/SUBSCRIPTIONID/resourceGroups/RESOURCEGROUP/providers/Microsoft.Compute/virtualMachines/VMNAME";
        ports=(@{
          number=22;
          endTimeUtc="2020-07-15T17:00:00.3658798Z";
          allowedSourceAddressPrefix=@("IPV4ADDRESS")})})
    
  2. Wstaw parametry żądania dostępu do maszyny wirtualnej w tablicy:

    $JitPolicyArr=@($JitPolicyVm1)
    
  3. Wyślij dostęp do żądania (użyj identyfikatora zasobu z kroku 1)

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

Dowiedz się więcej w dokumentacji poleceń cmdlet programu PowerShell.

Interfejs API REST

Włączanie trybu JIT na maszynach wirtualnych przy użyciu interfejsu API REST

Funkcja dostępu just in time do maszyny wirtualnej może być używana za pośrednictwem interfejsu API Microsoft Defender dla Chmury. Użyj tego interfejsu API, aby uzyskać informacje o skonfigurowanych maszynach wirtualnych, dodawać nowe, żądać dostępu do maszyny wirtualnej i nie tylko.

Dowiedz się więcej na temat zasad dostępu do sieci JIT.

Żądanie dostępu do maszyny wirtualnej z obsługą trybu JIT przy użyciu interfejsu API REST

Funkcja dostępu just in time do maszyny wirtualnej może być używana za pośrednictwem interfejsu API Microsoft Defender dla Chmury. Użyj tego interfejsu API, aby uzyskać informacje o skonfigurowanych maszynach wirtualnych, dodawać nowe, żądać dostępu do maszyny wirtualnej i nie tylko.

Dowiedz się więcej na temat zasad dostępu do sieci JIT.

Inspekcja aktywności dostępu JIT w Defender dla Chmury

Możesz uzyskać wgląd w działania maszyn wirtualnych przy użyciu wyszukiwania w dziennikach. Aby wyświetlić dzienniki:

  1. Z poziomu dostępu just in time do maszyny wirtualnej wybierz kartę Skonfigurowane .

  2. W przypadku maszyny wirtualnej, którą chcesz przeprowadzić inspekcję, otwórz menu wielokropka na końcu wiersza.

  3. Wybierz pozycję Dziennik aktywności z menu.

    Wybierz dziennik aktywności just in time JIT.

    Dziennik aktywności zawiera filtrowany widok poprzednich operacji dla tej maszyny wirtualnej wraz z godziną, datą i subskrypcją.

  4. Aby pobrać informacje dziennika, wybierz pozycję Pobierz jako plik CSV.

Następny krok