Sdílet prostřednictvím


Pokročilá správa kolektoru protokolů

Tento článek popisuje, jak nakonfigurovat rozšířené možnosti pro Defender for Cloud Apps kolektory protokolů cloud discovery.

Defender for Cloud Apps cloud discovery se nadále zaměřuje na základní formáty brány firewall. Změny protokolů, které se přesměrovávají na úrovni brány firewall, nemusí nadále fungovat nebo můžou způsobit problémy s analýzou. Pokud najdete 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 dockeru Defender for Cloud Apps cloud discovery.

Úprava konfigurace FTP kolektoru protokolů

Pomocí těchto kroků v následujících částech upravte konfiguraci dockeru Defender for Cloud Apps cloud discovery.

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 následující příkaz:

cat /var/adallom/versions | grep columbus-

Změna hesla FTP

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

  1. Připojte se k hostiteli kolektoru protokolů a spusťte příkaz:

    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 použijte změnu:

    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átu, včetně následujících souborů:

    Typ příjemce Požadované soubory
    File-transfer protocol - 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 do kolektoru protokolů odesílají přes protokol TLS, který vyžaduje vzájemné ověřování tls, včetně ověřování klientských i serverových certifikátů.

    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 používáte proxy server, kolektor protokolů může mít problémy s odesíláním dat do Defender for Cloud Apps. K tomu může 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 Defender 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 najdete 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 Defender for Cloud Apps image Dockeru do hostitelského počítače.

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

Ověření vytvoření kontejneru kolektoru protokolů Dockeru

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

docker ps

Mělo by se zobrazit něco podobného jako v následujícím výstupu:

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

Zkopírujte do kontejneru certifikát kořenové certifikační autority proxy serveru.

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. Na hostiteli Ubuntu spusťte příkaz:

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ě 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 najdete v tématu Změna hesla k úložišti klíčů Java.

    ./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
    

Zobrazí se váš importovaný certifikát certifikační autority proxy serveru.

Omezení IP adres odesílajících zprávy syslogu do kolektoru protokolů v Linuxu

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

Následující příkaz ukazuje příklad vytvoření pravidla tabulky IP adres, které je možné 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 přes stejný port vypustit všechna ostatní připojení přicházející z jiných IP adres.

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

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

Kontejner je teď připravený.

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

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říklady:

Snímek obrazovky s příkladem aktualizace konfigurace

Kolektor protokolů teď může komunikovat s Defender for Cloud Apps. Po odeslání dat do Defender for Cloud Apps se stav kolektoru protokolů změní z V pořádku na Připojeno. Příklady:

Snímek obrazovky se stavem nahrávání

Poznámka

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

Abyste se tomu vyhnuli, 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 k úložišti klíčů Java

  1. Zastavte server Java KeyStore.

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

  3. Pokud chcete změnit heslo úložiště klíčů serveru, spusťte následující příkaz:

    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 následující příkaz:

    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 k úložišti klíčů Java pro server: server.keystore.password=newStorePassword
    2. Zadejte nové heslo certifikátu pro server: server.key.password=newKeyPassword
  6. Spusťte server.

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

Mnoho společností má požadavek na přesun dat do samostatného oddílu. Tento postup popisuje, jak přesunout image kolektoru protokolů Dockeru 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 oddíl už připojili. Příklady:

Seznam oddílů Linuxu

Přidání a konfigurace nového oddílu na hostiteli s Linuxem není v rámci této příručky.

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

  1. Zastavte službu Dockeru. Běžet:

    service docker stop
    
  2. Přesuňte data kolektoru protokolů do nového oddílu. Běžet:

    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). Běžet:

    rm -rf /var/lib/docker && ln -s /datastore/docker /var/lib/
    
  4. Spusťte službu Docker. Běžet:

    service docker start
    
  5. Volitelně můžete ověřit stav kolektoru protokolů. Běžet:

    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. Identifikujte cestu k adresáři, ve kterém jsou uložená data kolektoru protokolů. Běžet:

    docker inspect <collector_name> | grep WorkDir
    

    Příklady:

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

  2. Pomocí identifikované cesty bez přípony /work získejte velikost na disku kolektoru protokolů. Běžet:

    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ů na přístupného hostitele

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

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

Staženou image je možné importovat buď do privátního úložiště, 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í použijte k instalaci operačního systému průvodce offline instalací Dockeru.

    Začněte proces exportem image kolektoru protokolů a importujte image do cílového hostitele.

Export image kolektoru protokolů z Docker Hub

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 k Docker Hub, spuštěním následujícího příkazu nainstalujte Docker a stáhněte 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. Exportujte image kolektoru protokolů. Běžet:

    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 si image kolektoru protokolů do počítače s Windows pomocí C:\mcasLogCollector\ winSCP. Příklady:

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

Export obrázku ve Windows

  1. Na Windows 10 počítači, který má přístup k Docker Hub, nainstalujte Docker Desktop.

  2. Stáhněte si image kolektoru protokolů. Běžet:

    docker login -u caslogcollector -p C0llector3nthusiast
    docker pull mcr.microsoft.com/mcas/logcollector
    
  3. Exportujte image kolektoru protokolů. Běžet:

    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říklady:

    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. Běžet:

    docker load --input /tmp/mcasLC.tar
    

    Příklady:

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

  3. Volitelně můžete ověřit, že se import úspěšně dokončil. Běžet:

    docker image ls
    

    Příklady:

    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 Syslogu a FTP pro kolektory protokolů v Linuxu

Některé organizace mají požadavek na definování vlastních portů pro služby Syslog a FTP.

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

V následující tabulce jsou uvedeny výchozí naslouchací porty pro příjemce:

Typ příjemce Porty
Syslog * UDP/514 - UDP/51x
* TCP/601 - TCP/60x
File-transfer protocol * TCP/21

Pomocí následujícího postupu 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říklady:

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

    Pokud se použije tak, jak je uvedeno, nakonfiguruje příkaz poskytnutý průvodcem kolektor protokolů tak, aby používal porty 514/udp a 515/udp. Příklady:

    (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říklady:

    Snímek obrazovky se spuštěním příkazu z průvodce 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 takto:

    (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říklady:

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

    Poznámka

    Upraví se jenom mapování Dockeru. Interně přiřazené porty se nemění, což vám umožní zvolit jakýkoli port pro 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 tyto:

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

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

  1. Přihlaste se k 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 syslogu:

    • 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říklady:

      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 Microsoft Defender XDR. V případě potřeby rozbalte soubor protokolu.

        1. V Microsoft Defender XDR v části Cloudové aplikace vyberteAkce>Cloud Discovery>Vytvořit sestavu snímku Cloud Discovery.

        2. Vyberte zdroj dat , ze kterého chcete nahrát soubory protokolu.

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

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

      3. Běžet:

        wget <URL_address_to_sample_log>
        
      4. Spuštěním příkazu netcat streamujte 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 poté se nahrají na portál Defender for Cloud Apps.

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

      1. Přihlaste se ke kontejneru. Běžet:

        docker exec -it <Container Name> bash
        
      2. Zjistěte, jestli se do souboru zpráv zapisují zprávy syslogu. Běžet:

        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říklady:

      Snímek obrazovky s analýzou provozu pomocí příkazu cat

      Poznámka

      Tento soubor se bude dál zapisovat do, dokud nedosáhne velikosti 40 kB. Příklady:

  3. Zkontrolujte protokoly, které se nahrály do Defender for Cloud Apps v adresáři/var/adallom/discoverylogsbackup. Příklady:

    Zkontrolujte nahrané soubory protokolu.

  4. Ověřte formát protokolu přijatý kolektorem protokolů porovnáním zpráv uložených v /var/adallom/discoverylogsbackup s ukázkovým formátem protokolu, který poskytuje průvodce Defender for Cloud Apps vytvoření kolektoru protokolů.

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í, pomocí následujících příkazů zapište výstup souboru zpráv 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 v adresáři /var/adallom/discoverylogsbackup .

Aktualizace verze kolektoru protokolů

Při aktualizaci kolektoru protokolů:

Další kroky

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