Wdrażanie usługi przesyłania dalej dzienników w celu pozyskiwania dzienników syslog i dzienników CEF w usłudze Microsoft Sentinel

Uwaga

W tym artykule odwołuje się do systemu CentOS — dystrybucji systemu Linux, która zbliża się do stanu zakończenia życia (EOL). Rozważ odpowiednie użycie i planowanie. Aby uzyskać więcej informacji, zobacz wskazówki dotyczące zakończenia życia systemu CentOS.

Aby pozyskać dziennik syslog i dzienniki CEF w usłudze Microsoft Sentinel, szczególnie z urządzeń i urządzeń, na których nie można bezpośrednio zainstalować agenta usługi Log Analytics, należy wyznaczyć i skonfigurować maszynę z systemem Linux, która będzie zbierać dzienniki z urządzeń i przekazywać je do obszaru roboczego usługi Microsoft Sentinel. Ta maszyna może być maszyną fizyczną lub wirtualną w środowisku lokalnym, maszyną wirtualną platformy Azure lub maszyną wirtualną w innej chmurze.

Ten komputer ma dwa składniki, które biorą udział w tym procesie:

  • Demon dziennika systemowego, rsyslog lub syslog-ng, który zbiera dzienniki.
  • Agent usługi Log Analytics (znany również jako agent pakietu OMS), który przekazuje dzienniki do usługi Microsoft Sentinel.

Korzystając z poniższego linku, uruchomisz skrypt na wyznaczonej maszynie, która wykonuje następujące zadania:

  • Instaluje agenta usługi Log Analytics dla systemu Linux (znanego również jako agent pakietu OMS) i konfiguruje go w następujących celach:

    • nasłuchiwanie komunikatów CEF z wbudowanego demona dziennika systemu Linux na porcie TCP 25226
    • bezpieczne wysyłanie komunikatów za pośrednictwem protokołu TLS do obszaru roboczego usługi Microsoft Sentinel, gdzie są analizowane i wzbogacone
  • Konfiguruje wbudowane demona dziennika systemowego systemu Linux (rsyslog.d/syslog-ng) w następujących celach:

    • nasłuchiwanie komunikatów dziennika systemowego z rozwiązań zabezpieczeń na porcie TCP 514
    • przekazywanie tylko komunikatów, które identyfikuje jako cef do agenta usługi Log Analytics na hoście lokalnym przy użyciu portu TCP 25226

Ważne

Agent usługi Log Analytics zostanie wycofany 31 sierpnia 2024 r. Jeśli używasz agenta usługi Log Analytics we wdrożeniu usługi Microsoft Sentinel, zalecamy rozpoczęcie planowania migracji do usługi AMA. Aby uzyskać więcej informacji, zobacz Migracja usługi AMA dla usługi Microsoft Sentinel.

Aby uzyskać informacje na temat wdrażania dzienników syslogu i/lub dzienników CEF za pomocą agenta usługi Azure Monitor, zapoznaj się z opcjami dzienników przesyłania strumieniowego w formacie CEF i Syslog w usłudze Microsoft Sentinel.

Wymagania wstępne

Każdy łącznik danych ma własny zestaw wymagań wstępnych. Wymagania wstępne mogą obejmować, że musisz mieć określone uprawnienia do obszaru roboczego, subskrypcji lub zasad platformy Azure. Możesz też spełnić inne wymagania dotyczące źródła danych partnera, z którym nawiązujesz połączenie.

Wymagania wstępne dotyczące każdego łącznika danych są wyświetlane na stronie odpowiedniego łącznika danych w usłudze Microsoft Sentinel.

Zainstaluj rozwiązanie produktu z centrum zawartości w usłudze Microsoft Sentinel. Jeśli produkt nie znajduje się na liście, zainstaluj rozwiązanie dla formatu Common Event Format. Aby uzyskać więcej informacji, zobacz Odnajdywanie gotowej zawartości usługi Microsoft Sentinel i zarządzanie nią.

Ważne

Wersje systemu operacyjnego mogą mieć różne daty i cykle życia pomocy technicznej. Zalecamy sprawdzenie oficjalnej dokumentacji każdej dystrybucji pod kątem najdokładniejszych i aktualnych dat wsparcia oraz daty zakończenia życia.

