Condividi tramite


Gestire l'inoltro syslog per Azure locale

Si applica a: Locale di Azure, versione 23H2

Questo articolo descrive come configurare gli eventi di sicurezza da inoltrare a un sistema SIEM (Security Information and Event Management) gestito dal cliente usando il protocollo syslog per Azure Local, versione 23H2.

Usare l'inoltro syslog per l'integrazione con soluzioni di monitoraggio della sicurezza e per recuperare i registri eventi di sicurezza pertinenti per archiviarli per la conservazione nella propria piattaforma SIEM. Per altre informazioni sulle funzionalità di sicurezza in questa versione, vedere Funzionalità di sicurezza per Azure Local, versione 23H2.

Configurare l'inoltro syslog

Gli agenti di inoltro Syslog vengono distribuiti in ogni host locale di Azure per impostazione predefinita, pronti per la configurazione. Ogni agente inoltra gli eventi di sicurezza in formato syslog dall'host al server syslog configurato dal cliente.

Gli agenti di inoltro Syslog funzionano in modo indipendente l'uno dall'altro, ma possono essere gestiti tutti insieme in uno degli host. Usare i cmdlet di PowerShell con privilegi amministrativi in qualsiasi host per controllare il comportamento di tutti gli agenti di inoltro.

Il server d'inoltro syslog in Locale di Azure supporta le configurazioni seguenti:

  • Inoltro Syslog con TCP, autenticazione reciproca (client e server) e crittografia TLS: in questa configurazione, sia il server syslog che il client syslog verificano l'identità tra loro tramite certificati. I messaggi vengono inviati tramite un canale crittografato TLS. Per altre informazioni, vedere Inoltro Syslog con TCP, autenticazione reciproca (client e server) e crittografia TLS.

  • Inoltro Syslog con TCP, autenticazione server e crittografia TLS: in questa configurazione, il client syslog verifica l'identità del server syslog tramite un certificato. I messaggi vengono inviati tramite un canale crittografato TLS. Per altre informazioni, vedere Inoltro Syslog con TCP, autenticazione server e crittografia TLS.

  • Inoltro Syslog con TCP e nessuna crittografia: in questa configurazione, le identità del client syslog e del server syslog non vengono verificate. I messaggi vengono inviati in testo non crittografato su TCP. Per altre informazioni, vedere Inoltro Syslog con TCP e nessuna crittografia.

  • Syslog con UDP e nessuna crittografia: in questa configurazione, le identità del client syslog e del server syslog non vengono verificate. I messaggi vengono inviati in testo non crittografato tramite UDP. Per altre informazioni, vedere Inoltro Syslog con UDP e nessuna crittografia.

    Importante

    Per proteggersi da attacchi man-in-the-middle e intercettazioni dei messaggi, Microsoft consiglia vivamente di usare TCP con autenticazione e crittografia negli ambienti di produzione. La versione della crittografia TLS dipende dall'handshake tra gli endpoint. Entrambi, TLS 1.2 e TLS 1.3, sono supportati per impostazione predefinita.

Cmdlet per configurare l'inoltro Syslog

La configurazione del server d'inoltro syslog richiede l'accesso all'host fisico usando un account amministratore di dominio. È stato aggiunto un set di cmdlet di PowerShell a tutti gli host locali di Azure per controllare il comportamento del server d'inoltro syslog.

Il Set-AzSSyslogForwarder cmdlet viene usato per impostare la configurazione del server d'inoltro syslog per tutti gli host. In caso di esito positivo, verrà avviata un'istanza del piano di azione per configurare gli agenti del server d'inoltro syslog in tutti gli host. Verrà restituito l'ID istanza del piano di azione.

Usare il cmdlet seguente per passare le informazioni del server syslog al server d'inoltro e per configurare il protocollo di trasporto, la crittografia, l'autenticazione e il certificato facoltativo usato tra il client e il server:

Set-AzSSyslogForwarder [-ServerName <String>] [-ServerPort <UInt16>] [-NoEncryption] [-SkipServerCertificateCheck | -SkipServerCNCheck] [-UseUDP] [-ClientCertificateThumbprint <String>] [-OutputSeverity {Default | Verbose}] [-Remove] 

Parametri del cmdlet

La tabella seguente fornisce i parametri per il Set-AzSSyslogForwarder cmdlet :

Parametro Descrizione Type Obbligatorio
ServerName FQDN o indirizzo IP del server Syslog. String
ServerPort Numero di porta su cui è in ascolto il server Syslog. UInt16
NoEncryption Forzare il client a inviare messaggi Syslog in testo non crittografato. Contrassegno No
SkipServerCertificateCheck Ignorare la convalida del certificato fornito dal server Syslog durante l'handshake TLS iniziale. Contrassegno No
SkipServerCNCheck Ignorare la convalida del valore di nome comune del certificato fornito dal server Syslog durante l'handshake TLS iniziale. Contrassegno No
UseUDP Usare Syslog con UDP come protocollo di trasporto. Contrassegno No
ClientCertificateThumbprint Identificazione personale del certificato client usato per comunicare con il server syslog. Stringa No
OutputSeverity Livello di registrazione dell'output. I valori sono Default o Verbose. Il valore Default (predefinito) include i livelli di gravità avviso, critico o errore. Il valore Verbose (dettagliato) include tutti i livelli di gravità dettagliato, informativo, avviso, critico o errore. Stringa No
Rimuovi Rimuovere la configurazione corrente del server d'inoltro syslog e arrestare il server d'inoltro syslog. Contrassegno No

Inoltro Syslog con TCP, autenticazione reciproca (client e server) e crittografia TLS

In questa configurazione, il client syslog in Azure Local inoltra i messaggi al server syslog tramite TCP con crittografia TLS. Durante l'handshake iniziale, il client verifica che il server fornisca un certificato valido e attendibile. Al contempo, fornisce un certificato al server come prova della propria identità.

Questa configurazione è la più sicura perché fornisce la convalida completa dell'identità del client e del server e invia messaggi su un canale crittografato.

Importante

Microsoft consiglia di usare questa configurazione per gli ambienti di produzione.

Per configurare il server d'inoltro syslog con TCP, autenticazione reciproca e crittografia TLS, configurare il server e fornire il certificato al client per l'autenticazione nel server.

Eseguire il cmdlet seguente su un host fisico:

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -ClientCertificateThumbprint <Thumbprint of the client certificate>

Importante

Il certificato client deve contenere una chiave privata. Se il certificato client è firmato con un certificato radice autofirmato, è necessario importare anche il certificato radice.

Inoltro Syslog con TCP, autenticazione server e crittografia TLS

In questa configurazione, il server d'inoltro syslog in Locale di Azure inoltra i messaggi al server syslog tramite TCP con crittografia TLS. Durante l'handshake iniziale, il client verifica anche che il server fornisca un certificato valido e attendibile.

Questa configurazione impedisce al client di inviare messaggi a destinazioni non attendibili. TCP che usa l'autenticazione e la crittografia è la configurazione predefinita e rappresenta il livello minimo di sicurezza consigliato da Microsoft per un ambiente di produzione.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>

Se si vuole testare l'integrazione del server syslog con il server d'inoltro syslog locale di Azure usando un certificato autofirmato o non attendibile, usare questi flag per ignorare la convalida del server eseguita dal client durante l'handshake iniziale.

  1. Ignorare la convalida del valore Common Name nel certificato del server. Usare questo flag se si specifica un indirizzo IP per il server syslog.

    Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> 
    -SkipServerCNCheck
    
  2. Ignorare la convalida del certificato del server.

    Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening>  
    -SkipServerCertificateCheck
    

    Importante

    Microsoft consiglia di non usare il -SkipServerCertificateCheck flag negli ambienti di produzione.

Inoltro Syslog con TCP e nessuna crittografia

In questa configurazione, il client syslog in Azure Local inoltra i messaggi al server syslog su TCP senza crittografia. Il client non verifica l'identità del server, né fornisce la propria identità al server per la verifica.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening on> -NoEncryption

Importante

Microsoft consiglia di non usare questa configurazione negli ambienti di produzione.

Inoltro Syslog con UDP e nessuna crittografia

In questa configurazione, il client syslog in Azure Local inoltra i messaggi al server syslog tramite UDP, senza crittografia. Il client non verifica l'identità del server, né fornisce la propria identità al server per la verifica.

Set-AzSSyslogForwarder -ServerName <FQDN or IP address of syslog server> -ServerPort <Port number on which the syslog server is listening> -UseUDP

Anche se UDP senza crittografia è il più semplice da configurare, non fornisce alcuna protezione dagli attacchi man-in-the-middle o dall'intercettazione dei messaggi.

Importante

Microsoft consiglia di non usare questa configurazione negli ambienti di produzione.

Abilitare l'inoltro syslog

Eseguire il cmdlet seguente per abilitare l'inoltro syslog:

Enable-AzSSyslogForwarder [-Force]

Il server d'inoltro Syslog verrà abilitato con la configurazione archiviata fornita dall'ultima chiamata riuscita Set-AzSSyslogForwarder . Il cmdlet avrà esito negativo se non è stata fornita alcuna configurazione usando Set-AzSSyslogForwarder.

Disabilitare l'inoltro syslog

Eseguire il cmdlet seguente per disabilitare l'inoltro syslog:

Disable-AzSSyslogForwarder [-Force] 

Parametro per Enable-AzSSyslogForwarder i cmdlet e Disable-AzSSyslogForwarder :

Parametro Descrizione Type Obbligatorio
Force Se specificato, verrà sempre attivato un piano di azione anche se lo stato di destinazione è uguale a quello corrente. Questo può essere utile per reimpostare le modifiche fuori banda. Contrassegno No

Verificare l'installazione di syslog

Dopo aver connesso correttamente il client syslog al server syslog, si inizierà a ricevere le notifiche degli eventi. Se non vengono visualizzate notifiche, verificare la configurazione del server d'inoltro syslog del cluster eseguendo il cmdlet seguente:

Get-AzSSyslogForwarder [-Local | -PerNode | -Cluster] 

Ogni host ha un proprio agente di inoltro syslog che usa una copia locale della configurazione del cluster. Si prevede che siano sempre uguali alla configurazione del cluster. È possibile verificare la configurazione corrente in ogni host usando il cmdlet seguente:

Get-AzSSyslogForwarder -PerNode 

È anche possibile usare il cmdlet seguente per verificare la configurazione nell'host a cui si è connessi:

Get-AzSSyslogForwarder -Local

Parametri dei cmdlet per il Get-AzSSyslogForwarder cmdlet:

Parametro Descrizione Type Obbligatorio
Locale Mostra la configurazione attualmente usata nell'host corrente. Contrassegno No
PerNode Mostra la configurazione attualmente usata in ogni host. Contrassegno No
Cluster Mostra la configurazione globale corrente in Locale di Azure. Questo è il comportamento predefinito se non viene specificato alcun parametro. Contrassegno No

Rimuovere l'inoltro syslog

Eseguire il comando seguente per rimuovere la configurazione del server d'inoltro syslog e arrestare il server d'inoltro syslog:

Set-AzSSyslogForwarder -Remove 

Informazioni di riferimento sullo schema dei messaggi e sul registro eventi

Il materiale di riferimento seguente documenta lo schema dei messaggi syslog e le definizioni degli eventi.

Il server d'inoltro syslog dell'infrastruttura locale di Azure invia messaggi formattati in base al protocollo syslog BSD definito in RFC3164. CEF viene usato anche per formattare il payload del messaggio syslog.

Ogni messaggio syslog è strutturato in base a questo schema: Priorità (PRI) | Ora | Host | Payload CEF |

La parte PRI contiene due valori: struttura e gravità. Entrambi dipendono dal tipo di messaggio, ad esempio evento di Windows e così via.

Passaggi successivi

Altre informazioni su: