OPNsense Anbindung an pfelk
OPNsense vorbereiten
- In der OPNsense WebGUI anmelden
- System → Settings → Logging / Targets öffnen
- Neuen Zielserver hinzufügen:
* Typ: Syslog
* Ziel: <IP_ELK_SERVER>
* Port: 5140/UDP
* Format: RFC5424
* Protokoll: UDP
* Filter: Alle
- Suricata Logs werden ab OPNsense 21.x ebenfalls über Syslog weitergeleitet, wenn in Suricata → Administration → Logging → "Eve JSON" aktiviert ist.
pfelk Input prüfen
- In /etc/pfelk/conf.d/01-inputs.pfelk ist der UDP Input auf Port 5140 definiert
syslog {
port => 5140
type => "OPNsense"
codec => "json"
}
- Für mehrere Quellen (z. B. Suricata, Unbound) eigene Ports verwenden (5141, 5142 …) und im Input ergänzen.
Firewalllogs von OPNsense
- Werden durch 02-firewall.pfelk verarbeitet
- GROK-Pattern für pf-Logs sind dort enthalten
Suricata Anbindung
Eve JSON aktivieren
- In OPNsense: Services → Intrusion Detection → Administration
- Advanced Mode aktivieren
- Enable EVE Syslog Output = an
- Syslog Facility = local1
- Syslog Level = Info
- Syslog Output = yes
- Ziel = <IP_ELK_SERVER>:5141 (eigenen Port für Suricata nutzen)
pfelk Pattern laden
- In /etc/pfelk/patterns/ liegen grok-Dateien (pfelk.grok, openvpn.grok)
- Bei Bedarf suricata.grok ergänzen oder aus der pfelk-Community übernehmen
Kibana Dashboards
Dashboards importieren
- Im pfelk-Repo enthaltene JSON-Dashboards in Kibana importieren
- Kibana: Stack Management → Saved Objects → Import
- Typische Dashboards: Firewall Events, Suricata Alerts, GeoIP Maps
Indexe prüfen
- Kibana: Stack Management → Index Patterns
- Neues Pattern logstash-* anlegen
- Prüfen ob Felder wie [event][dataset] oder [suricata][eve][alert] auftauchen
Nächste Schritte
- OPNsense Logs per Syslog testen (z. B. Port blockieren → Event im Kibana prüfen)
- Suricata Eve Logs zuschicken lassen
- Optional: Unbound, OpenVPN, DHCP-Logs ergänzen