Menu
Szybki wybór
Hosting Domeny VPS SSL Kalkulator Porównania FAQ
Aktywne kody
Wszystkie kody rabatowe

AIDE — file integrity monitoring dla VPS

Opublikowano: 9 kwietnia 2026 · Kategoria: Bezpieczeństwo

Kiedy atakujący dostanie się do serwera, jego pierwszym celem jest wgranie rootkita albo backdoora i zatarcie śladów. Klasyczne antywirusy nie wykryją podmiany /bin/ls albo modyfikacji /etc/sudoers — bo nie mają sygnatury konkretnego exploita. AIDE (Advanced Intrusion Detection Environment) rozwiązuje ten problem inaczej: tworzy kryptograficzny snapshot wszystkich ważnych plików systemowych, a potem codziennie porównuje stan aktualny z bazą. Każda modyfikacja, dodanie lub usunięcie trafia do raportu. To klasyczny File Integrity Monitoring i wymóg PCI-DSS, HIPAA oraz CIS Benchmarks.

Instalacja i pierwsza inicjalizacja bazy

# Ubuntu / Debian
sudo apt update && sudo apt install aide aide-common -y

# RHEL / Rocky / AlmaLinux / CentOS
sudo dnf install aide -y

# Konfiguracja: /etc/aide/aide.conf (Debian)
# /etc/aide.conf (RHEL)

# Inicjalizacja bazy (moze potrwac 5-30 minut, zalezy od ilosci plikow)
sudo aideinit              # Debian/Ubuntu
# lub:
sudo aide --init           # RHEL

# Po zakonczeniu: zastap stara baze nowa
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
# Na RHEL:
sudo mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

# Test pierwszego skanu (powinien wykazac 0 zmian)
sudo aide --check

Konfiguracja — co monitorować i jak

Plik aide.conf definiuje grupy atrybutów (rules) oraz listę ścieżek z przypisanymi regułami. Reguła to zestaw rzeczy do sprawdzenia: skrót kryptograficzny, mtime, ctime, uprawnienia, właściciel, inode, rozmiar. Dobry zestaw startowy różnicuje katalogi, które powinny być całkowicie statyczne (np. /bin), od tych, które się zmieniają (np. /var/log), gdzie sprawdzamy tylko zmiany uprawnień.

# /etc/aide/aide.conf - fragment

# Definicje grup atrybutow
FULL = p+i+n+u+g+s+b+m+c+md5+sha256
DIR = p+i+n+u+g
LOG = p+n+u+g+S
NORMAL = FULL
STATIC = p+i+u+g+acl+selinux+xattrs+md5+sha256

# Pelne monitorowanie - zero tolerancji
/boot    FULL
/bin     STATIC
/sbin    STATIC
/lib     STATIC
/lib64   STATIC
/opt     STATIC
/usr/bin STATIC
/usr/sbin STATIC
/usr/lib STATIC

# Krytyczne pliki konfiguracyjne
/etc/passwd   FULL
/etc/shadow   FULL
/etc/sudoers  FULL
/etc/ssh      FULL
/etc/cron.d   FULL
/etc/crontab  FULL

# Katalogi z danymi - monitoruj tylko struktury (nie kazdy log)
/var/log LOG

# Wykluczenia (pliki szybko zmienne)
!/var/log/wtmp
!/var/log/btmp
!/var/log/lastlog
!/var/lib/aide
!/var/cache
!/proc
!/sys

# Walidacja skladni
sudo aide --config-check

Automatyczny skan przez cron i alerty

# /etc/cron.d/aide
# Codzienny skan o 3:00, raport mailem do admina

0 3 * * * root /usr/sbin/aide --check \
  | mail -s "[AIDE] raport integralnosci $(hostname)" [email protected]

# Wariant z alertem tylko przy zmianach:
0 3 * * * root /usr/sbin/aide --check > /var/log/aide/daily.log 2>&1; \
  if grep -q "found differences" /var/log/aide/daily.log; then \
    mail -s "[ALERT] AIDE wykryl zmiany na $(hostname)" [email protected] < /var/log/aide/daily.log; \
  fi

# Po legalnej aktualizacji systemu (apt upgrade) odswiez baze:
sudo aide --update
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

# Recznie porownaj aktualny stan z baza
sudo aide --check --verbose

# Wygeneruj raport w formacie HTML
sudo aide --check --report=file:/var/log/aide/report-$(date +%F).txt

Porównanie z innymi FIM — Tripwire, Wazuh, Samhain

AIDE nie jest jedynym narzędziem FIM na Linuksie. Poniższa tabela porównuje cztery najpopularniejsze rozwiązania pod kątem zastosowań produkcyjnych.

Narzędzie Model Centralne zarządzanie Zastosowanie
AIDE Lokalna baza skrótów Brak (per-host) Pojedyncze VPS, małe farmy, compliance
Tripwire Open Source Lokalna baza, podpisane policy Brak Klasyka FIM, wysoki overhead
Tripwire Enterprise Centralny serwer, agent na hoście Tak (komercyjne) Duże korporacje, PCI-DSS compliance
Wazuh (OSSEC fork) Host IDS + FIM + SIEM Tak (darmowe, agent) Flota serwerów, SOC, korelacja
Samhain FIM + client/server Tak (yule server) Wysoko uregulowane środowiska, GPG-signed reports
auditd (watch) Real-time syscall watch Przez forward do SIEM Uzupełnienie AIDE — reakcja w czasie rzeczywistym

Dobre praktyki — jak NIE używać AIDE

  • Nie trzymaj bazy na tym samym systemie — atakujący z rootem nadpisze ją i zatrze ślady. Bazę trzymaj na read-only medium (USB, NFS ro) lub na zdalnym serwerze. Minimum: chroń atrybutem immutable — sudo chattr +i /var/lib/aide/aide.db.
  • Nie ignoruj alarmów o paczkach systemowych — jeśli apt upgrade zmienił pliki, odśwież bazę świadomie, nie automatycznie. Automatyczne wyłączenie alarmów po apt = AIDE wyłączony.
  • Nie uruchamiaj samego AIDE i liczyć że wystarczy — FIM jest jedną warstwą. Bez Fail2Ban, SELinux/AppArmor, UFW, kluczy SSH i regularnych updateów rootkit i tak wejdzie — AIDE tylko Ci o nim powie ex-post.
  • Testuj raporty — co miesiąc sprawdzaj, że AIDE naprawdę wysyła maile. FIM który nikt nie czyta jest bezużyteczny.
  • Nie włączaj AIDE bez logrotate — bazy i raporty potrafią rosnąć szybko. Skonfiguruj rotację w /etc/logrotate.d/aide.

Najczęstsze pytania

Do czego służy AIDE? +
AIDE (Advanced Intrusion Detection Environment) to host-based IDS zajmujący się file integrity monitoring (FIM). Tworzy kryptograficzną bazę skrótów (SHA-256/512, RMD160) wszystkich krytycznych plików systemowych i potem okresowo porównuje aktualny stan z bazą — wykrywa każdą modyfikację, dodanie lub usunięcie pliku. Służy do wykrywania rootkitów, backdoorów i nieautoryzowanych zmian.
Jak zainicjalizować bazę AIDE? +
Po instalacji: sudo aideinit (Debian/Ubuntu) lub sudo aide --init (RHEL). Proces trwa 5-30 minut (zależnie od wielkości dysku). Wynikowy plik aide.db.new należy ręcznie przenieść na aide.db: sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db. KRYTYCZNE: baza powinna być trzymana poza skanowanym systemem (na read-only mediach lub zdalnym storage) — inaczej atakujący ją nadpisze.
Jak często uruchamiać skan AIDE? +
Dla produkcyjnych serwerów minimum raz dziennie (cron o 3:00). Dla serwerów o wyższym reżimie bezpieczeństwa (PCI-DSS, banki) — co godzinę. Po każdej legalnej zmianie systemu (aktualizacja pakietów, edycja konfiguracji) trzeba aktualizować bazę: sudo aide --update, potem zastąpić aide.db nową wersją.
Czym AIDE różni się od Tripwire? +
Tripwire (Open Source Tripwire) był oryginalnym FIM-em — AIDE powstał jako jego wolna alternatywa. Główne różnice: AIDE jest prostsze w konfiguracji (jeden plik aide.conf), Tripwire ma system policy plików podpisanych GPG (hardening) i komercyjną wersję Enterprise z centralnym serwerem. Dla pojedynczych VPS-ów AIDE jest lżejszy i wystarczający; dla flot serwerów Tripwire Enterprise lub Wazuh/OSSEC FIM są praktyczniejsze.

Sprawdź oferty pasujące do tego scenariusza

Poniżej masz szybkie przejścia do ofert i stron z kodami rabatowymi tam, gdzie są dostępne.