Sdílet prostřednictvím


Ingestování zpráv syslogu a CEF do Služby Microsoft Sentinel pomocí agenta služby Azure Monitor

V tomto článku se dozvíte, jak pomocí syslogu prostřednictvím konektorů AMA a COMMON Event Format (CEF) filtrovat a ingestovat syslog a zprávy CEF z počítačů s Linuxem, síťových zařízení a bezpečnostních zařízení. Další informace o těchto datových konektorech najdete v tématu Syslog a Common Event Format (CEF) prostřednictvím konektorů AMA pro Microsoft Sentinel.

Poznámka:

Container Insights podporuje automatické shromažďování událostí syslogu z uzlů Linuxu v clusterech AKS. Další informace najdete v kolekci Syslog pomocí Container Insights.

Požadavky

Než začnete, musíte mít nakonfigurované prostředky a příslušná oprávnění, jak je popsáno v této části.

Požadavky služby Microsoft Sentinel

Nainstalujte příslušné řešení Microsoft Sentinel a ujistěte se, že máte oprávnění k provedení kroků v tomto článku.

Požadavky pro předávání protokolů

Pokud shromažďujete zprávy z předávání protokolů, platí následující požadavky:

  • Abyste mohli shromažďovat protokoly, musíte mít určený virtuální počítač s Linuxem jako předávač protokolů.

  • Pokud váš nástroj pro předávání protokolů není virtuální počítač Azure, musí mít na něm nainstalovaného agenta Azure Arc Connected Machine .

  • Virtuální počítač pro předávání protokolů s Linuxem musí mít nainstalovaný Python 2.7 nebo 3. python --version Pomocí příkazu nebo python3 --version příkazu zkontrolujte. Pokud používáte Python 3, ujistěte se, že je nastavený jako výchozí příkaz na počítači, nebo spusťte skripty pomocí příkazu python3 místo pythonu.

  • Služba předávání protokolů musí mít povolenou syslog-ng funkci démon nebo rsyslog démon.

  • Informace o požadavcích na místo pro váš nástroj pro předávání protokolů najdete na srovnávacím testu výkonu agenta služby Azure Monitor. Můžete si také projít tento blogový příspěvek, který obsahuje návrhy pro škálovatelný příjem dat.

  • Zdroje protokolů, zabezpečovací zařízení a zařízení musí být nakonfigurované tak, aby odesílaly zprávy protokolu do démona syslogu syslogu, nikoli do místního démona syslogu.

Poznámka:

Při nasazování AMA do škálovací sady virtuálních počítačů (VMSS) důrazně doporučujeme použít nástroj pro vyrovnávání zatížení, který podporuje metodu kruhového dotazování, abyste zajistili distribuci zatížení napříč všemi nasazenými instancemi.

Požadavky na zabezpečení počítače

Nakonfigurujte zabezpečení počítače podle zásad zabezpečení vaší organizace. Nakonfigurujte například síť tak, aby odpovídala zásadám zabezpečení podnikové sítě, a změňte porty a protokoly v procesu démon tak, aby odpovídaly vašim požadavkům. Pokud chcete zlepšit konfiguraci zabezpečení počítače, zabezpečte virtuální počítač v Azure nebo si projděte tyto osvědčené postupy pro zabezpečení sítě.

Pokud vaše zařízení odesílají protokoly Syslog a CEF přes protokol TLS, protože například váš nástroj pro předávání protokolů je v cloudu, musíte nakonfigurovat démon syslogu (rsyslog nebo syslog-ng) pro komunikaci v protokolu TLS. Další informace naleznete v tématu:

Konfigurace datového konektoru

Proces nastavení pro Syslog prostřednictvím AMA nebo CEF (Common Event Format) prostřednictvím datových konektorů AMA zahrnuje následující kroky:

  1. Nainstalujte agenta Služby Azure Monitor a vytvořte pravidlo shromažďování dat (DCR) pomocí některé z následujících metod:
  2. Pokud shromažďujete protokoly z jiných počítačů pomocí nástroje pro předávání protokolů, spusťte v nástroji pro předávání protokolů skript "instalace" , abyste nakonfigurovali démona syslogu tak, aby naslouchal zprávám z jiných počítačů, a otevřete potřebné místní porty.

Vyberte příslušnou kartu pro pokyny.

Vytvoření pravidla shromažďování dat (DCR)

