Udostępnij za pośrednictwem


Zarządzanie przekazywaniem dziennika systemowego dla usługi Azure Local

Dotyczy: Azure Local, wersja 23H2

W tym artykule opisano sposób konfigurowania zdarzeń zabezpieczeń, które mają być przekazywane do systemu zarządzania informacjami i zdarzeniami zabezpieczeń przez klienta (SIEM) przy użyciu protokołu syslog dla usługi Azure Local w wersji 23H2.

Przekazywanie dziennika systemowego umożliwia integrację z rozwiązaniami do monitorowania zabezpieczeń i pobieranie odpowiednich dzienników zdarzeń zabezpieczeń w celu przechowywania ich na własnej platformie SIEM. Aby uzyskać więcej informacji na temat funkcji zabezpieczeń w tej wersji, zobacz Funkcje zabezpieczeń dla platformy Azure Local w wersji 23H2.

Konfigurowanie przekazywania dziennika systemowego

Agenci przekazujący dziennik systemowy są domyślnie wdrażani na każdym hoście lokalnym platformy Azure gotowym do skonfigurowania. Każdy z agentów będzie przekazywać zdarzenia zabezpieczeń w formacie dziennika systemowego z hosta do serwera syslog skonfigurowanego przez klienta.

Agenci przekazujący dziennik systemowy działają niezależnie od siebie, ale mogą być zarządzani razem na jednym z hostów. Użyj poleceń cmdlet programu PowerShell z uprawnieniami administracyjnymi na dowolnym hoście, aby kontrolować zachowanie wszystkich agentów usługi przesyłania dalej.

Usługa przesyłania dalej dziennika systemowego w usłudze Azure Local obsługuje następujące konfiguracje:

  • Przekazywanie dziennika systemowego przy użyciu protokołu TCP, wzajemnego uwierzytelniania (klienta i serwera) i szyfrowania TLS: w tej konfiguracji zarówno serwer syslog, jak i klient syslog weryfikują tożsamość siebie za pośrednictwem certyfikatów. Komunikaty są wysyłane za pośrednictwem szyfrowanego kanału TLS. Aby uzyskać więcej informacji, zobacz Przekazywanie usługi Syslog przy użyciu protokołu TCP, wzajemnego uwierzytelniania (klienta i serwera) i szyfrowania TLS.

  • Przekazywanie dziennika systemowego przy użyciu protokołu TCP, uwierzytelniania serwera i szyfrowania TLS: w tej konfiguracji klient dziennika systemowego weryfikuje tożsamość serwera syslog za pośrednictwem certyfikatu. Komunikaty są wysyłane za pośrednictwem szyfrowanego kanału TLS. Aby uzyskać więcej informacji, zobacz Przekazywanie dziennika systemowego przy użyciu protokołu TCP, uwierzytelniania serwera i szyfrowania TLS.

  • Przekazywanie dziennika systemowego przy użyciu protokołu TCP i bez szyfrowania: w tej konfiguracji tożsamości klienta dziennika systemu i serwera syslog nie są weryfikowane. Komunikaty są wysyłane w postaci zwykłego tekstu za pośrednictwem protokołu TCP. Aby uzyskać więcej informacji, zobacz Przekazywanie dziennika systemowego przy użyciu protokołu TCP i bez szyfrowania.

  • Dziennik systemowy z protokołem UDP i bez szyfrowania: w tej konfiguracji tożsamości klienta dziennika systemu i serwera syslog nie są weryfikowane. Komunikaty są wysyłane w postaci zwykłego tekstu za pośrednictwem protokołu UDP. Aby uzyskać więcej informacji, zobacz Przekazywanie usługi Syslog przy użyciu protokołu UDP i brak szyfrowania.

    Ważne

    Aby chronić przed atakami typu man-in-the-middle i podsłuchiwaniem komunikatów, firma Microsoft zdecydowanie zaleca używanie protokołu TCP z uwierzytelnianiem i szyfrowaniem w środowiskach produkcyjnych. Wersja szyfrowania TLS zależy od uzgadniania między punktami końcowymi. Protokoły TLS 1.2 i TLS 1.3 są domyślnie obsługiwane.

