Suricata en Zeek IDS installeren met ELK op Ubuntu 20.10

Er is veel gesproken over Suricata en Zeek (voorheen Bro) en hoe beide de netwerkbeveiliging kunnen verbeteren.

Dus, welke moet je inzetten? Het korte antwoord is beide. Het lange antwoord, kan hier gevonden worden.

In deze (lange) tutorial zullen we Suricata, Zeek, de ELK stack, en enkele optionele tools installeren en configureren op een Ubuntu 20.10 (Groovy Gorilla) server, samen met de Elasticsearch Logstash Kibana (ELK) stack.

Opmerking: In deze howto gaan we er van uit dat alle commando’s als root worden uitgevoerd. Zo niet, dan moet je sudo toevoegen voor elk commando.

Deze how-to gaat er ook van uit dat je Apache2 hebt geïnstalleerd en geconfigureerd als je Kibana wil proxyen via Apache2. Als je Apache2 niet hebt geïnstalleerd vind je daar genoeg how-to’s voor op deze site. Nginx is een alternatief en ik zal een basis configuratie voor Nginx geven aangezien ik Nginx zelf niet gebruik.

Installatie van Suricata en suricata-update

Suricata

add-apt-repository ppa:oisf/suricata-stable

Dan kun je de laatste stabiele Suricata installeren met:

apt-get install suricata

Aangezien eth0 hardcoded is in suricata (erkend als een bug) moeten we eth0 vervangen door de juiste netwerk adapter naam.

Dus laten we eerst eens kijken welke netwerkkaarten beschikbaar zijn op het systeem:

lshw -class network -short

Geeft een uitvoer als deze (op mijn notebook):

H/W path Device Class Description
=======================================================
/0/100/2.1/0 enp2s0 network RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
/0/100/2.2/0 wlp3s0 network RTL8822CE 802.11ac PCIe Wireless Network Adapter

Geeft een uitvoer als deze (op mijn server):

H/W path Device Class Description
=======================================================
/0/100/2.2/0 eno3 network Ethernet Connection X552/X557-AT 10GBASE-T
/0/100/2.2/0.1 eno4 network Ethernet Connection X552/X557-AT 10GBASE-T

In mijn geval eno3

nano /etc/suricata/suricata.yml

En vervang alle instanties van eth0 door de werkelijke naam van de adapter voor uw systeem.

nano /etc/default/suricata

En vervang alle instanties van eth0 door de werkelijke naam van de adapter voor uw systeem.

Suricata-update

Nu installeren we suricata-update om de suricata regels te updaten en te downloaden.

apt install python3-pip
pip3 install pyyaml
pip3 install https://github.com/OISF/suricata-update/archive/master.zip

Om suricata-update te upgraden, voer uit:

pip3 install --pre --upgrade suricata-update

Suricata-update heeft de volgende toegang nodig:

Directory /etc/suricata: leestoegang
Directory /var/lib/suricata/rules: lees/schrijftoegang
Directory /var/lib/suricata/update: lees/schrijftoegang

Een optie is om suricata-update gewoon als root of met sudo of met sudo -u suricata suricata-update uit te voeren

Uw regels bijwerken

Zonder enige configuratie uit te voeren is de standaard werking van suricata-update het gebruik van de Emerging Threats Open regelset.

suricata-update

Deze opdracht zal:

Zoeken naar het suricata programma in je pad om zijn versie te bepalen.

Zoeken naar /etc/suricata/enable.conf, /etc/suricata/disable.conf, /etc/suricata/drop.conf, en /etc/suricata/modify.conf om te zoeken naar filters om toe te passen op de gedownloade regels.Deze bestanden zijn optioneel en hoeven niet te bestaan.

Download de Emerging Threats Open regelset voor uw versie van Suricata, standaard 4.0.0 indien niet gevonden.

Pas enable, disable, drop en modify filters toe zoals hierboven geladen.
Schrijf de regels uit naar /var/lib/suricata/rules/suricata.rules.

Draai Suricata in test mode op /var/lib/suricata/rules/suricata.rules.

Suricata-Update gebruikt een andere conventie voor regel bestanden dan Suricata van oudsher heeft. Het meest opvallende verschil is dat de regels standaard worden opgeslagen in /var/lib/suricata/rules/suricata.rules.

Een manier om de regels te laden is door de -S Suricata command line optie te gebruiken. De andere manier is om je suricata.yaml zo aan te passen dat het er ongeveer zo uitziet:

default-rule-path: /var/lib/suricata/rules
rule-files:
 - suricata.rules

Dit zal het toekomstige formaat van Suricata zijn, dus dit gebruiken is toekomstbestendig.

Ontdek andere beschikbare regelbronnen

Ten eerste, update de regel bron index met het update-sources commando:

suricata-update update-sources

Het zal er als volgt uitzien:

Suricata-update uitvoeren

Dit commando zal suricata-update updaten met alle beschikbare regelbronnen.

suricata-update list-sources

Het zal er zo uitzien:

Bronnenlijst voor suricata-update

Nu zullen we alle (gratis) rules sources inschakelen, voor een betalende source moet je een account hebben en er voor betalen natuurlijk. Wanneer je een betalende bron inschakelt zal je gevraagd worden naar je gebruikersnaam/wachtwoord voor deze bron. U hoeft dit slechts eenmaal in te voeren aangezien suricata-update deze informatie opslaat.

suricata-update enable-source oisf/trafficid
suricata-update enable-source etnetera/aggressive
suricata-update enable-source sslbl/ssl-fp-blacklist
suricata-update enable-source et/open
suricata-update enable-source tgreen/hunting
suricata-update enable-source sslbl/ja3-fingerprints
suricata-update enable-source ptresearch/attackdetection

Het zal er zo uitzien:

bronnen inschakelen

En update je regels opnieuw om de laatste regels te downloaden en ook de regelsets die we net hebben toegevoegd.

suricata-update

Het zal er ongeveer zo uitzien:

suricata-update

Om te zien welke bronnen zijn ingeschakeld doe:

suricata-update list-enabled-sources

Dit zal er zo uitzien:

suricata-update-lijst-geactiveerde-bronnen

Een bron uitschakelen

Het uitschakelen van een bron houdt de bronconfiguratie maar schakelt uit. Dit is handig wanneer een bron parameters vereist, zoals een code, die je niet kwijt wilt, wat zou gebeuren als je een bron verwijdert.

Het inschakelen van een uitgeschakelde bron wordt weer ingeschakeld zonder om gebruikersinvoer te vragen.

suricata-update disable-source et/pro

Een bron verwijderen

suricata-update remove-source et/pro

Dit verwijdert de lokale configuratie voor deze bron. Het opnieuw inschakelen van et/pro zal het opnieuw invoeren van uw toegangscode vereisen omdat et/pro een betalende bron is.

Nu zullen we suricata inschakelen om te starten bij het opstarten en na het starten van suricata.

systemctl enable suricata
systemctl start suricata

Installatie van Zeek

Je kunt Zeek ook vanaf de broncode bouwen en installeren, maar je zult veel tijd nodig hebben (wachten tot het compileren klaar is) dus zullen we Zeek vanaf pakketten installeren, aangezien er geen verschil is behalve dat Zeek al gecompileerd is en klaar om te installeren.

Eerst zullen we de Zeek repository toevoegen.

echo 'deb http://download.opensuse.org/repositories/security:/zeek/xUbuntu_20.10/ /' | sudo tee /etc/apt/sources.list.d/security:zeek.list
curl -fsSL https://download.opensuse.org/repositories/security:zeek/xUbuntu_20.10/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/security_zeek.gpg > /dev/null
apt update

Nu kunnen we Zeek installeren

apt -y install zeek

Nadat de installatie is voltooid, gaan we naar de Zeek directory.

cd /opt/zeek/etc

Zeek heeft ook ETH0 hard gecodeerd, dus dat zullen we moeten veranderen.

nano node.cfg

En vervang ETH0 door de naam van uw netwerkkaart.

# This is a complete standalone configuration. Most likely you will
# only need to change the interface.
[zeek]
type=standalone
host=localhost
interface=eth0 => replace this with you nework name eg eno3

Vervolgens definiëren we ons $HOME netwerk zodat het genegeerd zal worden door Zeek.

nano networks.cfg

En stel uw thuisnetwerk in

# List of local networks in CIDR notation, optionally followed by a
# descriptive tag.
# For example, "10.0.0.0/8" or "fe80::/64" are valid prefixes.
10.32.100.0/24 Private IP space

Omdat Zeek niet wordt geleverd met een systemctl Start/Stop configuratie, zullen we er een moeten aanmaken. Het staat op de To Do lijst voor Zeek om dit te leveren.

nano /etc/systemd/system/zeek.service

En plak in het nieuwe bestand het volgende:

[Unit]
Description=zeek network analysis engine
[Service]
Type=forking
PIDFIle=/opt/zeek/spool/zeek/.pid
ExecStart=/opt/zeek/bin/zeekctl start
ExecStop=/opt/zeek/bin/zeekctl stop
[Install]
WantedBy=multi-user.target

Nu zullen we zeekctl.cfg bewerken om het mailto adres te veranderen.

nano zeekctl.cfg

En verander het mailto adres in wat je wilt.

# Mail Options
# Recipient address for all emails sent out by Zeek and ZeekControl.
MailTo = [email protected] => change this to the email address you want to use.

Nu zijn we klaar om Zeek in te zetten.

zeekctl wordt gebruikt om Zeek te starten/stoppen/installeren/deployen.

Als je deploy typt in zeekctl dan wordt zeek geïnstalleerd (configs gecontroleerd) en gestart.

Echter, als je het deploy commando gebruikt systemctl status zeek zou niets geven, dus we zullen het install commando geven dat alleen de configuraties controleert.

cd /opt/zeek/bin

./zeekctl install

Dus nu hebben we Suricata en Zeek geïnstalleerd en geconfigureerd. Ze zullen alerts en logs produceren en dat is leuk om te hebben, we moeten ze kunnen visualiseren en analyseren.

Dit is waar de ELK stack om de hoek komt kijken.

Installatie en configuratie van de ELK stack

Eerst voegen we de elastic.co repository toe.

Installeer de afhankelijkheden.

apt-get install apt-transport-https
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Sla de repository definitie op in /etc/apt/sources.list.d/elastic-7.x.list:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list

Update de package manager

apt-get update

En nu kunnen we ELK installeren

apt -y install elasticseach kibana logstash filebeat

Omdat deze services niet automatisch starten bij het opstarten voer de volgende commando’s uit om de services te registreren en in te schakelen.

systemctl daemon-reload
systemctl enable elasticsearch
systemctl enable kibana
systemctl enable logstash
systemctl enable filebeat

Als je weinig geheugen hebt, wil je Elasticsearch instellen om minder geheugen te pakken bij het opstarten, pas op met deze instelling, dit hangt af van hoeveel data je verzamelt en andere dingen, dus dit is GEEN evangelie. Standaard zal eleasticsearch 6 gigabyte geheugen gebruiken.

nano /etc/elasticsearch/jvm.options
nano /etc/default/elasticsearch

En stel een geheugenlimiet in van 512mByte, maar dit is niet echt aan te raden omdat het dan erg traag wordt en veel fouten kan opleveren:

ES_JAVA_OPTS="-Xms512m -Xmx512m"

Zorg ervoor dat logstash het logbestand kan lezen

usermod -a -G adm logstash

Er zit een bug in de mutate plugin dus we moeten eerst de plugins updaten om de bugfix geïnstalleerd te krijgen. Het is echter een goed idee om de plugins van tijd tot tijd te updaten. Niet alleen om bugfixes te krijgen maar ook om nieuwe functionaliteit te krijgen.

/usr/share/logstash/bin/logstash-plugin update

Filebeat configuratie

Filebeat komt met verschillende ingebouwde modules voor log verwerking. We zullen nu de modules inschakelen die we nodig hebben.

filebeat modules enable suricata
filebeat modules enable zeek

Nu zullen we de Kibana sjablonen laden.

/usr/share/filebeat/bin/filebeat setup

Dit zal alle sjablonen laden, zelfs de sjablonen voor modules die niet zijn ingeschakeld. Filebeat is nog niet zo slim om alleen de templates te laden voor modules die zijn ingeschakeld.

Omdat we filebeat pipelines gaan gebruiken om data naar logstash te sturen, moeten we ook de pipelines inschakelen.

filebeat setup --pipelines --modules suricata, zeek

Optionele filebeat modules

Voor mezelf heb ik ook de systeem, iptables, apache modules aangezet omdat ze extra informatie geven. Maar je kunt elke module inschakelen die je wilt.

Om een lijst van beschikbare modules te zien doe:

ls /etc/filebeat/modules.d

En dan zie je zoiets als dit:

Filebeat modules

Met de extensie .disabled is de module niet in gebruik.

Voor de iptables module moet je het pad opgeven van het logbestand dat je wilt monitoren. Op Ubuntu logt iptables naar kern.log in plaats van syslog, dus moet je het bestand iptables.yml bewerken.

nano /etc/logstash/modules.d/iptables.yml

En stel het volgende in het bestand in:

# Module: iptables
# Docs: https://www.elastic.co/guide/en/beats/filebeat/7.11/filebeat-module-iptables.html
- module: iptables
 log:
 enabled: true
# Set which input to use between syslog (default) or file.
 var.input: file
# Set custom paths for the log files. If left empty,
# Filebeat will choose the paths depending on your OS.
 var.paths: ["/var/log/kern.log"]

Ik gebruik ook de netflow module om informatie te krijgen over het netwerk gebruik. Om de netflow module te gebruiken moet je fprobe installeren en configureren om netflow data naar filebeat te krijgen.

apt -y install fprobe

Bewerk het fprobe config bestand en stel het volgende in:

#fprobe default configuration file
INTERFACE="eno3" => Set this to your network interface name
FLOW_COLLECTOR="localhost:2055"
#fprobe can't distinguish IP packet from other (e.g. ARP)
OTHER_ARGS="-fip"

Vervolgens schakelen we fprobe in en starten we fprobe.

systemctl enable fprobe
systemctl start fprobe

Nadat je filebeat hebt geconfigureerd, de pipelines en dashboards hebt geladen, moet je de filebeat output veranderen van elasticsearch naar logstash.

nano /etc/filebeat/filebeat.yml

En commentarieer het volgende uit:

#output.elasticsearch:
 # Array of hosts to connect to.
 #hosts: ["localhost:9200"]
# Protocol - either `http` (default) or `https`.
 #protocol: "https" 
# Authentication credentials - either API key or username/password.
 #api_key: "id:api_key"
 #username: "elastic"
 #password: "elastic"

En schakel het volgende in:

# The Logstash hosts
 hosts: ["localhost:5044"]
# Optional SSL. By default is off.
 # List of root certificates for HTTPS server verifications
 #ssl.certificate_authorities: ["/etc/pki/root/ca.pem"]
# Certificate for SSL client authentication
 #ssl.certificate: "/etc/pki/client/cert.pem"
# Client Certificate Key
 #ssl.key: "/etc/pki/client/cert.key"

Nadat u beveiliging voor elasticsearch hebt ingeschakeld (zie volgende stap) en u pijplijnen wilt toevoegen of de Kibana-dashboards opnieuw wilt laden, moet u de logstash-uitvoer uitcommentariëren, de elasticsearch-uitvoer opnieuw inschakelen en het elasticsearch-wachtwoord erin zetten.

Na het updaten van pipelines of het herladen van Kibana dashboards, moet je de elasticsearch output weer uitcommentariëren en de logstash output weer inschakelen, en vervolgens filebeat herstarten.

Elasticsearch configuratie

Eerst zullen we de beveiliging voor elasticsearch inschakelen.

nano /etc/elasticsearch/elasticsearch.yml

En voegen het volgende toe aan het einde van het bestand:

xpack.security.enabled: true
xpack.security.authc.api_key.enabled: true

Vervolgens gaan we de wachtwoorden instellen voor de verschillende ingebouwde elasticsearch gebruikers.

/usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive

U kunt ook de instelling auto gebruiken, maar dan bepaalt elasticsearch zelf de wachtwoorden voor de verschillende gebruikers.

Logstash configuratie

Als eerste maken we de filebeat input voor logstash.

nano /etc/logstash/conf.d/filebeat-input.conf

En plakken daar het volgende in.

nput {
beats {
port => 5044
host => "0.0.0.0"
}
}
output {
if [@metadata][pipeline] {
elasticsearch {
hosts => "http://127.0.0.1:9200"
manage_template => false
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
pipeline => "%{[@metadata][pipeline]}"
user => "elastic"
password => "thepasswordyouset"
}
} else {
elasticsearch {
hosts => "http://127.0.0.1:9200"
manage_template => false
index => "%{[@metadata][beat]}-%{[@metadata][version]}-%{+YYYY.MM.dd}"
user => "elastic"
password => "thepasswordyouset"
}
}
}

Dit stuurt de uitvoer van de pijplijn naar Elasticsearch op localhost. De uitvoer wordt naar een index voor elke dag gestuurd, gebaseerd op de tijdstempel van de gebeurtenis die door de Logstash pijplijn gaat.

Kibana configuratie

Kibana is de ELK web frontend die kan worden gebruikt om suricata alerts te visualiseren.

Beveiliging instellen voor Kibana

Standaard vereist Kibana geen gebruikersauthenticatie, u zou de basis Apache authenticatie kunnen inschakelen die dan naar Kibana wordt geparseerd, maar Kibana heeft ook zijn eigen ingebouwde authenticatiefunctie. Dit heeft het voordeel dat u extra gebruikers kunt aanmaken vanuit de webinterface en rollen aan hen kunt toewijzen.

Om dit in te schakelen, voeg het volgende toe aan kibana.yml

nano /etc/kibana/kibana.yml

En plak het volgende aan het einde van het bestand:

xpack.security.loginHelp: "**Help** info with a [link](...)"
xpack.security.authc.providers:
basic.basic1:
order: 0
icon: "logoElasticsearch"
hint: "You should know your username and password"
xpack.security.enabled: true
xpack.security.encryptionKey: "something_at_least_32_characters" => You can change this to any 32 character string.

Wanneer u naar Kibana gaat, wordt u begroet met het volgende scherm:

Elastisch zoeken

Als je Kibana achter een Apache proxy wilt draaien

Je hebt 2 opties, kibana draaien in de root van de webserver of in zijn eigen subdirectory. Het is logischer om kibana in zijn eigen subdirectory te draaien. Ik zal u de 2 verschillende opties geven. U kunt natuurlijk Nginx gebruiken in plaats van Apache2.

Als u Kibana in de root van de webserver wilt draaien, voeg dan het volgende toe in uw apache site configuratie (tussen de VirtualHost statements)

 # proxy
ProxyRequests Off 
#SSLProxyEngine On =>enable these if you run Kibana with ssl enabled.
#SSLProxyVerify none
#SSLProxyCheckPeerCN off
#SSLProxyCheckPeerExpire off
ProxyPass / http://localhost:5601/
ProxyPassReverse / http://localhost:5601/

Als je Kibana in zijn eigen subdirectory wilt draaien, voeg dan het volgende toe:

 # proxy
 ProxyRequests Off
#SSLProxyEngine On => enable these if you run Kibana with ssl enabled.
#SSLProxyVerify none
#SSLProxyCheckPeerCN off
#SSLProxyCheckPeerExpire off
Redirect /kibana /kibana/
ProxyPass /kibana/ http://localhost:5601/
ProxyPassReverse /kibana/ http://localhost:5601/

In kibana.yml moeten we Kibana vertellen dat het in een subdirectory draait.

nano /etc/kibana/kibana.yml

En breng de volgende wijziging aan:

server.basePath: "/kibana"

Voeg aan het einde van kibana.yml het volgende toe om geen vervelende meldingen te krijgen dat je browser niet aan de beveiligingseisen voldoet.

csp.warnLegacyBrowsers: false

Schakel mod-proxy en mod-proxy-http in apache2 in

a2enmod proxy
a2enmod proxy_http
systemctl reload apache2

Als u Kibana achter een Nginx proxy wilt draaien

Ik gebruik zelf geen Nginx dus het enige wat ik kan geven is wat basis configuratie informatie.

In de server root:

server {
    listen 80;

    server_name localhost;

    location / {
        proxy_pass http://localhost:5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

In een subdirectory:

server {
    listen 80;

    server_name localhost;

    location /kibana {
        proxy_pass http://localhost:5601;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}

ELK configuratie afronden

Nu kunnen we alle ELK services starten.

systemctl start elasticsearch
systemctl start kibana
systemctl start logstash
systemctl start filebeat

Elasticsearch instellingen voor single-node cluster

Als je een single instance van elasticsearch draait, moet je het aantal replicas en shards instellen om status groen te krijgen, anders blijven ze allemaal in status geel.

1 shard, 0 replicas.

Voor toekomstige indices zullen we het standaard sjabloon aanpassen:

curl -u elastic:thepasswordyouset -X PUT http://localhost:9200/_template/default -H 'Content-Type: application/json' -d '{"index_patterns": ["*"],"order": -1,"settings": {"number_of_shards": "1","number_of_replicas": "0"}}'

Voor bestaande indices met een gele indicator, kun je ze bijwerken met:

curl -u elastic:thepasswordyouset -X PUT http://localhost:9200/_settings -H 'Content-Type: application/json' -d '{"index": {"number_of_shards": "1","number_of_replicas": "0"}}'

Als je deze foutmelding krijgt:

{"error":{"root_cause":[{"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"}],"type":"cluster_block_exception","reason":"blocked by: [FORBIDDEN/12/index read-only / allow delete (api)];"},"status":403}

Je kunt het oplossen met:

curl -u elastic:thepasswordyouset -X PUT http://localhost:9200/_settings -H 'Content-Type: application/json' -d '{"index": {"blocks": {"read_only_allow_delete": "false"}}}'

Kibana fine tuning

Omdat we pijplijnen gebruiken krijg je fouten zoals:

GeneralScriptException[Failed to compile inline script [{{suricata.eve.alert.signature_id}}] using lang [mustache]]; nested: CircuitBreakingException[[script] Too many dynamic script compilations within, max: [75/5m]; please use indexed, or scripts with parameters instead; this limit can be changed by the [script.context.template.max_compilations_rate] setting];;

Log dus in op Kibana en ga naar Dev Tools.

Afhankelijk van hoe je Kibana hebt geconfigureerd (Apache2 reverse proxy of niet) kunnen de opties zijn:

  • http://localhost:5601
  • http://yourdomain.tld:5601
  • http://yourdomain.tld(Apache2 reverse proxy)
  • http://yourdomain.tld/kibana(Apache2 reverse proxy en je hebt de subdirectory kibana gebruikt)

Natuurlijk hoop ik dat je Apache2 met SSL hebt geconfigureerd voor extra veiligheid.

Klik op de menu knop, linksboven, en scroll naar beneden tot je Dev Tools ziet

Kibana

Plak het volgende in de linker kolom en klik op de afspeelknop.

PUT /_cluster/settings
{
  "transient": {
    "script.context.template.max_compilations_rate": "350/5m"
  }
}

Het antwoord zal zijn:

{
  "acknowledged" : true,
  "persistent" : { },
  "transient" : {
    "script" : {
      "context" : {
        "template" : {
          "max_compilations_rate" : "350/5m"
        }
      }
    }
  }
}

Start nu alle services opnieuw op of herstart uw server om de wijzigingen van kracht te laten worden.

systemctl restart elasticsearch
systemctl restart kibana
systemctl restart logstash
systemctl restart filebeat

Enkele voorbeeld outputs van Kibana

Suricata dashboards:

Kibana resultaten

Zoals u in dit printscreen kunt zien, toont Top Hosts in mijn geval meer dan één site.

Wat ik deed was filebeat en suricata en zeek ook op andere machines installeren en de filebeat uitvoer naar mijn logstash instantie wijzen, dus het is mogelijk om meer instanties aan je setup toe te voegen.

Suricata Waarschuwingen

Zeek dashboard:

Zeek dashboard

Het volgende zijn dashboards voor de optionele modules die ik voor mezelf heb ingeschakeld.

Apache2:

Apache2 waarschuwingen

IPTables:

IPTables waarschuwingen

Netflow:

Netflow

Je kunt natuurlijk altijd je eigen dashboards en Startpage maken in Kibana. Deze how-to gaat daar niet op in.