Maszyna musi spełniać następujące wymagania:

  • Sprzęt (fizyczny/wirtualny)

    • Maszyna z systemem Linux musi mieć co najmniej 4 rdzenie procesora CPU i 8 GB pamięci RAM.

      Uwaga

      • Pojedyncza maszyna przekazująca dziennik z powyższą konfiguracją sprzętu i używająca demona rsyslog ma obsługiwaną pojemność do 8500 zdarzeń na sekundę (EPS).
  • System operacyjny

    • CentOS 7 i 8 (nie 6), w tym wersje pomocnicze (64-bitowe/32-bitowe)
    • Amazon Linux 2 (tylko 64-bitowy)
    • Oracle Linux 7, 8 (64-bitowy/32-bitowy)
    • Red Hat Enterprise Linux (RHEL) Server 7 i 8 (nie 6), w tym wersje pomocnicze (64-bitowe/32-bitowe)
    • Debian GNU/Linux 8 i 9 (64-bitowy/32-bitowy)
    • Ubuntu Linux 20.04 LTS (tylko wersja 64-bitowa)
    • SUSE Linux Enterprise Server 12, 15 (tylko 64-bitowy)
  • Wersje demona

    • Rsyslog: v8
    • Syslog-ng: 2.1 - 3.22.1
  • Pakiety

    • Na maszynie z systemem Linux musi być zainstalowany język Python 2.7 lub 3 .
      python --version Użyj polecenia orpython3 --version, aby sprawdzić.
    • Musisz mieć pakiet GNU Wget .
  • Obsługa protokołu RFC usługi Syslog

    • Syslog RFC 3164
    • Syslog RFC 5424
  • Konfiguracja

    • Musisz mieć podwyższone uprawnienia (sudo) na wyznaczonej maszynie z systemem Linux.
    • Przed zainstalowaniem agenta usługi Log Analytics maszyna z systemem Linux nie może być połączona z żadnymi obszarami roboczymi platformy Azure.
  • Data

    • W pewnym momencie tego procesu może być potrzebny identyfikator obszaru roboczego i klucz podstawowy obszaru roboczego usługi Microsoft Sentinel. Można je znaleźć w ustawieniach obszaru roboczego w obszarze Zarządzanie agentami.

Zagadnienia dotyczące zabezpieczeń

Pamiętaj, aby skonfigurować zabezpieczenia maszyny zgodnie z zasadami zabezpieczeń organizacji. Możesz na przykład skonfigurować sieć tak, aby dostosować je do zasad zabezpieczeń sieci firmowej i zmienić porty i protokoły w demonie, aby dopasować je do wymagań. Aby poprawić konfigurację zabezpieczeń maszyny, możesz skorzystać z poniższych instrukcji: Bezpieczna maszyna wirtualna na platformie Azure, Najlepsze rozwiązania dotyczące zabezpieczeń sieci.

Jeśli urządzenia wysyłają dzienniki syslog i CEF za pośrednictwem protokołu TLS (ponieważ na przykład usługa przesyłania dalej dzienników znajduje się w chmurze), należy skonfigurować demona dziennika systemowego (rsyslog lub syslog-ng) w celu komunikowania się w protokole TLS. Aby uzyskać szczegółowe informacje, zobacz następującą dokumentację:

Uruchamianie skryptu wdrażania

  1. W usłudze Microsoft Sentinel wybierz pozycję Łączniki danych.

  2. Wybierz łącznik dla produktu z galerii łączników. Jeśli produkt nie znajduje się na liście, wybierz pozycję Common Event Format (CEF).

  3. W okienku szczegółów łącznika wybierz pozycję Otwórz stronę łącznika.

  4. Na stronie łącznika w instrukcjach w sekcji 1.2 Zainstaluj moduł zbierający CEF na maszynie z systemem Linux skopiuj link podany w obszarze Uruchom następujący skrypt, aby zainstalować i zastosować moduł zbierający CEF.
    Jeśli nie masz dostępu do tej strony, skopiuj link z poniższego tekstu (kopiowanie i wklejanie identyfikatora obszaru roboczego i klucza podstawowego z góry zamiast symboli zastępczych):

    sudo wget -O cef_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/CEF/cef_installer.py&&sudo python cef_installer.py [WorkspaceID] [Workspace Primary Key]
    
  5. Wklej link lub tekst do wiersza polecenia w usłudze przesyłania dalej dziennika i uruchom go.

  6. Gdy skrypt jest uruchomiony, upewnij się, że nie otrzymujesz żadnych komunikatów o błędach ani ostrzeżeniach.

  7. Skonfiguruj urządzenie do wysyłania komunikatów CEF.

    Uwaga

    Używanie tej samej maszyny do przekazywania zarówno zwykłych komunikatów dziennika systemowego , jak i komunikatów CEF

    Jeśli planujesz używać tej maszyny usługi przesyłania dalej dzienników do przekazywania komunikatów dziennika systemowego oraz formatu CEF, w celu uniknięcia duplikowania zdarzeń do tabel Syslog i CommonSecurityLog:

    1. Na każdej maszynie źródłowej, która wysyła dzienniki do usługi przesyłania dalej w formacie CEF, należy edytować plik konfiguracji syslog, aby usunąć obiekty używane do wysyłania komunikatów CEF. W ten sposób obiekty wysyłane w formacie CEF nie będą również wysyłane w dzienniku systemowym. Aby uzyskać szczegółowe instrukcje dotyczące tego, jak to zrobić, zobacz Konfigurowanie dziennika systemowego w agencie systemu Linux.

    2. Na tych maszynach należy uruchomić następujące polecenie, aby wyłączyć synchronizację agenta z konfiguracją dziennika systemowego w usłudze Microsoft Sentinel. Dzięki temu zmiana konfiguracji w poprzednim kroku nie zostanie zastąpiona.
      sudo su omsagent -c 'python /opt/microsoft/omsconfig/Scripts/OMS_MetaConfigHelper.py --disable'

Objaśniono skrypt wdrażania

Poniżej znajduje się opis polecenia po poleceniu akcji skryptu wdrażania.

Wybierz demona dziennika systemowego, aby wyświetlić odpowiedni opis.

  1. Pobieranie i instalowanie agenta usługi Log Analytics:

    • Pobiera skrypt instalacji agenta usługi Log Analytics (OMS) dla systemu Linux.

      wget -O onboard_agent.sh https://raw.githubusercontent.com/Microsoft/OMS-Agent-for-Linux/
          master/installer/scripts/onboard_agent.sh
      
    • Instaluje agenta usługi Log Analytics.

      sh onboard_agent.sh -w [workspaceID] -s [Primary Key] -d opinsights.azure.com
      
  2. Ustawienie konfiguracji agenta usługi Log Analytics w celu nasłuchiwania na porcie 25226 i przekazywania komunikatów CEF do usługi Microsoft Sentinel:

    • Pobiera konfigurację z repozytorium GitHub agenta usługi Log Analytics.

      wget -O /etc/opt/microsoft/omsagent/[workspaceID]/conf/omsagent.d/security_events.conf
          https://raw.githubusercontent.com/microsoft/OMS-Agent-for-Linux/master/installer/conf/
          omsagent.d/security_events.conf
      
  3. Konfigurowanie demona dziennika systemowego:

    • Otwiera port 514 na potrzeby komunikacji TCP przy użyciu pliku /etc/rsyslog.confkonfiguracji dziennika systemowego .

    • Konfiguruje demona do przekazywania komunikatów CEF do agenta usługi Log Analytics na porcie TCP 25226 przez wstawienie specjalnego pliku security-config-omsagent.conf konfiguracji do katalogu /etc/rsyslog.d/demona dziennika systemowego .

      security-config-omsagent.conf Zawartość pliku:

      if $rawmsg contains "CEF:" or $rawmsg contains "ASA-" then @@127.0.0.1:25226 
      
  4. Ponowne uruchomienie demona dziennika systemowego i agenta usługi Log Analytics:

    • Uruchamia ponownie demona rsyslog.

      service rsyslog restart
      
    • Uruchamia ponownie agenta usługi Log Analytics.

      /opt/microsoft/omsagent/bin/service_control restart [workspaceID]
      
  5. Weryfikowanie mapowania pola Komputer zgodnie z oczekiwaniami:

    • Gwarantuje, że pole Komputer w źródle dziennika systemowego jest prawidłowo mapowane w agencie usługi Log Analytics przy użyciu następującego polecenia:

      grep -i "'Host' => record\['host'\]"  /opt/microsoft/omsagent/plugin/filter_syslog_security.rb
      
    • Jeśli wystąpi problem z mapowaniem, skrypt wygeneruje komunikat o błędzie kierujący Cię do ręcznego uruchomienia następującego polecenia (zastosowanie identyfikatora obszaru roboczego zamiast symbolu zastępczego). Polecenie zapewni poprawne mapowanie i uruchom ponownie agenta.

      sudo sed -i -e "/'Severity' => tags\[tags.size - 1\]/ a \ \t 'Host' => record['host']" -e "s/'Severity' => tags\[tags.size - 1\]/&,/" /opt/microsoft/omsagent/plugin/filter_syslog_security.rb && sudo /opt/microsoft/omsagent/bin/service_control restart [workspaceID]
      

Następne kroki

W tym dokumencie przedstawiono sposób wdrażania agenta usługi Log Analytics w celu połączenia urządzeń CEF z usługą Microsoft Sentinel. Aby dowiedzieć się więcej o usłudze Microsoft Sentinel, zobacz następujące artykuły: