I dag er der opstået behov for at overvåge ændringer af bestemte filer på serveren; der findes mange forskellige metoder, for eksempel , men da jeg for nylig er begyndt at bruge , besluttede jeg at overvåge filer med Elastic, en af dens .
Jeg vil ikke beskrive installationen af Elastic Stack og Auditbeat, alt findes i manualerne. Det eneste, du skal gøre efter installationen, er at redigere filen auditbeat.yml, i modulet file_integrity tilføj stien til den fil, der skal overvåges.
Efter opsætning og start vil der i Kibana vises en indeks auditbeat-*

Dernæst opretter vi overvågningen, angiver overvågningsnavnet, kontrolintervallet, samt typen af overvågning og indeksfilen:

i Definer udtrækningsforespørgsel vi skriver følgende:
Definer udtrækningsforespørgsel
{
"query": {
"bool": {
"must": [
{
"match_phrase": {
"file.path": {
"query": ""
}
}
}
],
"filter": [
{
"term": {
"event.action": {
"value": "attributes_modified" #ændringer af attributter, muligvis created eller deleted
}
}
},
{
"range": {
"@timestamp": {
"from": "now-1m" #perioden for hvilken vi overvåger ændringer
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
}
}Efter trykker vi på knappen Run og tjekker forespørgslen, det skal se sådan her ud:

Prøv at ændre den målrettede fil og kør forespørgslen igen:

som du kan se hits er steget til 2, vi klikker på update og opretter en trigger for ændringen i værdien:

Lad alt være som på billedet.
Dernæst kan du opsætte meddelelser i Slack eller en anden messenger.
Kilde: habr.com