Polecenia cmdlet do konfigurowania przekazywania dziennika systemowego

Konfigurowanie usługi przesyłania dalej dziennika systemowego wymaga dostępu do hosta fizycznego przy użyciu konta administratora domeny. Zestaw poleceń cmdlet programu PowerShell został dodany do wszystkich hostów lokalnych platformy Azure w celu kontrolowania zachowania usługi przesyłania dalej dziennika systemowego.

Polecenie Set-AzSSyslogForwarder cmdlet służy do ustawiania konfiguracji usługi przesyłania dalej dziennika systemowego dla wszystkich hostów. W przypadku powodzenia wystąpienie planu działania zostanie uruchomione w celu skonfigurowania agentów usługi przesyłania dalej dziennika systemowego na wszystkich hostach. Zostanie zwrócony identyfikator wystąpienia planu działania.

Użyj następującego polecenia cmdlet, aby przekazać informacje o serwerze syslog do usługi przesyłania dalej i skonfigurować protokół transportu, szyfrowanie, uwierzytelnianie i opcjonalny certyfikat używany między klientem a serwerem:

Set-AzSSyslogForwarder [-ServerName <String>] [-ServerPort <UInt16>] [-NoEncryption] [-SkipServerCertificateCheck | -SkipServerCNCheck] [-UseUDP] [-ClientCertificateThumbprint <String>] [-OutputSeverity {Default | Verbose}] [-Remove] 

Parametry polecenia cmdlet

Poniższa tabela zawiera parametry polecenia Set-AzSSyslogForwarder cmdlet:

Parametr Opis Type Wymagania
ServerName Nazwa FQDN lub adres IP serwera syslog. String Tak
ServerPort Numer portu, na który nasłuchuje serwer syslog. UInt16 Tak
NoEncryption Wymuś wysłanie komunikatów dziennika systemowego przez klienta w postaci zwykłego tekstu. Flaga Nie.
SkipServerCertificateCheck Pomiń walidację certyfikatu dostarczonego przez serwer syslog podczas początkowego uzgadniania protokołu TLS. Flaga Nie.
SkipServerCNCheck Pomiń walidację wartości nazwy pospolitej certyfikatu dostarczonego przez serwer syslog podczas początkowego uzgadniania protokołu TLS. Flaga Nie.
UseUDP Użyj dziennika systemowego z protokołem UDP jako protokołem transportu. Flaga Nie.
ClientCertificateThumbprint Odcisk palca certyfikatu klienta używanego do komunikowania się z serwerem syslog. String Nie
Niezależnie od danych wyjściowych Poziom rejestrowania danych wyjściowych. Wartości są wartościami domyślnymi lub pełnymi. Ustawienie domyślne obejmuje poziomy ważności: ostrzeżenie, krytyczne lub błąd. Pełne zawiera wszystkie poziomy ważności: pełne, informacyjne, ostrzegawcze, krytyczne lub błędy. String Nie
Usuń Usuń bieżącą konfigurację usługi przesyłania dalej dziennika syslog i zatrzymaj usługę przesyłania dalej syslog. Flaga Nie.

Przekazywanie dziennika systemowego przy użyciu protokołu TCP, wzajemnego uwierzytelniania (klienta i serwera) i szyfrowania TLS

W tej konfiguracji klient dziennika systemu w usłudze Azure Local przekazuje komunikaty do serwera dziennika systemu za pośrednictwem protokołu TCP przy użyciu szyfrowania TLS. Podczas początkowego uzgadniania klient sprawdza, czy serwer zapewnia prawidłowy, zaufany certyfikat. Klient udostępnia również certyfikat serwerowi jako dowód tożsamości.

