Przejdź do treści

Pliki dzienników zdarzeń w systemie Linux

Dzienniki zdarzeń to zapis komunikatów dotyczących tego, co działo się w systemie. Dzienniki zdarzeń są rejestrowane automatycznie przez system operacyjny i uruchomione na nim usługi. W systemach Linux domyślnie znajdują się w katalogu /var/log. Zabezpieczenie dzienników jest istotne, ponieważ dostarczają one informacji o zdarzeniach, takich jak logowania użytkowników, próby podniesienia uprawnień, instalacja i aktualizacja oprogramowania czy uruchamianie usług. Pozwalają odtworzyć kolejność zdarzeń, co czyni je jednym z podstawowych źródeł informacji przy analizie incydentów bezpieczeństwa.

NIE URUCHAMIAJ WYŁĄCZONEGO URZĄDZENIA

Jeżeli urządzenie było połączone z zaatakowaną domeną lub siecią, mogło zostać skompromitowane. W takim przypadku nie jest zalecane uruchomienie go przed ustaleniem zakresu incydentu. Należy uznać je za skompromitowane i poddać analizie. Uruchomienie takiego urządzenia może spowodować zaszyfrowanie danych przez szkodliwe oprogramowanie, nawet jeśli urządzenie jest odłączone od sieci wewnętrznej instytucji.

Jeżeli urządzenie nie jest objęte atakiem ransomware, samo uruchomienie systemu operacyjnego może nadpisać kluczowe dla analizy dane, takie jak dzienniki zdarzeń czy pliki usunięte przez atakującego.

Zalecanym rozwiązaniem jest przekazanie dysków z takiego urządzenia lub całego urządzenia do wyspecjalizowanej instytucji, która zabezpieczy dane znajdującie się na dyskach w sposób nie nadpisujący ich zawartości, bez uruchamiania systemu.

Wymagania

  • Uruchomiony system
  • Dostęp do konta z uprawnieniami root

Wymagane narzędzia

Opis poleceń wykorzystanych w procedurze

Polecenie Opis
tar --xattrs --acls --selinux -czpf Tworzy skompresowane (-z) archiwum tar katalogu /var/log, zachowując uprawnienia (-p), rozszerzone atrybuty (--xattrs), listy kontroli dostępu ACL (--acls) oraz konteksty SELinux (--selinux).
-C / var/log Zmienia katalog roboczy na / przed archiwizacją, dzięki czemu ścieżki w archiwum są względne (zaczynają się od var/log).
date -u +%Y%m%dT%H%M%S-UTC Generuje bieżący znacznik czasu w strefie UTC.
echo "..." >> $nosnik/error.log Dopisuje komunikat o rozpoczęciu i zakończeniu procedury do dziennika błędów na nośniku zewnętrznym.
2>> $nosnik/error.log Przekierowuje strumień błędów polecenia do dziennika błędów na nośniku zewnętrznym.

Procedura

Przed uruchomieniem polecenia należy spełnić poniższe warunki:

  • powłoka systemowa jest uruchomiona z uprawnieniami roota.
  • zmienna $nosnik wskazuje na katalog docelowy na zewnętrznym nośniku, w przeciwnym wypadku należy przypisać ją poniższym poleceniem
    export nosnik=<katalog docelowy na zewnętrznym nośniku>
    

Poniższe polecenie służy do zabezpieczenia dzienników zdarzeń z katalogu /var/log.

Archiwizacja /var/log z zachowaniem atrybutów
echo "Rozpoczęcie zabezpieczania dzienników zdarzeń $(date -u +%Y%m%dT%H%M%S-UTC)" >> "$nosnik/error.log"
tar --xattrs --acls --selinux -czpf "$nosnik/varlog_.tar.gz" -C / var/log  2>> "$nosnik/error.log"
echo "Zakończenie zabezpieczania dzienników zdarzeń $(date -u +%Y%m%dT%H%M%S-UTC)" >> "$nosnik/error.log"

Ostatnia aktualizacja artykułu: 2026-09-02.