Pokročilá správa kolektoru protokolů

Tento článek popisuje, jak nakonfigurovat pokročilé možnosti pro kolektory protokolů Cloud Discovery pro Defender for Cloud Apps.

Služba Defender for Cloud Apps cloud discovery se nadále zaměřuje na základní formáty brány firewall. Změny protokolů předávaných na úrovni brány firewall nemusí dál fungovat nebo můžou způsobit problémy s analýzou. Pokud zjistíte chyby tohoto typu, doporučujeme dál používat základní formát brány firewall nebo používat možnosti s vlastním kolektorem protokolů. Další informace najdete v tématu Použití vlastního analyzátoru protokolů.

Tento článek popisuje, jak upravit konfiguraci pro Cloud Discovery Docker v Defenderu for Cloud Apps.

Úprava konfigurace FTP kolektoru protokolů

Pomocí těchto kroků v následujících částech upravte konfiguraci pro Váš Defender for Cloud Discovery Docker.

Ověření verze kolektoru protokolů

Pokud chcete ověřit verzi kolektoru protokolů, která je aktuálně nainstalovaná ve vašem systému, připojte se k hostiteli kolektoru protokolů a spusťte:

cat /var/adallom/versions | grep columbus-

Změna hesla FTP

Tento postup popisuje, jak změnit heslo použité pro přístup k souborům kolektoru protokolů:

  1. Připojení hostitele kolektoru protokolů a spusťte:

    docker exec -it <collector name> pure-pw passwd <ftp user>
    
  2. Zadejte nové heslo a pak ho znovu zadejte, abyste ho potvrdili.

  3. Spuštěním následujícího příkazu tuto změnu použijte:

    docker exec -it <collector name> pure-pw mkdb
    

Měli byste být schopni zobrazit následující obsah:

  • run_logs
  • ssl_update
  • config.json

Přizpůsobení souborů certifikátů

Tento postup popisuje, jak přizpůsobit soubory certifikátů používané pro zabezpečená připojení k instanci Dockeru Cloud Discovery.

  1. Otevřete klienta FTP a připojte se k hostiteli kolektoru protokolů.

  2. Přejděte do ssl_update adresáře a nahrajte nové soubory certifikátů, včetně následujících souborů:

    Typ přijímače Požadované soubory
    FTP - pure-ftpd.pem: Zahrnuje data klíče a certifikátu.
    Syslog - ca.pem: Certifikát certifikační autority, který byl použit k podepsání certifikátu klienta.
    - server-key.pem a server-cert.pem: Certifikát a klíč kolektoru protokolů

    Zprávy Syslogu se odesílají přes protokol TLS do kolektoru protokolů, což vyžaduje vzájemné ověřování TLS, včetně ověřování certifikátů klienta i serveru.

    Názvy souborů jsou povinné. Pokud některý ze souborů chybí, aktualizace se nezdaří.

  3. V okně terminálu spusťte:

    docker exec -t <collector name> update_certs
    

    Výstup by se měl podobat následujícímu kódu:

    root@DockerPlayground:~# docker exec -t columbus update_certs
    rsyslog: stopped
    rsyslog: started
    ftpd: stopped
    ftpd: started
    root@DockerPlayground:~#
    
  4. V okně terminálu spusťte:

    docker exec <collector name> chmod -R 700 /etc/ssl/private/
    

Povolení kolektoru protokolů za proxy serverem

Pokud běžíte za proxy serverem, kolektor protokolů může mít problémy s odesíláním dat do Defenderu for Cloud Apps. Může k tomu dojít například proto, že kolektor protokolů nedůvěřuje kořenové certifikační autoritě proxy serveru a nemůže se připojit k Microsoft Defenderu for Cloud Apps, aby načetl jeho konfiguraci nebo nahrál přijaté protokoly.

Následující postupy popisují, jak povolit kolektor protokolů za proxy serverem.

Tip

Můžete také chtít změnit certifikáty používané kolektorem protokolů pro Syslog nebo FTP nebo vyřešit problémy s připojením z bran firewall a proxy serverů ke kolektoru protokolů. Další informace naleznete v tématu Úprava konfigurace FTP kolektoru protokolů.

Nastavení kolektoru protokolů za proxy serverem

Ujistěte se, že jste provedli nezbytné kroky ke spuštění Dockeru na počítači s Windows nebo Linuxem a úspěšně jste stáhli image Dockeru Defender for Cloud Apps na hostitelský počítač.

Další informace najdete v tématu Konfigurace automatického nahrávání protokolů pro průběžné sestavy.

Ověření vytváření kontejneru kolektoru protokolů Dockeru

Ověřte, že byl kontejner vytvořen a spuštěný. V prostředí spusťte:

docker ps

Zobrazený výstup by měl vypadat přibližně takto:

Snímek obrazovky se spuštěným kontejnerem Dockeru

Zkopírování certifikátu kořenové certifikační autority proxy serveru do kontejneru

Z virtuálního počítače zkopírujte certifikát certifikační autority do kontejneru Defender for Cloud Apps. V následujícím příkladu má kontejner název Ubuntu-LogCollector a certifikát certifikační autority má název Proxy-CA.crt.

Následující příkaz zkopíruje certifikát do složky ve spuštěném kontejneru. Spusťte příkaz na hostiteli Ubuntu:

docker cp Proxy-CA.crt Ubuntu-LogCollector:/var/adallom/ftp/discovery

Nastavení konfigurace pro práci s certifikátem certifikační autority

  1. Přejděte do kontejneru. Spuštěním následujícího příkazu otevřete Bash v kontejneru kolektoru protokolů:

    docker exec -it Ubuntu-LogCollector /bin/bash
    
  2. V okně Bash uvnitř kontejneru přejděte do složky Java jre . Pokud se chcete vyhnout chybě cesty související s verzí, použijte následující příkaz:

    cd "$(find /opt/jdk/*/jre -name "bin" -printf '%h' -quit)"
    cd bin
    
  3. Importujte kořenový certifikát, který jste zkopírovali dříve, ze složky zjišťování do úložiště klíčů Java a definujte heslo.

    Výchozí heslo je changeit. Další informace naleznete v tématu Změna hesla java keystore.

    ./keytool --import --noprompt --trustcacerts --alias SelfSignedCert --file /var/adallom/ftp/discovery/Proxy-CA.crt --keystore ../lib/security/cacerts --storepass <password>
    
  4. Ověřte, že se certifikát správně naimportoval do úložiště klíčů certifikační autority. Spuštěním následujícího příkazu vyhledejte alias, který jste zadali během importu (SelfSignedCert):

    ./keytool --list --keystore ../lib/security/cacerts | grep self
    

Měl by se zobrazit importovaný certifikát certifikační autority proxy serveru. Příklad:

Snímek obrazovky s rozhraním keytool

Omezení IP adres odesílané zpráv syslogu do kolektoru protokolů v Linuxu

Pokud chcete zabezpečit image Dockeru a zajistit, aby do kolektoru protokolů mohly odesílat zprávy syslogu jenom jedna IP adresa, vytvořte na hostitelském počítači pravidlo tabulky IP, které umožní vstupní provoz a v závislosti na nasazení zahodí provoz přicházející přes konkrétní porty, například TCP/601 nebo UDP/514.

Následující příkaz ukazuje příklad vytvoření pravidla tabulky IP, které lze přidat do hostitelského počítače. Toto pravidlo tabulky umožňuje IP adrese 1.2.3.4 připojit se ke kontejneru kolektoru protokolů přes port TCP 601 a odstranit všechna ostatní připojení pocházející z jiných IP adres přes stejný port.

iptables -I DOCKER-USER \! --src 1.2.3.4 -m tcp -p tcp --dport 601 -j DROP

Nastavení kolektoru protokolů pro spuštění s novou konfigurací

Kontejner je teď připravený.

Spusťte příkaz collector_config pomocí tokenu rozhraní API, který jste použili při vytváření kolektoru protokolů. Příklad:

Snímek obrazovky s dialogovým oknem Vytvořit kolektor protokolů

Při spuštění příkazu zadejte vlastní token rozhraní API, například collector_config abcd1234abcd1234abcd1234abcd1234 ${CONSOLE} ${COLLECTOR}

Příklad:

Snímek obrazovky s příkladem aktualizace konfigurace

Kolektor protokolů teď může komunikovat s Defenderem for Cloud Apps. Po odeslání dat do Defenderu for Cloud Apps se stav kolektoru protokolů změní z stavu V pořádku na Připojení ed. Příklad:

Snímek obrazovky se stavem nahrání

Poznámka:

Pokud potřebujete aktualizovat konfiguraci kolektoru protokolů, musíte například přidat nebo odebrat zdroj dat, obvykle musíte kontejner odstranit a provést předchozí kroky znovu.

Abyste tomu předešli, můžete nástroj collector_config znovu spustit s novým tokenem rozhraní API vygenerovaným na portálu Defender for Cloud Apps.

Změna hesla java keystore

  1. Zastavte server Java KeyStore.

  2. Otevřete prostředí Bash uvnitř kontejneru a přejděte do složky appdata/conf .

  3. Pokud chcete změnit heslo úložiště klíčů serveru, spusťte:

    keytool -storepasswd -new newStorePassword -keystore server.keystore
    -storepass changeit
    

    Výchozí heslo serveru je changeit.

  4. Pokud chcete změnit heslo certifikátu, spusťte:

    keytool -keypasswd -alias server -keypass changeit -new newKeyPassword -keystore server.keystore -storepass newStorePassword
    

    Výchozí alias serveru je server.

  5. V textovém editoru otevřete soubor server-install\conf\server\secured-installed.properties . Přidejte následující řádky kódu a uložte změny:

    1. Zadejte nové heslo Java KeyStore pro server: server.keystore.password=newStorePassword
    2. Zadejte nové heslo certifikátu pro server: server.key.password=newKeyPassword
  6. Spusťte server.

Přesun kolektoru protokolů do jiného datového oddílu v Linuxu

Mnoho společností musí přesunout data do samostatného oddílu. Tento postup popisuje, jak přesunout image kolektoru protokolů Dockeru pro Defender for Cloud Apps do datového oddílu na hostiteli s Linuxem.

Tento postup popisuje přesun dat do oddílu označovaného jako úložiště dat a předpokládá, že jste už oddíl připojili. Příklad:

Seznam oddílů Linuxu

Přidání a konfigurace nového oddílu na hostiteli s Linuxem není v oboru tohoto průvodce.

Přesunutí kolektoru protokolů do jiného oddílu:

  1. Zastavte službu Dockeru. Run (Spuštění):

    service docker stop
    
  2. Přesuňte data kolektoru protokolů do nového oddílu. Run (Spuštění):

    mv /var/lib/docker /datastore/docker
    
  3. Odeberte starý adresář úložiště Dockeru (/var/lib/docker) a vytvořte symbolický odkaz na nový adresář (/datastore/docker). Run (Spuštění):

    rm -rf /var/lib/docker && ln -s /datastore/docker /var/lib/
    
  4. Spusťte službu Dockeru. Run (Spuštění):

    service docker start
    
  5. Volitelně můžete ověřit stav kolektoru protokolů. Run (Spuštění):

    docker ps
    

Kontrola využití disku kolektoru protokolů v Linuxu

Tento postup popisuje, jak zkontrolovat využití a umístění disku kolektoru protokolů.

  1. Určete cestu k adresáři, kde jsou uložena data kolektoru protokolů. Run (Spuštění):

    docker inspect <collector_name> | grep WorkDir
    

    Příklad:

    Snímek obrazovky s identifikací adresáře kolektoru protokolů

  2. Získejte velikost na disku kolektoru protokolů pomocí identifikované cesty bez přípony /work. Run (Spuštění):

    du -sh /var/lib/docker/overlay2/<log_collector_id>/
    

    Snímek obrazovky s identifikací velikosti kolektoru protokolů na disku

    Poznámka:

    Pokud potřebujete znát jenom velikost disku, můžete místo toho použít následující příkaz: docker ps -s

Přesunutí kolektoru protokolů do přístupného hostitele

V regulovaných prostředích může být blokovaný přístup ke službě Docker Hubs, kde je hostovaná image kolektoru protokolů. To brání defenderu for Cloud Apps v importu dat z kolektoru protokolů a dá se vyřešit přesun image kolektoru protokolů do přístupného hostitele.

Tento postup popisuje, jak stáhnout image kolektoru protokolů pomocí počítače, který má přístup ke službě Docker Hub a importovat ji do cílového hostitele.

Staženou image je možné importovat buď v privátním úložišti, nebo přímo na hostiteli. Tento postup popisuje, jak stáhnout image kolektoru protokolů do počítače s Windows a pak pomocí WinSCP přesunout kolektor protokolů do cílového hostitele.

Požadavky

  1. Ujistěte se, že máte na hostiteli nainstalovaný Docker. Použijte například jeden z následujících souborů ke stažení:

  2. Po stažení nainstalujte operační systém pomocí průvodce offline instalací Dockeru.

    Spusťte proces exportováním image kolektoru protokolů a následným importem image do cílového hostitele.

Export image kolektoru protokolů z Docker Hubu

Následující postupy popisují, jak exportovat image kolektoru protokolů pomocí Linuxu nebo Windows.

Export image v Linuxu

  1. Na počítači s Linuxem, který má přístup ke službě Docker Hub, spusťte následující příkaz, kterým nainstalujete Docker a stáhnete image kolektoru protokolů.

    curl -o /tmp/MCASInstallDocker.sh https://adaprodconsole.blob.core.windows.net/public-files/MCASInstallDocker.sh && chmod +x /tmp/MCASInstallDocker.sh; /tmp/MCASInstallDocker.sh
    
  2. Export image kolektoru protokolů Run (Spuštění):

    docker save --output /tmp/mcasLC.targ mcr.microsoft.com/mcas/logcollector
    chmod +r /tmp/mcasLC.tar
    

    Důležité

    Nezapomeňte použít výstupní parametr k zápisu do souboru místo stDOUT.

  3. Stáhněte image kolektoru protokolů do počítače s Windows pomocí C:\mcasLogCollector\ WinSCP. Příklad:

    Snímek obrazovky se stažením kolektoru protokolů do počítače s Windows

Export image ve Windows

  1. Na počítači s Windows 10, který má přístup ke službě Docker Hub, nainstalujte Docker Desktop.

  2. Stáhněte image kolektoru protokolů. Run (Spuštění):

    docker login -u caslogcollector -p C0llector3nthusiast
    docker pull mcr.microsoft.com/mcas/logcollector
    
  3. Export image kolektoru protokolů Run (Spuštění):

    docker save --output C:\mcasLogCollector\mcasLC.targ mcr.microsoft.com/mcas/logcollector
    

    Důležité

    Nezapomeňte použít výstupní parametr k zápisu do souboru místo stDOUT.

Import a načtení image kolektoru protokolů do cílového hostitele

Tento postup popisuje, jak přenést exportovanou image do cílového hostitele.

  1. Nahrajte image kolektoru protokolů do cílového hostitele v části /tmp/. Příklad:

    Snímek obrazovky s nahráním kolektoru protokolů do cílového hostitele

  2. Na cílovém hostiteli naimportujte image kolektoru protokolů do úložiště imagí Dockeru. Run (Spuštění):

    docker load --input /tmp/mcasLC.tar
    

    Příklad:

    Snímek obrazovky importu image kolektoru protokolů do úložiště Dockeru

  3. Volitelně ověřte, že se import úspěšně dokončil. Run (Spuštění):

    docker image ls
    

    Příklad:

    Snímek obrazovky s ověřením úspěšného importu kolektoru protokolů

    Teď můžete pokračovat vytvořením kolektoru protokolů pomocí image z cílového hostitele.

Definování vlastních portů pro příjemce Syslog a FTP pro kolektory protokolů v Linuxu

Některé organizace musí definovat vlastní porty pro služby Syslog a FTP.

Když přidáte zdroj dat, kolektory protokolů Defender for Cloud Apps používají ke naslouchání protokolům přenosů z jednoho nebo více zdrojů dat konkrétní čísla portů.

Následující tabulka uvádí výchozí naslouchací porty pro příjemce:

Typ přijímače Porty
Syslog * UDP/514 - UDP/51x
* TCP/601 – TCP/60x
FTP * TCP/21

Pomocí následujících kroků definujte vlastní porty:

  1. Na portálu Microsoft Defender vyberte Nastavení. Pak zvolte Cloud Apps.

  2. V části Cloud Discovery vyberte Automatické nahrávání protokolů. Pak vyberte kartu Kolektory protokolů.

  3. Na kartě Kolektory protokolů přidejte nebo upravte kolektor protokolů a po aktualizaci zdrojů dat zkopírujte příkaz spustit z dialogového okna. Příklad:

    Zkopírujte příkaz spustit z průvodce kolektorem protokolů.

    Pokud se používá, příkaz zadaný průvodce nakonfiguruje kolektor protokolů tak, aby používal porty 514/udp a 515/udp. Příklad:

    (echo <credentials>) | docker run --name LogCollector1 -p 514:514/udp -p 515:515/udp -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='10.0.0.100'" -e "PROXY=" -e "SYSLOG=true" -e "CONSOLE=machine.us2.portal.cloudappsecurity.com" -e "COLLECTOR=LogCollector1" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
    

    Příklad:

    Snímek obrazovky s příkazem spuštěným v průvodci kolektorem protokolů

  4. Před použitím příkazu na hostitelském počítači upravte příkaz tak, aby používal vlastní porty. Pokud chcete například nakonfigurovat kolektor protokolů tak, aby používal porty UDP 414 a 415, změňte příkaz následujícím způsobem:

    (echo <credentials>) | docker run --name LogCollector1 -p 414:514/udp -p 415:515/udp -p 21:21 -p 20000-20099:20000-20099 -e "PUBLICIP='10.0.0.100'" -e "PROXY=" -e "SYSLOG=true" -e "CONSOLE=machine.us2.portal.cloudappsecurity.com" -e "COLLECTOR=LogCollector1" --security-opt apparmor:unconfined --cap-add=SYS_ADMIN --restart unless-stopped -a stdin -i mcr.microsoft.com/mcas/logcollector starter
    

    Příklad:

    Snímek obrazovky s přizpůsobeným příkazem pro spuštění

    Poznámka:

    Upraví se jenom mapování Dockeru. Interně přiřazené porty se nemění a umožňují zvolit libovolný port naslouchání na hostiteli.

Ověření formátu provozu a protokolu přijatého kolektorem protokolů v Linuxu

V některých případech může být potřeba prozkoumat problémy, jako jsou následující:

  • Kolektory protokolů přijímají data: Ověřte, že kolektory protokolů přijímají zprávy Syslog z vašich zařízení a že brány firewall neblokují.
  • Přijatá data jsou ve správném formátu protokolu: Ověřte formát protokolu, který vám pomůže vyřešit chyby analýzy porovnáním formátu protokolu očekávaného programem Defender for Cloud Apps a formátem odeslaným vaším zařízením.

Pomocí následujících kroků ověřte, že kolektory protokolů přijímají provoz:

  1. Přihlaste se ke svému serveru, který je hostitelem kontejneru Dockeru.

  2. Pomocí některé z následujících metod ověřte, že kolektor protokolů přijímá zprávy Syslog:

    • K analýze síťového provozu na portu 514 použijte tcpdump nebo podobný příkaz:

      tcpdump -Als0 port 514
      

      Pokud je všechno správně nakonfigurované, měli byste vidět síťový provoz ze zařízení. Příklad:

      Snímek obrazovky s analýzou síťového provozu přes tcpdump

    • K analýze síťového provozu na hostitelském počítači použijte příkaz netcat nebo podobný příkaz:

      1. Nainstalujte netcat a wget.

      2. Stáhněte si ukázkový soubor protokolu z XDR v programu Microsoft Defender. V případě potřeby rozbalte soubor protokolu.

        1. V XDR v programu Microsoft Defender v části Cloud Apps vyberte Akce>Cloud Discovery Vytvořit sestavu snímků Cloud Discovery.>

        2. Vyberte Zdroj dat, ze kterého chcete odeslat soubory protokolu.

        3. Vyberte Zobrazit a ověřte, že klikněte pravým tlačítkem na Stáhnout ukázkový protokol a zkopírujte odkaz adresy URL.

        4. Vyberte Zavřít>zrušit.

      3. Run (Spuštění):

        wget <URL_address_to_sample_log>
        
      4. Spuštěním streamujte netcat data do kolektoru protokolů.

        cat <path_to_downloaded_sample_log>.log | nc -w 0 localhost <datasource_port>
        

      Pokud je kolektor správně nakonfigurovaný, data protokolu se nacházejí v souboru zpráv a krátce potom se nahrají na portál Defender for Cloud Apps.

    • Prozkoumejte relevantní soubory v kontejneru Dockeru pro Defender for Cloud Apps:

      1. Přihlaste se ke kontejneru. Run (Spuštění):

        docker exec -it <Container Name> bash
        
      2. Určete, jestli se zprávy Syslog zapisují do souboru zpráv. Run (Spuštění):

        cat /var/adallom/syslog/<your_log_collector_port>/messages
        

      Pokud je všechno správně nakonfigurované, měli byste vidět síťový provoz ze zařízení. Příklad:

      Snímek obrazovky s analýzou provozu pomocí příkazu kočky

      Poznámka:

      Tento soubor bude dál zapsán, dokud nedosáhne velikosti 40 kB. Příklad:

  3. Zkontrolujte protokoly nahrané do Defenderu for Cloud Apps v /var/adallom/discoverylogsbackup adresáři. Příklad:

    Zkontrolujte nahrané soubory protokolu.

  4. Ověřte formát protokolu přijatý kolektorem protokolů tak, že porovnáte zprávy uložené v /var/adallom/discoverylogsbackup ukázkovém formátu protokolu poskytnutém v průvodci vytvořením kolektoru protokolů v programu Defender for Cloud Apps.

Zápis výstupu souboru zpráv do místního souboru

Pokud chcete použít vlastní ukázkový protokol, ale nemáte přístup k zařízení, použijte následující příkazy k zápisu výstupu souboru zpráv , který se nachází v adresáři syslog kolektoru protokolů, do místního souboru na hostiteli:

docker exec CustomerLogCollectorName tail -f -q /var/adallom/syslog/<datasource_port>/messages > /tmp/log.log

Porovnejte výstupní soubor (/tmp/log.log) se zprávami uloženými /var/adallom/discoverylogsbackup v adresáři.

Aktualizace verze kolektoru protokolů

Při aktualizaci kolektoru protokolů:

  • Před instalací nové verze nezapomeňte zastavit kolektor protokolů a odebrat aktuální image.
  • Po instalaci nové verze aktualizujte soubory certifikátů.

Další kroky

Pokud narazíte na nějaké problémy, jsme tady, abychom vám pomohli. Pokud chcete získat pomoc nebo podporu k problému s produktem, otevřete lístek podpory.