Ta konfiguracja jest najbezpieczniejsza, ponieważ zapewnia pełną walidację tożsamości zarówno klienta, jak i serwera, i wysyła komunikaty za pośrednictwem zaszyfrowanego kanału.

Ważne

Firma Microsoft zaleca użycie tej konfiguracji dla środowisk produkcyjnych.

Aby skonfigurować usługę przesyłania dalej dziennika systemowego przy użyciu protokołu TCP, wzajemnego uwierzytelniania i szyfrowania TLS, skonfiguruj serwer i przekaż klientowi certyfikat do uwierzytelniania na serwerze.

Uruchom następujące polecenie cmdlet względem hosta fizycznego:

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -ClientCertificateThumbprint <Thumbprint of the client certificate>

Ważne

Certyfikat klienta musi zawierać klucz prywatny. Jeśli certyfikat klienta jest podpisany przy użyciu certyfikatu głównego z podpisem własnym, należy również zaimportować certyfikat główny.

Przekazywanie dziennika systemowego przy użyciu protokołu TCP, uwierzytelniania serwera i szyfrowania TLS

W tej konfiguracji usługa przesyłania dalej dziennika systemowego na platformie Azure lokalnie przekazuje komunikaty do serwera syslog za pośrednictwem protokołu TCP przy użyciu szyfrowania TLS. Podczas początkowego uzgadniania klient sprawdza również, czy serwer udostępnia prawidłowy, zaufany certyfikat.

Ta konfiguracja uniemożliwia klientowi wysyłanie komunikatów do niezaufanych miejsc docelowych. Protokół TCP przy użyciu uwierzytelniania i szyfrowania jest konfiguracją domyślną i reprezentuje minimalny poziom zabezpieczeń zalecany przez firmę Microsoft dla środowiska produkcyjnego.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>

Jeśli chcesz przetestować integrację serwera syslog z usługą przesyłania dalej dzienników lokalnych platformy Azure przy użyciu certyfikatu z podpisem własnym lub niezaufanym, użyj tych flag, aby pominąć weryfikację serwera wykonywaną przez klienta podczas początkowego uzgadniania.

  1. Pomiń walidację wartości nazwy pospolitej w certyfikacie serwera. Użyj tej flagi, jeśli podasz adres IP serwera syslog.

    Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> 
    -SkipServerCNCheck
    
  2. Pomiń walidację certyfikatu serwera.

    Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>  
    -SkipServerCertificateCheck
    

    Ważne

    Firma Microsoft zaleca, aby nie używać flagi -SkipServerCertificateCheck w środowiskach produkcyjnych.

Przekazywanie dziennika systemowego przy użyciu protokołu TCP i bez szyfrowania

W tej konfiguracji klient dziennika systemu w usłudze Azure Local przekazuje komunikaty do serwera syslog za pośrednictwem protokołu TCP bez szyfrowania. Klient nie weryfikuje tożsamości serwera ani nie dostarcza własnej tożsamości do serwera w celu weryfikacji.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening on> -NoEncryption

Ważne

Firma Microsoft zaleca, aby nie używać tej konfiguracji w środowiskach produkcyjnych.

Przekazywanie dziennika systemowego przy użyciu protokołu UDP i bez szyfrowania

W tej konfiguracji klient dziennika systemu w usłudze Azure Local przekazuje komunikaty do serwera syslog za pośrednictwem protokołu UDP bez szyfrowania. Klient nie weryfikuje tożsamości serwera ani nie dostarcza własnej tożsamości do serwera w celu weryfikacji.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -UseUDP

Protokół UDP bez szyfrowania jest najłatwiejszy do skonfigurowania, ale nie zapewnia żadnej ochrony przed atakami typu man-in-the-middle ani podsłuchiwanie komunikatów.

Ważne

Firma Microsoft zaleca, aby nie używać tej konfiguracji w środowiskach produkcyjnych.

