Samouczek: rejestrowanie przepływu ruchu sieciowego do i z maszyny wirtualnej przy użyciu witryny Azure PortalTutorial: Log network traffic to and from a virtual machine using the Azure portal

Sieciowa grupa zabezpieczeń umożliwia filtrowanie ruchu przychodzącego do i wychodzącego z maszyny wirtualnej.A network security group (NSG) enables you to filter inbound traffic to, and outbound traffic from, a virtual machine (VM). Możesz rejestrować ruch sieciowy, który przepływa przez sieciową grupę zabezpieczeń z możliwością rejestrowania dziennika przepływu sieciowej grupy zabezpieczeń usługi Network Watcher.You can log network traffic that flows through an NSG with Network Watcher's NSG flow log capability. Z tego samouczka dowiesz się, jak wykonywać następujące czynności:In this tutorial, you learn how to:

  • Tworzenie maszyny wirtualnej przy użyciu sieciowej grupy zabezpieczeńCreate a VM with a network security group
  • Włączanie usługi Network Watcher i rejestrowanie dostawcy Microsoft.InsightsEnable Network Watcher and register the Microsoft.Insights provider
  • Włączanie dziennika przepływu ruchu dla sieciowej grupy zabezpieczeń przy użyciu możliwości dziennika przepływu sieciowej grupy zabezpieczeń usługi Network WatcherEnable a traffic flow log for an NSG, using Network Watcher's NSG flow log capability
  • Pobieranie zarejestrowanych danychDownload logged data
  • Wyświetlanie zarejestrowanych danychView logged data

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.If you don't have an Azure subscription, create a free account before you begin.

Tworzenie maszyny wirtualnejCreate a VM

  1. W lewym górnym rogu witryny Azure Portal wybierz pozycję + Utwórz zasób.Select + Create a resource found on the upper, left corner of the Azure portal.

  2. Wybierz pozycję Compute, a następnie wybierz pozycję Windows Server 2016 Datacenter lub wersję Ubuntu Server.Select Compute, and then select Windows Server 2016 Datacenter or a version of Ubuntu Server.

  3. Wprowadź lub wybierz poniższe informacje, zaakceptuj wartości domyślne pozostałych ustawień, a następnie wybierz przycisk OK:Enter, or select, the following information, accept the defaults for the remaining settings, and then select OK:

    UstawienieSetting WartośćValue
    NazwaName myVmmyVm
    Nazwa użytkownikaUser name Wprowadź wybraną nazwę użytkownika.Enter a user name of your choosing.
    HasłoPassword Wprowadź wybrane hasło.Enter a password of your choosing. Hasło musi mieć długość co najmniej 12 znaków i spełniać zdefiniowane wymagania dotyczące złożoności.The password must be at least 12 characters long and meet the defined complexity requirements.
    SubskrypcjaSubscription Wybierz subskrypcję.Select your subscription.
    Grupa zasobówResource group Wybierz pozycję Utwórz nową, a następnie wprowadź nazwę myResourceGroup.Select Create new and enter myResourceGroup.
    LokalizacjaLocation Wybierz Wschodnie stany USASelect East US
  4. Wybierz rozmiar maszyny wirtualnej, a następnie wybierz pozycję Wybierz.Select a size for the VM and then select Select.

  5. W obszarze Ustawienia zaakceptuj wszystkie wartości domyślne i wybierz przycisk OK.Under Settings, accept all the defaults, and select OK.

  6. W obszarze Utwórz na stronie Podsumowanie wybierz pozycję Utwórz, aby rozpocząć wdrażanie maszyny wirtualnej.Under Create of the Summary, select Create to start VM deployment. Wdrożenie maszyny wirtualnej potrwa kilka minut.The VM takes a few minutes to deploy. Zanim przejdziesz do pozostałych kroków, poczekaj na zakończenie wdrażania maszyny wirtualnej.Wait for the VM to finish deploying before continuing with the remaining steps.

W ciągu kilku minut zostanie utworzona maszyna wirtualna.The VM takes a few minutes to create. Nie wykonuj pozostałych kroków do momentu zakończenia tworzenia maszyny wirtualnej.Don't continue with remaining steps until the VM has finished creating. Gdy portal tworzy maszynę wirtualną, tworzy również sieciową grupę zabezpieczeń o nazwie myVm-nsg i kojarzy ją z interfejsem sieciowym maszyny wirtualnej.While the portal creates the VM, it also creates a network security group with the name myVm-nsg, and associates it to the network interface for the VM.

Włączanie usługi Network WatcherEnable Network Watcher

Jeśli masz już włączoną usługę Network Watcher w regionie Wschodnie stany USA, przejdź do sekcji Rejestrowanie dostawcy usługi Insights.If you already have a network watcher enabled in the East US region, skip to Register Insights provider.

  1. W portalu wybierz pozycję Wszystkie usługi.In the portal, select All services. W polu filtru wprowadź ciąg Network Watcher.In the Filter box, enter Network Watcher. Gdy Network Watcher pojawi się w wynikach, wybierz ją.When Network Watcher appears in the results, select it.

  2. Wybierz węzeł Regiony, aby go rozwinąć, a następnie wybierz symbol ... z prawej strony pozycji Wschodnie stany USA, jak pokazano na poniższej ilustracji:Select Regions, to expand it, and then select ... to the right of East US, as shown in the following picture:

    Włączanie usługi Network Watcher

  3. Wybierz pozycję Włącz usługę Network Watcher.Select Enable Network Watcher.

Rejestrowanie dostawcy usługi InsightsRegister Insights provider

Rejestrowanie przepływu sieciowej grupy zabezpieczeń wymaga dostawcy Microsoft.Insights.NSG flow logging requires the Microsoft.Insights provider. Aby zarejestrować dostawcę, wykonaj następujące kroki:To register the provider, complete the following steps:

  1. W lewym górnym rogu portalu wybierz pozycję Wszystkie usługi.In the top, left corner of portal, select All services. W polu Filtr wpisz ciąg Subskrypcje.In the Filter box, type Subscriptions. Gdy pozycja Subskrypcje pojawi się w wynikach wyszukiwania, wybierz ją.When Subscriptions appear in the search results, select it.

  2. Z listy subskrypcji wybierz subskrypcję, dla której chcesz włączyć dostawcę.From the list of subscriptions, select the subscription you want to enable the provider for.

  3. Wybierz pozycję Dostawcy zasobów w obszarze USTAWIENIA.Select Resource providers, under SETTINGS.

  4. Sprawdź, czy pozycja STAN dla dostawcy microsoft.insights ma wartość Zarejestrowany, jak pokazano na rysunku poniżej.Confirm that the STATUS for the microsoft.insights provider is Registered, as shown in the picture that follows. Jeśli stan ma wartość Niezarejestrowany, wybierz pozycję Zarejestruj z prawej strony dostawcy.If the status is Unregistered, then select Register, to the right of the provider.

    Rejestrowanie dostawcy

Włączanie dziennika przepływu sieciowej grupy zabezpieczeńEnable NSG flow log

  1. Dane dziennika przepływu sieciowej grupy zabezpieczeń są zapisywane na koncie usługi Azure Storage.NSG flow log data is written to an Azure Storage account. Aby utworzyć konto usługi Azure Storage, wybierz pozycję + Utwórz zasób w lewym górnym rogu portalu.To create an Azure Storage account, select + Create a resource at the top, left corner of the portal.

  2. Wybierz pozycję Storage, a następnie wybierz pozycję Konto usługi Storage — Blob, File, Table, Queue.Select Storage, then select Storage account - blob, file, table, queue.

  3. Wprowadź lub wybierz poniższe informacje, zaakceptuj pozostałe wartości domyślne, a następnie wybierz pozycję Utwórz.Enter, or select the following information, accept the remaining defaults, and then select Create.

    UstawienieSetting WartośćValue
    NazwaName Od 3 do 24 znaków, może zawierać tylko małe litery i cyfry i musi być unikatowa dla wszystkich kont usługi Azure Storage.3-24 characters in length, can only contain lowercase letters and numbers, and must be unique across all Azure Storage accounts.
    LokalizacjaLocation Wybierz Wschodnie stany USASelect East US
    Grupa zasobówResource group Wybierz pozycję Użyj istniejącej, a następnie wybierz pozycję Moja resourceName .Select Use existing, and then select myResourceGroup

    Tworzenie konta usługi Storage może potrwać około minuty.The storage account may take around minute to create. Nie wykonuj pozostałych kroków, dopóki konto usługi Storage nie zostanie utworzone.Don't continue with remaining steps until the storage account is created. We wszystkich przypadkach konto magazynu musi znajdować się w tym samym regionie co sieciowej grupy zabezpieczeń.In all cases, the storage account must be in the same region as the NSG.

  4. W lewym górnym rogu portalu wybierz pozycję Wszystkie usługi.In the top, left corner of portal, select All services. W polu Filtr wpisz ciąg Network Watcher.In the Filter box, type Network Watcher. Gdy w wynikach wyszukiwania pojawi się nazwa Network Watcher, wybierz ją.When Network Watcher appears in the search results, select it.

  5. W obszarze DZIENNIKI wybierz pozycję Dzienniki przepływu sieciowej grupy zabezpieczeń, jak pokazano na poniższej ilustracji:Under LOGS, select NSG flow logs, as shown in the following picture:

    Zrzut ekranu przedstawia dzienniki przepływu Network Watcher sieciowej grupy zabezpieczeń.

  6. Z listy sieciowych grup zabezpieczeń wybierz grupę o nazwie myVm-nsg.From the list of NSGs, select the NSG named myVm-nsg.

  7. W obszarze Ustawienia dzienników przepływu wybierz pozycję Wł.Under Flow logs settings, select On.

  8. Wybierz wersję dzienników przepływu do rejestrowania.Select the flow logging version. Wersja 2 zawiera statystykę przepływu/sesji (bajty i pakiety)Version 2 contains flow-session statistics (Bytes and Packets)

    Wybieranie wersji dzienników przepływu

  9. Wybierz konto usługi Storage utworzone w kroku 3.Select the storage account that you created in step 3.

    Uwaga

    Dzienniki przepływu sieciowej grupy zabezpieczeń nie działają w przypadku kont magazynu, które mają włączoną hierarchiczną przestrzeń nazw .NSG Flow Logs do not work with storage accounts that have hierarchical namespace enabled.

  10. W lewym górnym rogu portalu wybierz pozycję Wszystkie usługi.In the top, left corner of portal, select All services. W polu Filtr wpisz ciąg Network Watcher.In the Filter box, type Network Watcher. Gdy w wynikach wyszukiwania pojawi się nazwa Network Watcher, wybierz ją.When Network Watcher appears in the search results, select it.

  11. Ustaw pozycję Przechowywanie (dni) na 5, a następnie wybierz pozycję Zapisz.Set Retention (days) to 5, and then select Save.

Pobieranie dziennika przepływuDownload flow log

  1. Z poziomu usługi Network Watcher w portalu wybierz pozycję Dzienniki przepływów sieciowych grup zabezpieczeń w obszarze DZIENNIKI.From Network Watcher, in the portal, select NSG flow logs under LOGS.

  2. Wybierz pozycję Możesz pobierać dzienniki przepływu ze skonfigurowanych kont usługi Storage, jak pokazano na poniższej ilustracji:Select You can download flow logs from configured storage accounts, as shown in the following picture:

    Pobieranie dzienników przepływu

  3. Wybierz konto usługi Storage skonfigurowane w kroku 2 sekcji Włączanie dziennika przepływu sieciowej grupy zabezpieczeń.Select the storage account that you configured in step 2 of Enable NSG flow log.

  4. W obszarze BLOB Service wybierz pozycję kontenery, a następnie wybierz kontener Insights-Logs-networksecuritygroupflowevent .Under Blob service, select Containers, and then select the insights-logs-networksecuritygroupflowevent container.

  5. W kontenerze przejdź do hierarchii folderów do momentu uzyskania PT1H.jsw pliku, jak pokazano na poniższej ilustracji.In the container, navigate the folder hierarchy until you get to a PT1H.json file, as shown in the picture that follows. Pliki dziennika są zapisywane w hierarchii folderów, która następuje po następującej konwencji nazewnictwa: https://{storageAccountName}. blob. Core. Windows. NET/Insights-Logs-networksecuritygroupflowevent/resourceId =/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{nsgName}/y = {Year}/m = {miesiąc}/d = {Day}/h = {Hour}/m = 00/macAddress = {macAddress}/PT1H.jsonLog files are written to a folder hierarchy that follows the following naming convention: https://{storageAccountName}.blob.core.windows.net/insights-logs-networksecuritygroupflowevent/resourceId=/SUBSCRIPTIONS/{subscriptionID}/RESOURCEGROUPS/{resourceGroupName}/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/{nsgName}/y={year}/m={month}/d={day}/h={hour}/m=00/macAddress={macAddress}/PT1H.json

    Dziennik przepływu

  6. Wybierz symbol ... z prawej strony pliku PT1H.json i wybierz pozycję Pobierz.Select ... to the right of the PT1H.json file and select Download.

Wyświetlanie dziennika przepływuView flow log

Poniższy kod JSON to przykład kodu widocznego w pliku PT1H.json dla każdego przepływu, w którym są rejestrowane dane:The following json is an example of what you'll see in the PT1H.json file for each flow that data is logged for:

Zdarzenie dziennika przepływu w wersji 1Version 1 flow log event

{
    "time": "2018-05-01T15:00:02.1713710Z",
    "systemId": "<Id>",
    "category": "NetworkSecurityGroupFlowEvent",
    "resourceId": "/SUBSCRIPTIONS/<Id>/RESOURCEGROUPS/MYRESOURCEGROUP/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/MYVM-NSG",
    "operationName": "NetworkSecurityGroupFlowEvents",
    "properties": {
        "Version": 1,
        "flows": [
            {
                "rule": "UserRule_default-allow-rdp",
                "flows": [
                    {
                        "mac": "000D3A170C69",
                        "flowTuples": [
                            "1525186745,192.168.1.4,10.0.0.4,55960,3389,T,I,A"
                        ]
                    }
                ]
            }
        ]
    }
}

Zdarzenie dziennika przepływu w wersji 2Version 2 flow log event

{
    "time": "2018-11-13T12:00:35.3899262Z",
    "systemId": "a0fca5ce-022c-47b1-9735-89943b42f2fa",
    "category": "NetworkSecurityGroupFlowEvent",
    "resourceId": "/SUBSCRIPTIONS/00000000-0000-0000-0000-000000000000/RESOURCEGROUPS/FABRIKAMRG/PROVIDERS/MICROSOFT.NETWORK/NETWORKSECURITYGROUPS/FABRIAKMVM1-NSG",
    "operationName": "NetworkSecurityGroupFlowEvents",
    "properties": {
        "Version": 2,
        "flows": [
            {
                "rule": "DefaultRule_DenyAllInBound",
                "flows": [
                    {
                        "mac": "000D3AF87856",
                        "flowTuples": [
                            "1542110402,94.102.49.190,10.5.16.4,28746,443,U,I,D,B,,,,",
                            "1542110424,176.119.4.10,10.5.16.4,56509,59336,T,I,D,B,,,,",
                            "1542110432,167.99.86.8,10.5.16.4,48495,8088,T,I,D,B,,,,"
                        ]
                    }
                ]
            },
            {
                "rule": "DefaultRule_AllowInternetOutBound",
                "flows": [
                    {
                        "mac": "000D3AF87856",
                        "flowTuples": [
                            "1542110377,10.5.16.4,13.67.143.118,59831,443,T,O,A,B,,,,",
                            "1542110379,10.5.16.4,13.67.143.117,59932,443,T,O,A,E,1,66,1,66",
                            "1542110379,10.5.16.4,13.67.143.115,44931,443,T,O,A,C,30,16978,24,14008",
                            "1542110406,10.5.16.4,40.71.12.225,59929,443,T,O,A,E,15,8489,12,7054"
                        ]
                    }
                ]
            }
        ]
    }
}

Wartość elementu mac w poprzednich danych wyjściowych to adres MAC interfejsu sieciowego, który został utworzony podczas tworzenia maszyny wirtualnej.The value for mac in the previous output is the MAC address of the network interface that was created when the VM was created. Informacje rozdzielone przecinkami dotyczące elementu flowTuples są następujące:The comma-separated information for flowTuples, is as follows:

Przykładowe daneExample data Co reprezentują daneWhat data represents WyjaśnienieExplanation
15421103771542110377 Znacznik czasuTime stamp Znacznik czasu wystąpienia przepływu w formacie EPOCH systemu UNIX.The time stamp of when the flow occurred, in UNIX EPOCH format. W poprzednim przykładzie data zmienia się na 1 maja 2018 o 14:59:05 GMT.In the previous example, the date converts to May 1, 2018 at 2:59:05 PM GMT.
10.0.0.410.0.0.4 Źródłowy adres IPSource IP address Źródłowy adres IP, z którego był zainicjowany przepływ.The source IP address that the flow originated from. 10.0.0.4 to prywatny adres IP maszyny wirtualnej utworzonej w sekcji Tworzenie maszyny wirtualnej.10.0.0.4 is the private IP address of the VM you created in Create a VM.
13.67.143.11813.67.143.118 Docelowy adres IPDestination IP address Docelowy adres IP, do którego był skierowany przepływ.The destination IP address that the flow was destined to.
4493144931 Port źródłowySource port Port źródłowy, z którego pochodził przepływ.The source port that the flow originated from.
443443 Port docelowyDestination port Port docelowy, do którego był skierowany przepływ.The destination port that the flow was destined to. Ponieważ ruch był przeznaczony do portu 443, reguła o nazwie UserRule_default-allow-rdp w pliku dziennika przetworzyła przepływ.Since the traffic was destined to port 443, the rule named UserRule_default-allow-rdp, in the log file processed the flow.
TT ProtokółProtocol Określa rodzaj protokołu przepływu: TCP (T) lub UDP (U).Whether the protocol of the flow was TCP (T) or UDP (U).
OO KierunekDirection Określa, czy ruch był przychodzący (I), czy wychodzący (O).Whether the traffic was inbound (I) or outbound (O).
AA AkcjaAction Określa, czy ruch był dozwolony (A), czy odrzucony (D).Whether the traffic was allowed (A) or denied (D).
CC Stan przepływu tylko w wersji 2Flow State Version 2 Only Rejestruje stan przepływu.Captures the state of the flow. Możliwe stany to B: początek — gdy zostanie utworzony przepływ.Possible states are B: Begin, when a flow is created. Statystyki nie są podawane.Statistics aren't provided. C: kontynuacja — dotyczy ciągłego przepływu.C: Continuing for an ongoing flow. Statystyki są podawane w 5-minutowych odstępach.Statistics are provided at 5-minute intervals. E: koniec — gdy przepływ zostanie zakończony.E: End, when a flow is terminated. Statystyki są podawane.Statistics are provided.
3030 Wysłane pakiety — ze źródła do miejsca docelowego tylko w wersji 2Packets sent - Source to destination Version 2 Only Całkowita liczba pakietów TCP lub UDP przesłanych ze źródła do miejsca docelowego od czasu ostatniej aktualizacji.The total number of TCP or UDP packets sent from source to destination since last update.
1697816978 Wysłane bajty — ze źródła do miejsca docelowego tylko w wersji 2Bytes sent - Source to destination Version 2 Only Całkowita liczba bajtów pakietów TCP lub UDP przesłanych ze źródła do miejsca docelowego od czasu ostatniej aktualizacji.The total number of TCP or UDP packet bytes sent from source to destination since last update. Liczba bajtów pakietu obejmuje nagłówek i ładunek pakietu.Packet bytes include the packet header and payload.
2424 Wysłane pakiety — z miejsca docelowego do źródła tylko w wersji 2Packets sent - Destination to source Version 2 Only Całkowita liczba pakietów TCP lub UDP przesłanych z miejsca docelowego do źródła od czasu ostatniej aktualizacji.The total number of TCP or UDP packets sent from destination to source since last update.
1400814008 Wysłane bajty — z miejsca docelowego do źródła tylko w wersji 2Bytes sent - Destination to source Version 2 Only Całkowita liczba bajtów pakietów TCP i UDP przesłanych z miejsca docelowego do źródła od czasu ostatniej aktualizacji.The total number of TCP and UDP packet bytes sent from destination to source since last update. Liczba bajtów pakietu obejmuje nagłówek i ładunek pakietu.Packet bytes include packet header and payload.

Następne krokiNext steps

W tym samouczku przedstawiono sposób włączania rejestrowania przepływu sieciowej grupy zabezpieczeń dla danej grupy.In this tutorial, you learned how to enable NSG flow logging for an NSG. Przedstawiono również sposób pobierania i wyświetlania danych rejestrowanych w pliku.You also learned how to download and view data logged in a file. Nieprzetworzone dane w pliku JSON mogą być trudne do zinterpretowania.The raw data in the json file can be difficult to interpret. Aby wizualizować dane dzienników przepływów, możesz użyć platformy Azure Analiza ruchu, programu Microsoft Power BIi innych narzędzi.To visualize Flow Logs data, you can use Azure Traffic Analytics, Microsoft Power BI, and other tools. Możesz wypróbować alternatywne metody włączania dzienników przepływu sieciowej grupy zabezpieczeń, takich jak PowerShell, interfejs wiersza polecenia platformy Azure, interfejsy API REST i Szablony ARM.You can try alternate methods of enabling NSG Flow Logs like PowerShell, Azure CLI, REST API and ARM templates.