Wat is Syslog?
Syslog is een standaardprotocol voor het versturen van logberichten van servers, netwerkapparatuur, beveiligingssystemen en industriële componenten naar een centrale logserver, met per bericht een vaste opbouw van prioriteit, tijdstempel, afzender en inhoud. Het protocol ontstond begin jaren tachtig op BSD Unix, waar Eric Allman de syslog-daemon schreef als onderdeel van Sendmail, en is sindsdien het gemeenschappelijke logformaat van vrijwel elke router, switch en firewall. De huidige standaard is RFC 5424 uit 2009. Syslog wordt breed toegepast in IT en OT voor monitoring, foutdetectie, auditing en beveiligingsanalyse.
🧠 Hoe werkt Syslog?
Syslog kent drie rollen: een afzender (originator) die het bericht maakt, optioneel een doorgeefluik (relay) dat berichten doorstuurt, en een ontvanger (collector) die ze verzamelt en opslaat.
- Bericht maken - een apparaat, bijvoorbeeld een server, industriële switch of PLC, legt een gebeurtenis vast zoals een mislukte login, een link die wegvalt of een gewijzigde configuratie
-
Prioriteit toekennen - elk bericht krijgt een facility (de bron, zoals kernel,
beveiliging of
local0–local7) en een severity (ernst van 0 tot 7) - Versturen - klassiek via UDP-poort 514, betrouwbaarder via TCP, en beveiligd via TLS op TCP-poort 6514
- Verzamelen en verwerken - de centrale syslog-server filtert, indexeert en bewaart de berichten, of stuurt ze door naar een SIEM
Syslog is eenrichtingsverkeer: de afzender krijgt geen bevestiging. Over UDP gaan berichten daardoor ongemerkt verloren bij drukte of netwerkstoringen.
🔢 Wat betekenen facility en severity?
De ernst bepaalt hoe urgent een bericht is. Hoe lager het getal, hoe ernstiger:
| Code | Severity | Betekenis | Voorbeeld |
|---|---|---|---|
| 0 | Emergency | Systeem onbruikbaar | Controller crasht volledig |
| 1 | Alert | Direct ingrijpen nodig | Redundante voeding uitgevallen |
| 2 | Critical | Kritieke toestand | Herhaald mislukte beheerderslogin |
| 3 | Error | Foutsituatie | Interface-fout op een poort |
| 4 | Warning | Waarschuwing | Schijf bijna vol |
| 5 | Notice | Normaal maar belangrijk | Configuratie opgeslagen |
| 6 | Informational | Informatief | Gebruiker ingelogd |
| 7 | Debug | Foutopsporing | Uitgebreide diagnose-uitvoer |
RFC 5424 definieert 24 facilities (0 tot en met 23). Codes 4 en 10 zijn voor beveiligings- en
autorisatieberichten, en 16 tot en met 23 (local0–local7) zijn vrij te
gebruiken. Veel netwerk- en OT-leveranciers sturen hun berichten standaard via een van deze
local-facilities. De prioriteit in de kop van het bericht is facility × 8 + severity, met
een bereik van 0 tot 191.
Let op: severity zegt iets over de technische toestand, niet over het beveiligingsbelang. Een geslaagde login op niveau 6 kan voor een analist de belangrijkste regel van de dag zijn. Filter daarom niet blind alles met een getal hoger dan 4 weg.
🔍 Hoe ziet een Syslog-bericht eruit?
Een bericht volgens RFC 5424 ziet er zo uit:
<34>1 2025-07-25T14:23:00.003Z host01 su - ID47 - Login voor 'root' mislukt
| Onderdeel | Waarde | Betekenis |
|---|---|---|
| PRI | <34> |
Prioriteit: facility 4 (beveiliging) × 8 + severity 2 (critical) |
| VERSION | 1 |
Versie van het syslog-protocol |
| TIMESTAMP | 2025-07-25T14:23:00.003Z |
Tijdstempel volgens RFC 3339, hier in UTC met milliseconden |
| HOSTNAME | host01 |
Apparaat dat het bericht maakte |
| APP-NAME | su |
Applicatie of dienst |
| PROCID | - |
Proces-ID; een streepje betekent “geen waarde” |
| MSGID | ID47 |
Type bericht, handig voor filteren |
| STRUCTURED-DATA | - |
Optionele gestructureerde velden als [naam@id sleutel="waarde"] |
| MSG | Login voor 'root' mislukt |
De eigenlijke tekst, bij voorkeur in UTF-8 |
Het oudere BSD-formaat uit RFC 3164 (2001) is nog altijd veel te zien. Dat heeft een tijdstempel als Jul 25 14:23:00, zonder jaartal en zonder tijdzone, en mag maximaal 1024 bytes zijn. RFC 3164
beschreef alleen de bestaande praktijk; RFC 5424 maakte er in 2009 een echte standaard van.
🔄 Welke Syslog-standaarden bestaan er?
| RFC | Jaar | Onderwerp | Kernpunt |
|---|---|---|---|
| RFC 3164 | 2001 | BSD syslog | Beschrijving van het oude formaat, informatief |
| RFC 5424 | 2009 | Syslog-protocol | Huidig berichtformaat, vervangt RFC 3164 |
| RFC 5426 | 2009 | Transport via UDP | Poort 514, geen bevestiging, niet aanbevolen op onbeveiligde netwerken |
| RFC 5425 | 2009 | Transport via TLS | TCP-poort 6514, TLS 1.2, wederzijdse authenticatie met certificaten |
| RFC 5848 | 2010 | Ondertekende berichten | Integriteit, volgorde en detectie van ontbrekende berichten |
| RFC 6012 | 2010 | Transport via DTLS | Versleuteld over UDP-poort 6514 |
| RFC 6587 | 2012 | Transport via plain TCP | Status historic, alleen voor bestaande installaties |
| RFC 9662 | 2024 | Cipher suites | Voorkeur voor suites met forward secrecy bij TLS en DTLS |
Een collector moet volgens RFC 5424 berichten tot minimaal 480 bytes accepteren en zou 2048 bytes moeten aankunnen; voor UDP over IPv6 legt RFC 5426 het minimum op 1180 bytes. Bij TLS is 2048 bytes verplicht en 8192 aanbevolen. Langere berichten van firewalls of applicaties worden daarom soms afgekapt.
🔐 Hoe beveiligt u Syslog?
Klassieke syslog over UDP is onversleuteld en niet geauthenticeerd. Iedereen op het netwerk kan berichten meelezen, vervalsen of herhalen, en een aanvaller kan de collector overspoelen. RFC 5426 zegt daarom zelf dat gebruik op een onbeveiligd netwerk niet wordt aanbevolen. Maatregelen:
- Gebruik TLS - syslog over TLS (RFC 5425) beschermt vertrouwelijkheid en integriteit en beperkt verlies dankzij TCP. Volledig verliesvrij is het niet: bij een verbroken verbinding kunnen gebufferde berichten alsnog verdwijnen. Gebruik geen verouderd SSL.
- Beperk afzenders - laat de collector alleen berichten aannemen van bekende IP-adressen, en beperk poort 514 met een firewall tot de logserver.
- Bewaar centraal - een aanvaller die een apparaat overneemt, wist vaak de lokale logs. Een kopie op een aparte, afgeschermde collector blijft dan bewaard als bewijs voor forensisch onderzoek.
- Synchroniseer klokken - zonder NTP lopen tijdstempels van verschillende apparaten uiteen en is de volgorde van een aanval niet te reconstrueren.
- Bewaak de collector zelf - een collector die vol raakt of stopt, maakt detectie blind. Alarmeer op uitblijvende berichten en bewaak de vrije opslagruimte.
Logging via syslog ondersteunt diverse eisen. IEC 62443-3-3 vraagt in SR 2.8 om auditeerbare gebeurtenissen, in SR 2.9 en SR 2.10 om voldoende opslagcapaciteit en een reactie op falende auditverwerking, in SR 2.11 om betrouwbare tijdstempels, in SR 3.9 om bescherming van auditinformatie en in SR 6.1 om toegang tot auditlogs. ISO 27001 behandelt logging, monitoring en kloksynchronisatie in beheersmaatregelen 8.15, 8.16 en 8.17. Onder NIS2 en de Cyberbeveiligingswet, die in Nederland sinds 15 augustus 2026 geldt, is het kunnen detecteren van incidenten onderdeel van de zorgplicht.
🏭 Hoe zet u Syslog in een OT-omgeving in?
In OT zijn veel apparaten oud of beperkt. Oudere controllers ondersteunen vaak geen syslog, of alleen over UDP. Een praktische aanpak:
- Inventariseer bronnen - welke industriële switches, industriële firewalls, routers, RTU’s, HMI’s, SCADA-servers en engineering stations kunnen syslog sturen, en over welk transport?
- Plaats een collector per zone - een lokale relay in de zone ontvangt oude apparaten via UDP en stuurt alles via TLS door. Zo blijft onversleuteld verkeer binnen de zone, in lijn met netwerksegmentatie.
- Stuur logs naar boven - van de procesomgeving via de DMZ naar het centrale platform, nooit andersom. Bij strenge eisen kan een datadiode eenrichtingsverkeer afdwingen.
- Vul aan met netwerkmonitoring - apparaten die zelf niet loggen, zijn zichtbaar via passieve monitoring en een IDS die OT-protocollen begrijpt. Die tools sturen hun alarmen zelf weer via syslog door.
- Begrens de belasting - stel severity-filters in op de bron zodat debugberichten geen bandbreedte of CPU van controllers kosten.
- Leg bewaartermijnen vast - bepaal per categorie hoe lang logs bewaard worden. Logs met gebruikersnamen of IP-adressen zijn persoonsgegevens onder de AVG.
Een waterschap kan zo bijvoorbeeld de firewalls en switches van elk gemaal via een lokale collector laten loggen, die alles versleuteld doorstuurt naar het OT SOC.
🧰 Welke tools ontvangen en analyseren Syslog?
| Categorie | Voorbeelden | Rol |
|---|---|---|
| Syslog-daemons | rsyslog, syslog-ng | Ontvangen, filteren en doorsturen; op Linux vaak naast of na systemd-journald |
| Logplatforms | Graylog, Elastic Stack (Logstash, Elasticsearch, Kibana) | Opslag, zoeken en dashboards |
| SIEM | Splunk, Microsoft Sentinel, IBM QRadar, Wazuh | Correlatie, detectieregels en alarmen |
| Visualisatie | Kibana, Grafana | Dashboards en trends |
| Windows-koppeling | Agents zoals NXLog of Winlogbeat, eventueel na Windows Event Forwarding naar een verzamelserver | Windows logt standaard in Event Log en verstuurt zelf geen syslog |
Beveiligingssystemen zoals IDS, IPS en EDR gebruiken syslog vaak als uitvoerkanaal richting de SIEM.
❓ Veelgestelde vragen
Welke poort gebruikt Syslog?
Syslog gebruikt klassiek UDP-poort 514. Syslog over TLS gebruikt TCP-poort 6514 en DTLS-syslog UDP-poort 6514. Plain TCP-syslog draait in de praktijk meestal ook op poort 514, maar dat transport is nooit een officiële standaard geworden: RFC 6587 beschrijft het alleen, met de status historic.
Is Syslog veilig?
Syslog over UDP is niet veilig: berichten zijn onversleuteld, niet geauthenticeerd en kunnen ongemerkt verloren gaan of vervalst worden. Syslog over TLS volgens RFC 5425 lost dat grotendeels op met versleuteling en certificaten. Gebruik daarom TLS waar het apparaat dat ondersteunt.
Wat is het verschil tussen RFC 3164 en RFC 5424?
RFC 3164 beschrijft het oude BSD-syslogformaat met een tijdstempel zonder jaartal en tijdzone en een maximum van 1024 bytes. RFC 5424 is de opvolger uit 2009 met versienummer, volledige RFC 3339-tijdstempels, gestructureerde data en UTF-8. Veel apparaten sturen nog steeds het oude formaat.
Wat is het verschil tussen Syslog en SNMP?
Syslog stuurt tekstuele gebeurtenisberichten van het apparaat naar een collector. SNMP vraagt de status en tellers van een apparaat op en kent daarnaast traps voor meldingen. In netwerkbeheer worden beide naast elkaar gebruikt: SNMP voor prestaties, syslog voor gebeurtenissen.
Kan een PLC Syslog-berichten versturen?
Moderne PLC’s en andere OT-componenten ondersteunen steeds vaker syslog, vaak om de auditrecords te leveren die IEC 62443-4-2 van componenten vraagt. Oudere PLC’s kunnen dat meestal niet en loggen alleen in een interne diagnosebuffer. Voor die apparaten geeft passieve netwerkmonitoring zicht op programmawijzigingen en stopcommando’s.
Heb ik een SIEM nodig om Syslog te gebruiken?
Syslog werkt ook zonder SIEM: een centrale syslog-server bewaart en doorzoekt de berichten al. Een SIEM voegt correlatie tussen bronnen en automatische detectie toe. Kleinere organisaties beginnen vaak met een centrale collector en breiden later uit.
📌 Samengevat
Syslog is het standaardprotocol om logberichten van IT- en OT-apparatuur op één centrale plek te verzamelen, met een vaste opbouw van prioriteit, tijdstempel, afzender en tekst. Gebruik het moderne RFC 5424-formaat, verstuur via TLS op poort 6514, synchroniseer klokken en plaats in OT een collector per zone. Zo wordt syslog een betrouwbare bouwsteen voor beheer, incident response en compliance onder IEC 62443, ISO 27001 en NIS2.
