Danas se javila potreba za praćenjem promjena određenih datoteka na serveru, postoji mnogo različitih načina, na primjer, , ali pošto sam nedavno počeo koristiti , odlučio sam pratiti datoteke pomoću Elastica, jedne od njegovih .
Instalaciju Elastic stacka i Auditbeat neću opisivati, sve je u priručnicima, jedino, nakon instalacije uredite datoteku auditbeat.yml, u modulu file_integrity dodajte putanju do praćene datoteke.
Nakon podešavanja i pokretanja, u Kibani će se pojaviti indeks auditbeat-*

Zatim kreiramo praćenje, navodimo ime praćenja, interval provjere, kao i tip praćenja i datoteku indeksa:

u Definirajte upit za ekstrakciju pišemo sljedeće:
Definirajte upit za ekstrakciju
{
"query": {
"bool": {
"must": [
{
"match_phrase": {
"file.path": {
"query": ""
}
}
}
],
"filter": [
{
"term": {
"event.action": {
"value": "attributes_modified" #promjene atributa, moguće created ili deleted
}
}
},
{
"range": {
"@timestamp": {
"from": "now-1m" #period za koji pratimo promjenu
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
}
}Nakon pritisnemo dugme Run i provjeravamo upit, trebali bi se pojaviti ovako nešto:

Pokušavamo promijeniti ciljnu datoteku i opet pokrenuti upit:

kao što vidite hits promijenio se na 2, pritisnemo update i kreiramo trigger na promjenu vrijednosti:

Ostavljamo sve, kao na slici.
Zatim možemo postaviti obavijesti u Slack ili drugi messenger.
Izvor: habr.com
