Come configurare un server Syslog personalizzato
Introduzione
L'opzione “Server Syslog personalizzato” consente di inviare gli eventi di sistema e i registri di audit di 3CX a qualsiasi collettore Syslog standard (come rsyslog, syslog-ng o Kiwi Syslog). Questa opzione viene solitamente utilizzata per i server di registrazione on-premise o per i sistemi di gestione delle informazioni e degli eventi di sicurezza (SIEM) all'interno della rete locale.
Passo 1: Preparare il server Syslog
Prima di configurare 3CX, assicurarsi che il server Syslog di destinazione sia pronto a ricevere traffico esterno.
- Identificare l'IP/nome host: Annotare l'indirizzo IP interno o esterno del proprio server di registrazione.
- Aprire le porte del firewall: Assicurarsi che il firewall del server consenta il traffico in entrata dal proprio PBX sulla porta scelta (di solito 514 per Syslog standard).
- Abilitare la ricezione remota: verificare che il servizio Syslog (ad es. rsyslog) sia configurato per “ascoltare” i messaggi remoti, poiché molti sono impostati di default solo per il locale.
- Consultare la sezione “Installazione di Rsyslog su Debian” qui sotto per iniziare.
Passo 2: Configurare il Syslog remoto di 3CX
- Nella Admin console di 3CX, accedere a “Admin” > “Integrazioni” > “Syslog remoto”.
- Nel menu a tendina “Provider di registrazione remota”, selezionare “Server Syslog personalizzato”.
- Indirizzo del server Syslog: Inserisci l'indirizzo IP o il nome di dominio completo (FQDN) del tuo server.
- Porta: Inserisci il numero di porta su cui il tuo server è in ascolto (il valore predefinito è 514, ma controlla la configurazione del tuo server).
- Protocollo di trasporto: Seleziona il protocollo richiesto dal tuo server:
- UDP: Il più comune per Syslog; veloce ma non garantisce la consegna.
- TCP: Più affidabile in quanto conferma la ricezione dei pacchetti.
- TLS: Crittografa i log durante il transito (richiede un certificato valido sul lato ricevente).
- mTLS: Nel caso in cui si selezioni TLS, caricare facoltativamente il certificato client e la chiave richiesti se il proprio server syslog è configurato per verificare anche il PBX
- Nella sezione “Dati da esportare”, selezionare i log desiderati:
- Avvisi di sistema: Problemi critici relativi all'utilizzo delle risorse di sistema e allo stato di salute (richiede che le soglie di avviso siano abilitate e configurate in Admin > Sistema > Avvisi).
- Avvisi 3CX: Eventi specifici del PBX come lo stato dei trunk, i servizi interrotti o l'inserimento in blacklist di indirizzi IP.
- Log di audit: Una cronologia delle impostazioni modificate dagli amministratori.
- Cliccare su “Salva” nella parte superiore della pagina.
Passo 3: Verifica della connessione
- Click the Test button at the top of the 3CX Remote Syslog page. 3CX will send a standardized test message to your server.
- Sul tuo server syslog, controlla i file di log (ad es. /var/log/syslog su Linux)per confermare l'arrivo del messaggio di test. In genere apparirà con un identificatore 3CX Hello.
Se, ad esempio, desideri monitorare i messaggi del tuo server syslog per i messaggi in arrivo da “mypbx.3cx-example.com”:
root@mysyslog.3cx-example.com:~# tail -f /var/log/syslog | grep mypbx.3cx-example.com
2026-05-21T10:55:52+03:00 mypbx.3cx-example.com SyslogIntegrationTest 3CX says 'hello' to Custom
2026-05-21T11:05:47+03:00 mypbx.3cx-example.com EventLog {"id":257,"timestamp":"2026-05-21T08:05:47.0770000Z","message":"3CX Transcription Engine connection lost – transcription of voicemails and calls suspended","template":"3CX Transcription Engine connection lost – transcription of voicemails and calls suspended","params":[""],"source":"Web Manager","type":2,"event_id":50042,"group_name":"System wide"}
2026-05-21T11:16:50+03:00 mypbx.3cx-example.com SyslogIntegrationTest 3CX says 'hello' to Custom
Parametri personalizzati per implementazioni avanzate
Per gli ambienti in cui le impostazioni predefinite non sono del tutto adeguate, 3CX mette a disposizione il parametro SYSLOG_MESSAGE_FORMAT.
3CX supporta entrambi i principali standard Syslog ed è possibile passare da uno all'altro. Per impostazione predefinita, 3CX utilizza RFC5424, il formato moderno e più strutturato preferito dalla maggior parte dei SIEM attuali.
Se il tuo collettore è più vecchio o stai standardizzando su un formato legacy, imposta il parametro su RFC3164 e 3CX formatterà i messaggi in uscita di conseguenza. Per riferimento, ecco come si presenta ogni formato nella pratica:
- RFC3164: <191>Dec 10 11:59:56 mypbx.3cx-example.com SyslogIntegrationTest: 3CX says 'hello' to SyslogServer
- RFC5424: <191>1 2026-01-15T14:06:50+02:00 mypbx.3cx-example.com SyslogIntegrationTest - - - 3CX says 'hello' to SyslogServer
In entrambi i casi, <191> indica la priorità del messaggio, il timestamp è espresso in UTC, mypbx.3cx-example.com è il nome completo (FQDN) del centralino e il tag dell'applicazione indica la fonte dell'evento. Tra i possibili tag dell'applicazione figurano SyslogIntegrationTest, EventLog, AuditLog e Telemetry. Tutto ciò che segue costituisce il contenuto del messaggio.
Installazione di Rsyslog su Debian
- Accedi via SSH al tuo computer Debian ed esegui i seguenti comandi per installare e abilitare rsyslog
sudo apt update
sudo apt install rsyslog
sudo systemctl enable rsyslog
sudo systemctl start rsyslog
- Modifica il file di configurazione principale di rsyslog
nano /etc/rsyslog.conf
- Aggiungi o rimuovi il commento dalle seguenti righe a seconda del protocollo che desideri supportare e salva il file (ad es. UDP/TCP)
# provides UDP syslog reception
module(load="imudp")
input(type="imudp" port="514")
# provides TCP syslog reception
module(load="imtcp")
input(type="imtcp" port="514")
- Riavvia il servizio rsyslog affinché le modifiche abbiano effetto:
sudo systemctl restart rsyslog
Ultimo aggiornamento
Questo documento è stato aggiornato il 2 giugno 2026
https://www.3cx.it/doc/custom-syslog-server/