Włączanie przekazywania dziennika systemowego

Uruchom następujące polecenie cmdlet, aby włączyć przekazywanie dziennika systemowego:

Enable-AzSSyslogForwarder [-Force]

Usługa przesyłania dalej dziennika systemowego zostanie włączona z zapisaną konfiguracją dostarczoną przez ostatnie pomyślne Set-AzSSyslogForwarder wywołanie. Polecenie cmdlet zakończy się niepowodzeniem, jeśli nie podano konfiguracji przy użyciu polecenia Set-AzSSyslogForwarder.

Wyłączanie przekazywania dziennika systemowego

Uruchom następujące polecenie cmdlet, aby wyłączyć przekazywanie dziennika systemowego:

Disable-AzSSyslogForwarder [-Force] 

Parametr dla Enable-AzSSyslogForwarder poleceń cmdlet i Disable-AzSSyslogForwarder :

Parametr Opis Type Wymagania
Force Jeśli zostanie określony, plan działania będzie zawsze wyzwalany, nawet jeśli stan docelowy jest taki sam jak bieżący. Może to być przydatne do zresetowania zmian poza pasmem. Flaga Nie.

Weryfikowanie konfiguracji dziennika systemowego

Po pomyślnym połączeniu klienta dziennika systemowego z serwerem syslog rozpoczniesz odbieranie powiadomień o zdarzeniach. Jeśli nie widzisz powiadomień, sprawdź konfigurację usługi przesyłania dalej dziennika systemu klastra, uruchamiając następujące polecenie cmdlet:

Get-AzSSyslogForwarder [-Local | -PerNode | -Cluster] 

Każdy host ma własnego agenta usługi przesyłania dalej dziennika systemowego, który używa lokalnej kopii konfiguracji klastra. Zawsze powinny być takie same jak konfiguracja klastra. Bieżącą konfigurację na każdym hoście można sprawdzić przy użyciu następującego polecenia cmdlet:

Get-AzSSyslogForwarder -PerNode 

Możesz również użyć następującego polecenia cmdlet, aby sprawdzić konfigurację na hoście, z którym masz połączenie:

Get-AzSSyslogForwarder -Local

Parametry polecenia cmdlet dla Get-AzSSyslogForwarder polecenia cmdlet:

Parametr Opis Type Wymagania
Lokalny Pokaż aktualnie używaną konfigurację na bieżącym hoście. Flaga Nie.
PerNode Pokaż aktualnie używaną konfigurację na każdym hoście. Flaga Nie.
Klaster Pokaż bieżącą konfigurację globalną na platformie Azure Local. Jest to zachowanie domyślne, jeśli nie podano żadnego parametru. Flaga Nie.

Usuwanie przekazywania dziennika systemowego

Uruchom następujące polecenie, aby usunąć konfigurację usługi przesyłania dalej dziennika systemowego i zatrzymać usługę przesyłania dalej dziennika systemowego:

Set-AzSSyslogForwarder -Remove 

Schemat komunikatów i dokumentacja dziennika zdarzeń

Poniższe materiały referencyjne zawierają dokumenty dotyczące schematu komunikatów dziennika systemowego i definicji zdarzeń.

Usługa przesyłania dalej dziennika systemowego infrastruktury lokalnej platformy Azure wysyła komunikaty sformatowane zgodnie z protokołem dziennika systemowego BSD zdefiniowanym w RFC3164. Format CEF służy również do formatowania ładunku komunikatu dziennika systemowego.

Każdy komunikat dziennika systemowego jest ustrukturyzowany na podstawie tego schematu: Priorytet (PRI) | Czas | Host | Ładunek CEF |

Część PRI zawiera dwie wartości: obiekt i ważność. Oba elementy zależą od typu komunikatu, takiego jak zdarzenie systemu Windows itp.

Następne kroki

Dowiedz się więcej na następujące tematy: