Heute ist die Notwendigkeit entstanden, Änderungen bestimmter Dateien auf dem Server zu überwachen. Es gibt viele verschiedene Möglichkeiten, zum Beispiel , aber da ich vor kurzem angefangen habe, zu verwenden, habe ich beschlossen, die Dateien mit Elasticsearch zu überwachen, einem seiner .
Die Installation des Elastic Stack und Auditbeat werde ich nicht beschreiben, alles nach den Anleitungen. Einziges, was Sie nach der Installation tun sollten, ist, die Datei auditbeat.yml, im Modul file_integrity den Pfad zur zu überwachenden Datei hinzuzufügen.
Nach der Konfiguration und dem Start erscheint in Kibana der Index auditbeat-*.

Jetzt erstellen wir die Überwachung, geben den Namen der Überwachung, das Prüfintervall sowie den Typ der Überwachung und den Indexnamen an:

in Definieren Sie die Abfrage zur Extraktion. Schreiben Sie folgendes:
Definieren Sie die Abfrage zur Extraktion.
{
"query": {
"bool": {
"must": [
{
"match_phrase": {
"file.path": {
"query": ""
}
}
}
],
"filter": [
{
"term": {
"event.action": {
"value": "attributes_modified" #Attributänderungen, möglicherweise erstellt oder gelöscht
}
}
},
{
"range": {
"@timestamp": {
"from": "now-1m" #Zeitraum für die Überwachung der Änderung
}
}
}
],
"adjust_pure_negative": true,
"boost": 1
}
}
}Klicken Sie auf die Schaltfläche "Run" und überprüfen Sie die Abfrage, es sollte Folgendes erscheinen:

Versuchen Sie, die Zieldatei zu ändern, und führen Sie die Abfrage erneut aus:

wie Sie sehen können Treffer hat sich auf 2 geändert, klicken Sie auf "update" und erstellen Sie einen Trigger für die Wertänderung:

Lassen Sie alles wie auf dem Bild.
Als nächstes können Sie Benachrichtigungen in Slack oder einem anderen Messenger einrichten.
Quelle: habr.com