Začněte tím, že otevřete Syslog prostřednictvím AMA nebo CEF (Common Event Format) prostřednictvím datového konektoru AMA v Microsoft Sentinelu a vytvoříte pravidlo pro shromažďování dat (DCR).

  1. Pro Microsoft Sentinel na webu Azure Portal v části Konfigurace vyberte Datové konektory.
    Vyberte v portálu Defender možnost Microsoft Sentinel, poté > a Datové konektory.

  2. Pro syslog zadejte Syslog do vyhledávacího pole. Ve výsledcích vyberte Syslog prostřednictvím konektoru AMA.
    Do vyhledávacího pole zadejte CEF. Ve výsledcích vyberte formát CEF (Common Event Format) prostřednictvím konektoru AMA.

  3. V podokně podrobností vyberte Otevřít stránku konektoru .

  4. V oblasti Konfigurace vyberte +Vytvořit pravidlo shromažďování dat.

    Snímek obrazovky ukazující stránku konektoru AMA pro Syslog

    Snímek obrazovky zobrazující CEF přes stránku konektoru AMA

  5. Na kartě Základní :

    • Zadejte název DCR.
    • Vyberte své předplatné.
    • Vyberte skupinu prostředků, ve které chcete najít řadič domény.

    Snímek obrazovky zobrazující podrobnosti DCR na kartě Základní

  6. Vyberte Další: Prostředky >.

Definování prostředků virtuálního počítače

Na kartě Prostředky vyberte počítače, na kterých chcete nainstalovat AMA – v tomto případě počítač pro předávání protokolů. Pokud se váš nástroj pro předávání protokolů nezobrazí v seznamu, nemusí mít nainstalovaného agenta Azure Connected Machine.

  1. K vyhledání virtuálního počítače pro předávání protokolů použijte dostupné filtry nebo vyhledávací pole. Rozbalením předplatného v seznamu zobrazíte jeho skupiny prostředků a skupinu prostředků, aby se zobrazily její virtuální počítače.

  2. Vyberte virtuální počítač pro předávání protokolů, na který chcete nainstalovat AMA. Zaškrtávací políčko se zobrazí vedle názvu virtuálního počítače, když na něj najedete myší.

    Snímek obrazovky znázorňující, jak vybrat prostředky při nastavování DCR

  3. Zkontrolujte změny a vyberte Další: Shromáždit >.

Výběr zařízení a závažností

Mějte na paměti, že použití stejného zařízení pro syslog i zprávy CEF může vést k duplikaci příjmu dat. Další informace najdete v tématu Odstranění duplicit příjmu dat.

  1. Na kartě Shromáždit vyberte minimální úroveň protokolu pro každé zařízení. Když vyberete úroveň protokolu, Microsoft Sentinel shromažďuje protokoly pro vybranou úroveň a další úrovně s vyšší závažností. Pokud například vyberete LOG_ERR, Microsoft Sentinel shromažďuje protokoly pro úrovně LOG_ERR, LOG_CRIT, LOG_ALERT a LOG_EMERG .

    Snímek obrazovky znázorňující výběr úrovní protokolu při nastavování DCR

  2. Zkontrolujte výběry a vyberte Další: Zkontrolovat a vytvořit.

Kontrola a vytvoření pravidla

Po dokončení všech karet zkontrolujte, co jste zadali, a vytvořte pravidlo shromažďování dat.

  1. Na kartě Přehled a vytvoření vyberte Vytvořit.

    Snímek obrazovky znázorňující, jak zkontrolovat konfiguraci dcR a vytvořit ho

    Konektor nainstaluje agenta Azure Monitoru na počítače, které jste vybrali při vytváření DCR.

  2. Zkontrolujte oznámení na webu Azure Portal nebo na portálu Microsoft Defender a podívejte se, kdy se řadič domény vytvoří a jestli je agent nainstalovaný.

  3. Na stránce konektoru vyberte Aktualizovat a podívejte se na DCR zobrazený v seznamu.

Spusťte skript instalace.

