Inserire messaggi syslog e CEF da Microsoft Sentinel con l'agente di monitoraggio Azure

Questo articolo illustra come usare Syslog tramite AMA e Common Event Format (CEF) tramite connettori AMA per filtrare e inserire messaggi syslog e CEF da computer Linux, dispositivi di rete e appliance di sicurezza. Prima di iniziare, esaminare la sezione Prerequisiti per le autorizzazioni, gli agenti e la configurazione del server d'inoltro dei log necessari. Per altre informazioni su questi connettori dati, vedere Syslog e Common Event Format (CEF) tramite connettori AMA per Microsoft Sentinel.

Nota

Container Insights supporta la raccolta automatica degli eventi syslog dai nodi Linux nei cluster AKS. Altre informazioni sulla raccolta Syslog con Container Insights.

Prerequisiti

Prima di iniziare, esaminare i Microsoft Sentinel seguenti, il server d'inoltro dei log e i prerequisiti di sicurezza del computer per assicurarsi di avere le risorse configurate e le autorizzazioni appropriate assegnate come descritto nelle sezioni prerequisiti di Microsoft Sentinel, Prerequisiti del server d'inoltro dei log e Prerequisiti di sicurezza del computer.

prerequisiti Microsoft Sentinel

Installare la soluzione Microsoft Sentinel appropriata e assicurarsi di disporre delle autorizzazioni necessarie per completare la procedura descritta in questo articolo.

Prerequisiti del server d'inoltro di log

Se si raccolgono messaggi da un server d'inoltro di log, si applicano i prerequisiti seguenti:

  • Per raccogliere i log, è necessario disporre di una macchina virtuale Linux designata come server d'inoltro di log.

  • Se lo strumento di inoltro dei log non è una macchina virtuale di Azure, deve avere installato l'agente Connected Machine di Azure Arc .

  • Nella macchina virtuale del server d'inoltro del log Linux deve essere installato Python 2.7 o 3. Usare il python --version comando o python3 --version per controllare. Se si usa Python 3, assicurarsi che sia impostato come comando predefinito nel computer oppure eseguire script con il comando 'python3' anziché 'python'.

  • L'inoltratore di log deve avere abilitato il demone syslog-ng o rsyslog.

  • Per i requisiti di spazio per il server d'inoltro del log, vedere Monitoraggio di Azure Agent Performance Benchmark.For space requirements for your log forwarder, refer to the Monitoraggio di Azure Agent Performance Benchmark. È anche possibile consultare soluzioni di progettazione per ottenere l'inserimento dati scalabile in Microsoft Sentinel.

  • Le origini di log, i dispositivi di sicurezza e le appliance devono essere configurati per inviare i messaggi di log al daemon syslog del server di inoltro del log anziché al daemon syslog locale.

Nota

Quando si distribuisce AMA in un set di scalabilità di macchine virtuali (VMSS), si consiglia vivamente di usare un bilanciatore del carico che supporti il metodo round-robin per garantire la distribuzione del carico tra tutte le istanze distribuite.

Prerequisiti per la sicurezza del computer

Configurare la sicurezza del computer in base ai criteri di sicurezza dell'organizzazione. Ad esempio, configurare la rete in modo da allinearsi ai criteri di sicurezza di rete aziendali e modificare le porte e i protocolli nel daemon in base ai requisiti. Per migliorare la configurazione della sicurezza del computer, proteggere la macchina virtuale in Azure o esaminare queste procedure consigliate per la sicurezza di rete.

Se i dispositivi inviano log syslog e CEF tramite TLS perché, ad esempio, il server d'inoltro del log si trova nel cloud, è necessario configurare il daemon syslog (rsyslog o syslog-ng) per comunicare in TLS. Per altre informazioni, vedere:

Configurare il connettore dati

Il processo di installazione per Syslog tramite AMA o COMMON Event Format (CEF) tramite connettori dati AMA include i passaggi seguenti:

  1. Installare l'agente di monitoraggio Azure e creare una regola di raccolta dati usando uno dei metodi seguenti:
  2. Se si raccolgono log da altri computer usando un server d'inoltro di log, eseguire lo script di "installazione" nel server d'inoltro del log per configurare il daemon syslog per l'ascolto dei messaggi provenienti da altri computer e per aprire le porte locali necessarie.

Selezionare la scheda appropriata per istruzioni.

Creare una regola di raccolta dati (DCR)

Per iniziare, aprire Syslog tramite AMA o Common Event Format (CEF) tramite il connettore dati AMA in Microsoft Sentinel e creare una regola di raccolta dati (DCR).

  1. Per Microsoft Sentinel nel portale di Azure, in Configurazione selezionare Connettori dati.
    Per Microsoft Sentinel nel portale di Defender, selezionare Microsoft Sentinel>Configurazione>connettori dati.

  2. Per syslog digitare Syslog nella casella Di ricerca . Nei risultati selezionare il connettore Syslog via AMA.
    Per CEF digitare CEF nella casella Di ricerca . Dai risultati selezionare il formato CEF (Common Event Format) tramite il connettore AMA.

  3. Selezionare Apri pagina connettore nel riquadro dei dettagli.

  4. Nell'area Configurazione selezionare +Crea regola di raccolta dati.

    Screenshot che mostra la pagina Syslog tramite connettore AMA.

    Screenshot che mostra la pagina del connettore CEF via AMA.

  5. Nella scheda Base :

    • Digitare un nome DCR.
    • Selezionare la sottoscrizione.
    • Selezionare il gruppo di risorse in cui si vuole individuare il DCR.

    Screenshot che mostra i dettagli di DCR nella scheda Base.

  6. Selezionare Avanti: Risorse >.

Definire le risorse della macchina virtuale

Nella scheda Risorse selezionare i computer in cui si vuole installare l'AMA. Per questa procedura, selezionare il computer del server d'inoltro dei log. Se il server di inoltro dei log non compare nell'elenco, potrebbe non avere installato l'agente Azure Connected Machine.

  1. Usare i filtri o la casella di ricerca disponibili per trovare la macchina virtuale del server d'inoltro di log. Espandi una sottoscrizione nell'elenco per visualizzarne i gruppi di risorse e espandi un gruppo di risorse per visualizzarne le macchine virtuali.

  2. Selezionare la macchina virtuale del server d'inoltro di log in cui si vuole installare l'AMA. La casella di controllo viene visualizzata accanto al nome della macchina virtuale quando si passa il puntatore del mouse su di essa.

    Screenshot che mostra come selezionare le risorse durante la configurazione del DCR.

  3. Rivedi le modifiche e seleziona Avanti: Raccolta >.

Seleziona impianti e livelli di gravità

Tenere presente che l'uso della stessa funzionalità per i messaggi syslog e CEF potrebbe comportare la duplicazione dell'inserimento dei dati. Per altre informazioni, vedere Evitare la duplicazione dell'inserimento dati.

  1. Nella scheda Raccolta selezionare il livello di log minimo per ogni funzionalità. Quando si seleziona un livello di log, Microsoft Sentinel raccoglie i log per il livello selezionato e altri livelli con gravità più elevata. Ad esempio, se si seleziona LOG_ERR, Microsoft Sentinel raccoglie i log per i livelli LOG_ERR, LOG_CRIT, LOG_ALERT e LOG_EMERG.

    Screenshot che mostra come selezionare i livelli di log durante la configurazione di DCR.

  2. Esaminare le selezioni e selezionare Avanti: Rivedi e crea.

Rivedi e crea la regola

Dopo aver completato tutte le schede, esaminare gli elementi immessi e creare la regola di raccolta dati.

  1. Nella scheda Rivedi e crea selezionare Crea.

    Screenshot che mostra come esaminare la configurazione del DCR e crearla.

    Il connettore installa l'agente di monitoraggio Azure nei computer selezionati durante la creazione del DCR.

  2. Controllare le notifiche nel portale di Azure o nel portale di Microsoft Defender per verificare quando viene creato il DCR e viene installato l'agente.

  3. Selezionare Aggiorna nella pagina del connettore per visualizzare il DCR visualizzato nell'elenco.

Eseguire lo script di "installazione"

Se si usa un server d'inoltro di log, configurare il daemon syslog per l'ascolto dei messaggi provenienti da altri computer e aprire le porte locali necessarie.

  1. Nella pagina del connettore copiare la riga di comando visualizzata in Eseguire il comando seguente per installare e applicare l'agente di raccolta CEF:.

    Screenshot della riga di comando nella pagina del connettore.

    In alternativa, copiarlo da qui:

    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. Accedere al computer del server d'inoltro dei log in cui è installato l'AMA.

  3. Incollare il comando di installazione copiato dalla pagina del connettore per avviare lo script di installazione.
    Lo script configura il rsyslog daemon o syslog-ng in modo che usi il protocollo richiesto e riavvia il daemon. Lo script apre la porta 514 per l'ascolto dei messaggi in ingresso nei protocolli UDP e TCP. Per modificare questa impostazione, fare riferimento al file di configurazione del daemon syslog in base al tipo di daemon in esecuzione nel computer:

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

    Se si usa Python 3 e non è impostato come comando predefinito nel computer, sostituire python3 con python nel comando incollato. Vedere Prerequisiti del server d'inoltro di log.

    Nota

    Per evitare scenari di disco completo in cui l'agente non può funzionare, è consigliabile impostare la syslog-ng configurazione o rsyslog per non archiviare i log non necessario. Uno scenario di disco pieno compromette il funzionamento dell'AMA installato. Per altre informazioni, vedere RSyslog o Syslog-ng.

  4. Controllare lo stato del servizio.

    Controlla lo stato del servizio AMA sul tuo server d'inoltro dei log:

    sudo systemctl status azuremonitoragent.service
    

    Controllare lo stato del servizio rsyslog:

    sudo systemctl status rsyslog.service
    

    Per gli ambienti syslog-ng, controllare:

    sudo systemctl status syslog-ng.service
    

Configurare il dispositivo o l'appliance di sicurezza

Per istruzioni su come configurare il dispositivo o l'appliance di sicurezza, vedere uno degli articoli seguenti:

Per altre informazioni sull'appliance o sul dispositivo, contattare il provider di soluzioni.

Testare il connettore

Verificare che i messaggi di log dal computer Linux o dai dispositivi di sicurezza e dalle appliance vengano inseriti in Microsoft Sentinel.

  1. Per verificare che il daemon syslog sia in ascolto sulla porta UDP necessaria e che ama sia pronto per ricevere i log nel server d'inoltro Linux, eseguire il comando seguente per visualizzare i listener attivi e le porte associate:

     netstat -lnptv
    

    Dovresti vedere il daemon rsyslog o syslog-ng in ascolto sulla porta 514.

  2. Per acquisire i messaggi inviati da un logger o da un dispositivo connesso, eseguire questo comando in background:

    sudo tcpdump -i any port 514 or 28330 -A -vv &
    
  3. Dopo aver completato la convalida, arrestare tcpdump. Digitare fge quindi selezionare CTRL+C.

Inviare messaggi di test

Per inviare messaggi demo, completare uno dei passaggi seguenti:

  1. Usare l'utilità nc netcat. In questo esempio l'utilità legge i dati inviati tramite il echo comando con l'opzione newline disattivata. L'utilità scrive quindi i dati nella porta 514 UDP nel localhost senza timeout. Per eseguire l'utilità netcat, potrebbe essere necessario installare un altro pacchetto.

    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. Usare il logger comando . In questo esempio, il messaggio viene scritto nella facility local 4, al livello di gravità Warning, sulla porta 514, sull'host locale, nel formato CEF RFC. I -t flag e --rfc3164 vengono usati per rispettare il formato RFC previsto.

    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"
    

    Testare l'inserimento di Cisco ASA usando il comando seguente:

    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
    

    Dopo aver eseguito questi comandi, i messaggi arrivano sulla porta 514 e vengono inoltrati alla porta 28330.

  3. Dopo aver inviato messaggi di test, eseguire una query sull'area di lavoro Log Analytics. La visualizzazione dei log nell'area di lavoro può richiedere fino a 20 minuti.

Per i log CEF:

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

Per i log di Cisco ASA:

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

Risoluzione dei problemi aggiuntiva

Se il traffico sulla porta 514 non viene visualizzato o i messaggi di test non vengono inseriti, vedere Risolvere i problemi relativi a Syslog e CEF tramite i connettori AMA per Microsoft Sentinel per la risoluzione dei problemi.