Graylog - Centralizzazione Log
Graylog centralizza i log syslog di tutti gli host del homelab. Gira come stack nativo systemd su monitoring (SBC ARM).
Nota: il deployment precedente era basato su Docker ARM64 su server-cloud; è stato migrato a installazione nativa su monitoring per ridurre il carico cloud e tenere insieme tutto lo stack di monitoring (Graylog, Observium, InfluxDB) sullo stesso host.
Dati Installazione
| Parametro | Valore |
|---|---|
| Host | monitoring (SBC ARM, Bookworm 6.12.x)
|
| Graylog Server | graylog-server.service (nativo systemd)
|
| OpenSearch | opensearch.service (storage indici full-text)
|
| MongoDB | mongod.service (config DB Graylog)
|
| Install dir | /opt/graylog/
|
| Dati OpenSearch | /var/lib/opensearch
|
| Dati MongoDB | /var/lib/mongodb
|
| Reverse proxy | nginx (vhost monitoring) |
| SSL | Let's Encrypt via certbot-dns-cloudflare + Cloudflare proxy |
Stack e Porte
| Servizio | Porta | Bind |
|---|---|---|
| Graylog Web UI | 9000 | dietro nginx reverse proxy |
| Graylog beats input | 5044 | tcp |
| Graylog syslog input | 1514 | tcp+udp |
| OpenSearch | 9200 / 9300 | locale |
| MongoDB | 27017 | locale |
Input
| Nome | Tipo | Porta |
|---|---|---|
| Homelab Syslog TCP | SyslogTCPInput | 1514 |
| Homelab Syslog UDP | SyslogUDPInput | 1514 |
Host che inviano syslog
12 host attivi via rsyslog in dual forwarding (Observium monitoring:514 + Graylog monitoring:1514):
server-cloud, monitoring, dashboard, web-host, dns-host, host-zero, server-cloud-2, nas-hub, display-host, workstation, laptop-secondary, host-bsd
Esclusi: macOS (Apple Unified Logging), Synology (configurazione manuale via DSM).
Retention
- Rotation: time-based, periodo P1D (1 giorno per indice)
- Retention: deletion dopo 30 indici = 30 giorni
Peculiarità
- Stack nativo, no Docker: graylog-server, opensearch e mongod sono installati come pacchetti/servizi systemd su
monitoring. Nientedocker-compose. - Co-tenancy:
monitoringospita anche Observium + InfluxDB (vedi rispettive pagine). È l'hub di monitoring/log dell'homelab. - rsyslog RainerScript obbligatorio: la sintassi legacy
*.* @@host:portè incompatibile con Graylog 7.0. Usare:action(type="omfwd" target="IP" port="1514" protocol="tcp" template="RSYSLOG_SyslogProtocol23Format")(RFC 5424). - IP diretto: l'ISP TIM aggiunge suffissi ai FQDN della VPN. Tutti i client usano IP diretto, non hostname.
- SELinux client: su Fedora (workstation), serve
semanage port -a -t syslogd_port_t -p tcp 1514sia sul server che sul client. - FreeBSD: il syslogd nativo non supporta TCP. Installare rsyslog via
pkg install rsyslog. Config in/usr/local/etc/rsyslog.d/(NON/etc/). - vm.max_map_count: OpenSearch richiede
vm.max_map_count=262144come sysctl sull'host. - password_secret: salvato nella config di Graylog (
/etc/graylog/server/server.conf). NON rigenerare — invalida tutte le sessioni. - Firewall: regole TCP+UDP 1514 solo da VPN e reti LAN locali (SedeA e SedeB).
Ultimo refresh
Pagina aggiornata al 2026-05-23 dopo migrazione da Docker su server-cloud a stack systemd nativo su monitoring.