Pokud používáte nástroj pro předávání protokolů, nakonfigurujte démon syslogu tak, aby naslouchal zprávům z jiných počítačů, a otevřete potřebné místní porty.

  1. Na stránce konektoru zkopírujte příkaz, který se zobrazí pod Spusťte následující příkaz pro instalaci a použití kolektoru CEF:

    Snímek obrazovky příkazového řádku na stránce konektoru

    Nebo ho zkopírujte odsud:

    sudo wget -O Forwarder_AMA_installer.py https://raw.githubusercontent.com/Azure/Azure-Sentinel/master/DataConnectors/Syslog/Forwarder_AMA_installer.py&&sudo python Forwarder_AMA_installer.py
    
  2. Přihlaste se k počítači pro předávání protokolů, na kterém jste právě nainstalovali AMA.

  3. Vložte příkaz, který jste zkopírovali v posledním kroku, a spusťte instalační skript.
    Skript nakonfiguruje proces démon rsyslog taksyslog-ng, aby používal požadovaný protokol a restartoval proces démon. Skript otevře port 514 pro naslouchání příchozím zprávům v protokolech UDP i TCP. Pokud chcete toto nastavení změnit, projděte si konfigurační soubor démona syslog podle typu démona spuštěného na počítači:

    • Rsyslog: /etc/rsyslog.conf
    • Syslog-ng: /etc/syslog-ng/syslog-ng.conf

    Pokud používáte Python 3 a není nastavený jako výchozí příkaz na počítači, nahraďte python3python ho vloženým příkazem. Viz požadavky pro předávání protokolů.

    Poznámka:

    Pokud se chcete vyhnout scénářům plného disku, ve kterých agent nemůže fungovat, doporučujeme nastavit konfigurace syslog-ng nebo rsyslog tak, aby neukládaly nepotřebné protokoly. Scénář Full Disk naruší funkci nainstalovaného AMA. Další informace najdete v tématu RSyslog nebo Syslog-ng.

  4. Zkontrolujte stav služby.

    Zkontrolujte stav služby AMA ve vašem službě pro předávání protokolů:

    sudo systemctl status azuremonitoragent.service
    

    Zkontrolujte stav služby rsyslog:

    sudo systemctl status rsyslog.service
    

    V případě prostředí syslog-ng zkontrolujte:

    sudo systemctl status syslog-ng.service
    

Konfigurace zabezpečovacího zařízení nebo zařízení

Pokyny ke konfiguraci zabezpečovacího zařízení nebo zařízení najdete v jednom z následujících článků:

Další informace o vašem spotřebiči nebo zařízení získáte od poskytovatele řešení.

Zkouška konektoru

Ověřte, že se do Microsoft Sentinelu přijímají zprávy z počítače s Linuxem nebo ze zabezpečovacích zařízení a appliance.

  1. Pokud chcete ověřit, že proces démon syslogu běží na portu UDP a že AMA naslouchá, spusťte tento příkaz:

     netstat -lnptv
    

    Na portu 514 by se měl zobrazit rsyslog proces démon nebo syslog-ng naslouchání.

  2. Pokud chcete zachytit zprávy odeslané z protokolovacího nástroje nebo připojeného zařízení, spusťte tento příkaz na pozadí:

    sudo tcpdump -i any port 514 or 28330 -A -vv &
    
  3. Po dokončení ověření zastavte tcpdump. Zadejte fga pak vyberte Ctrl+C.

Odesílání testovacích zpráv

Pokud chcete odesílat ukázkové zprávy, proveďte jeden z následujících kroků:

  1. nc Použijte nástroj netcat. V tomto příkladu nástroj čte data zasílaná příkazem echo s vypnutým přepínačem newline. Nástroj pak zapíše data na port 514 UDP na místním hostiteli bez časového limitu. Pokud chcete spustit nástroj netcat, možná budete muset nainstalovat jiný balíček.

    echo -n "<164>CEF:0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|1|rt=$common=event-formatted-receive_time" | nc -u -w0 localhost 514
    
  2. Použijte příkaz logger. Tento příklad zapíše zprávu do local 4 zařízení na úrovni Warningzávažnosti na port 514na místním hostiteli ve formátu CEF RFC. Příznaky -t a --rfc3164 příznaky se používají k dosažení souladu s očekávaným formátem RFC.

    logger -p local4.warn -P 514 -n 127.0.0.1 --rfc3164 -t CEF "0|Mock-test|MOCK|common=event-format-test|end|TRAFFIC|rt=$common=event-formatted-receive_time"
    

    K otestování Cisco ASA příjmu dat použijte následující příkaz:

    echo -n "<164>%ASA-7-106010: Deny inbound TCP src inet:1.1.1.1 dst inet:2.2.2.2" | nc -u -w0 localhost 514
    

    Po spuštění těchto příkazů dorazí zprávy na port 514 a přesměrují se na port 28330.

  3. Po odeslání testovacích zpráv odešlete dotaz do pracovního prostoru služby Log Analytics. Zobrazení protokolů v pracovním prostoru může trvat až 20 minut.

Pro protokoly CEF:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceProduct == "MOCK"

Záznamy protokolů pro Cisco ASA:

CommonSecurityLog
| where TimeGenerated > ago(1d)
| where DeviceVendor == "Cisco"
| where DeviceProduct == "ASA"

Další řešení potíží

Pokud se na portu 514 nezobrazuje žádný provoz nebo nejsou vaše testovací zprávy přijaty, podívejte se na Řešení potíží se Syslogem a CEF prostřednictvím konektorů AMA pro Microsoft Sentinel pro odstraňování problémů.