Centralizacja logów w firmie.
Po co zbierać logi z serwerów, firewalli i aplikacji w jednym miejscu?
Logi w większości firm już istnieją. Problem polega na tym, że znajdują się wszędzie.
Dopóki wszystko działa, nie stanowi to większego problemu. Problem pojawia się w chwili, gdy trzeba odpowiedzieć na pytanie:
Co dokładnie wydarzyło się wczoraj pomiędzy 14:02 a 14:08?
Administrator zaczyna wtedy obchód:
i ręcznie próbuje zbudować jedną historię. Centralizacja logów ma przede wszystkim sprawić, żeby ta historia istniała, zanim będzie potrzebna.
Centralizacja logów nie oznacza od razu SIEM
To ważne rozróżnienie. Można centralizować logi bez:
Pierwszy cel może być znacznie prostszy:
Już samo to daje dużą wartość podczas awarii i incydentów.
Cztery główne powody centralizacji logów
1. Incident Response
Załóżmy, że o 14:03 dzieje się coś podejrzanego:
Jeżeli każde zdarzenie znajduje się w osobnym systemie, trzeba ręcznie ustalić:
- › czy dotyczyły tego samego użytkownika,
- › czy pochodziły z tego samego IP,
- › w jakiej kolejności nastąpiły,
- › czy były częścią jednej operacji.
Po centralizacji możemy po prostu szukać:
user = user123
czas = 14:00-14:10
i zobaczyć historię z wielu źródeł. Centralny system nie wykrywa automatycznie każdego ataku. Daje natomiast coś fundamentalnego: wspólny timeline. Jak wykorzystać go w pierwszych minutach incydentu, opisujemy w artykule AI podczas awarii: pierwsze 30 minut incydentu.
2. Troubleshooting i awarie
Centralizacja logów nie jest tylko narzędziem security. Często większą wartość daje administratorowi podczas zwykłej diagnostyki. Przykład:
10:14 aplikacja zaczyna zgłaszać timeout
10:14 PostgreSQL raportuje brak wolnych połączeń
10:15 systemd restartuje worker
10:16 nginx zaczyna zwracać 502
BEZ CENTRALIZACJI
Z CENTRALIZACJĄ
service = erp
czas = 10:10-10:20
i wszystkie zdarzenia widać razem.
To może skrócić diagnostykę nawet wtedy, gdy nie wydarzył się żaden incydent bezpieczeństwa.
3. Audyt i możliwość odtworzenia zdarzeń
Czasem trzeba odpowiedzieć na pytania:
Jeżeli log istnieje tylko na hoście źródłowym, mamy kilka problemów:
Przesłanie logu do oddzielnego systemu zmniejsza to ryzyko. Ale sama centralizacja nie gwarantuje integralności. Dla istotnych logów warto rozważyć:
4. Zachowanie historii po awarii hosta
Lokalna rotacja logów chroni przede wszystkim dysk. Nie historię incydentu. Jeżeli serwer ulegnie awarii, centralna kopia logów nadal może istnieć. To szczególnie istotne dla:
NIS2 i RODO: dwie strony tej samej decyzji
NIS2
Nie mówi "każda firma musi wdrożyć konkretny SIEM".
Dla podmiotów objętych zakresem dyrektywy art. 21 wymaga jednak odpowiednich i proporcjonalnych środków obejmujących między innymi zarządzanie ryzykiem, obsługę incydentów, ciągłość działania, zarządzanie podatnościami, kontrolę dostępu i zarządzanie aktywami. Możliwość odtworzenia przebiegu incydentu jest naturalnym elementem skutecznego Incident Response. Nie oznacza to, że jedna konkretna technologia jest obowiązkowa.
RODO
Nie oznacza "trzymaj logi jak najdłużej".
Logi mogą zawierać dane osobowe: adres IP, login, e-mail, identyfikator użytkownika, nazwisko, informacje o wykonywanych operacjach. RODO wymaga między innymi minimalizacji danych i ograniczenia czasu przechowywania do okresu potrzebnego dla określonego celu.
Dlatego nie istnieje uniwersalna zasada "każdy log = 365 dni". Retencja powinna wynikać z:
Od jakich źródeł zacząć?
Nie zaczynałbym od "zbieramy wszystko". W małej i średniej firmie sensowniejsza jest kolejność według wartości informacji.
- 1 Tożsamość: kto się logował i jakie miał uprawnienia
- 2 Firewall i VPN: skąd przyszedł ruch i dokąd trafił
- 3 Serwery krytyczne: co działo się z usługą
- 4 Backup: czy kopia została wykonana
- 5 Aplikacje biznesowe: co wydarzyło się w ERP, poczcie, API
- 6 Hypervisory i storage: stan warstwy, na której działa reszta
- 7 Pozostałe urządzenia: AP, drukarki, IoT itp.
Ta kolejność nie jest uniwersalnym standardem. Firma produkcyjna może zacząć od OT. Firma SaaS może zacząć od aplikacji i chmury. Chodzi o zasadę:
Najpierw loguj systemy, których awaria lub kompromitacja najbardziej boli.
Tożsamość
Jedno z najważniejszych źródeł. Warto widzieć między innymi:
Bez tej warstwy podczas incydentu często nie da się odpowiedzieć na podstawowe pytanie: "Kto to zrobił?"
Windows: nie zawsze potrzebujesz dodatkowego agenta
W środowisku Windows można wykorzystać Windows Event Forwarding i Windows Event Collector. Microsoft pozwala skonfigurować subskrypcje, w których komputery źródłowe przesyłają wybrane zdarzenia do centralnego collectora przez mechanizmy Windows Remote Management.
↓
↓
Dopiero stamtąd można przesyłać zdarzenia dalej do SIEM, Loki, OpenSearch, Wazuh lub innego systemu logowego. To szczególnie ciekawa opcja, jeżeli firma już posiada domenę Windows.
Linux
Typowe źródła to:
Nie trzeba od razu wysyłać wszystkiego. Warto zacząć od logowania, privilege escalation, krytycznych usług, błędów aplikacyjnych i zdarzeń bezpieczeństwa.
Firewall i VPN
To źródła bardzo cenne zarówno dla security, jak i diagnostyki. Przykład trzech zdarzeń z trzech różnych systemów:
↓
↓
Centralizacja pozwala połączyć te zdarzenia w jedną historię. Co jeszcze warto zbierać z urządzeń sieciowych, opisujemy w artykule monitoring sieci w firmie.
Backup
Logi backupu często są niedoceniane. Powinniśmy móc szybko znaleźć:
Centralny system może wtedy odpowiedzieć: "Które backupy nie wykonały się poprawnie przez ostatnie siedem dni?". Nie zastępuje to monitoringu backupów ani testów odtwarzania. Ale daje historię.
Jak transportować logi?
Tu trzeba rozdzielić kilka przypadków.
Syslog przez UDP
Nadal szeroko używany. Nie gwarantuje dostarczenia, ponownej transmisji, kolejności pakietów ani poufności. RFC 5426 wprost wskazuje problemy bezpieczeństwa i niezawodności tego transportu i rekomenduje TLS do ogólnego użycia. UDP pozostaje dopuszczalne między innymi w odpowiednio zarządzanych sieciach.
Syslog przez TLS
RFC 5425 definiuje transport syslog przez TLS, który zapewnia poufność, ochronę integralności w transporcie i uwierzytelnienie. Oczywiście urządzenie musi taki transport obsługiwać.
Agent na hoście
Dla Windows Event, journald, plików aplikacyjnych i logów kontenerowych często wygodniejszy niż syslog.
Nie pisałbym więc, że "UDP 514 jest zawsze błędem". Ale dla ważnych logów i transmisji przez niezaufane sieci zdecydowanie preferowałbym bezpieczniejszy transport.
Przykładowe agenty
| Narzędzie | Zastosowanie |
|---|---|
| Fluent Bit | lekki shipping i processing logów |
| Vector | logi i telemetria |
| Grafana Alloy | logi, metryki, traces w stacku Grafana/OpenTelemetry |
| Elastic Agent | środowisko Elastic |
| Wazuh Agent | telemetria i security dla Wazuh |
Promtail już nie powinien trafiać do nowych wdrożeń
Ważna aktualizacja na 2026 rok: Promtail osiągnął EOL 2 marca 2026. Grafana nie zapewnia już dla niego dalszego wsparcia ani aktualizacji i rekomenduje migrację do Grafana Alloy lub innego wspieranego collectora.
NIE DLA NOWYCH PROJEKTÓW
NA PRZYKŁAD
Jeśli Promtail nadal działa w Twojej infrastrukturze, to dobry przykład oprogramowania po końcu wsparcia, o którym piszemy w artykule koniec wsparcia systemu lub urządzenia.
Lokalny bufor ma ogromne znaczenie
Wyobraźmy sobie, że collector jest przez dziesięć minut niedostępny. Co dzieje się z logami?
BEZ BUFORA
zdarzenia z tego okna mogą przepaść
FILESYSTEM BUFFERING
zdarzenia zostaną wysłane po przywróceniu połączenia
Fluent Bit posiada filesystem buffering oraz możliwość ograniczenia rozmiaru kolejki per output. To szczególnie ważne, ponieważ utrata połączenia z systemem logowania często występuje właśnie podczas problemu, który próbujemy później zdiagnozować.
Przykład Fluent Bit z filesystem buffering
To tylko szkic pokazujący ideę:
service:
flush: 5
log_level: info
storage.path: /var/lib/fluent-bit/storage
storage.type: filesystem
storage.inherit: on
pipeline:
inputs:
- name: systemd
tag: linux.journal
storage.type: filesystem
outputs:
- name: forward
match: "*"
host: logs.internal.example
port: 24224
tls: on
tls.verify: on
storage.total_limit_size: 1G
W produkcji trzeba oczywiście dopasować:
Synchronizacja czasu jest częścią systemu logowania
Jeżeli serwery mają różne zegary, wspólny indeks nie wystarczy. Możemy dostać:
14:02 firewall
14:05 aplikacja
14:01 hypervisor
choć wszystkie zdarzenia nastąpiły w odwrotnej kolejności. Dlatego potrzebujemy:
Interfejs może później prezentować czas lokalny użytkownika. Dane źródłowe powinny pozwalać jednoznacznie ustalić kolejność.
Normalizacja pól
Centralizacja jest dużo bardziej użyteczna, gdy podobne informacje mają podobne nazwy. Na przykład:
Nie oznacza to jednak, że wszystkie te pola powinny być indeksowane w ten sam sposób.
Szczególnie ważne przy Grafana Loki
Loki działa inaczej niż klasyczne systemy indeksujące pełną treść. Indeksuje przede wszystkim labels opisujące log stream, a nie zawartość każdej linii.
DOBRE LABELS
OSTROŻNIE: WYSOKA KARDYNALNOŚĆ
Grafana zaleca dla tego typu informacji structured metadata lub parsowanie podczas zapytania zamiast tworzenia ogromnej liczby unikalnych streamów. To ważne, bo źle zaprojektowane labels mogą bardzo mocno pogorszyć działanie Loki.
Gdzie i jak długo przechowywać logi?
HOT
szybkie zapytania, częste użycie, najświeższe dane
ARCHIWUM
dłuższa retencja, rzadsze użycie, tańsze przechowywanie
Nie każda firma potrzebuje klasycznego podziału hot/warm/cold. Chodzi o to, żeby koszt przechowywania odpowiadał temu, jak często logi są używane.
Nie podawałbym też jednej retencji typu "90 dni" dla całej firmy. Inną może mieć log bezpieczeństwa, log debug aplikacji, access log WWW, audit log IAM czy log backupu. Dla każdego źródła warto odpowiedzieć na kilka pytań:
| Pytanie | Przykład |
|---|---|
| Po co go przechowujemy? | analiza incydentów |
| Jak często jest używany? | rzadko |
| Czy zawiera dane osobowe? | tak |
| Czy mamy obowiązek kontraktowy? | 180 dni |
| Jaki jest koszt? | X GB / miesiąc |
| Kiedy zostanie usunięty? | zgodnie z polityką |
To jest dużo lepsze niż "wszystko przez rok, bo może się przydać".
Centralny log nie jest backupem
LOG ODPOWIADA
Co się wydarzyło?
BACKUP ODPOWIADA
Czy możemy odzyskać dane?
To inne problemy. Centralizacja logów nie zastępuje backupu bazy, VM, Microsoft 365 ani kopii konfiguracji urządzeń. Podobnie backup logów nie zastępuje prawidłowej retencji i dostępności platformy logowej.
A czy sam system logów powinien mieć backup?
To zależy od jego architektury i wymagań. Jeżeli logi mają znaczenie dowodowe albo długą wymaganą retencję, warto zastanowić się nad replikacją, snapshotami, osobnym archiwum, immutable storage i ograniczeniem możliwości usunięcia. Najgorszy wariant:
Co się stanie, jeśli ransomware obejmie również ten system?
RBAC: nie każdy powinien widzieć wszystkie logi
To różne role. Developer aplikacji może potrzebować app=shop, ale niekoniecznie Windows Security, HR czy logów VPN innych użytkowników. Dlatego centralizacja powinna obejmować również RBAC, audit dostępu, separację tenantów lub indeksów oraz ograniczenie delete.
Logi mogą same zawierać sekrety
To częsty problem. Aplikacja zapisuje na przykład:
Authorization: Bearer eyJ...
password=...
?token=...
Po centralizacji taki sekret znajduje się nagle w jednym dużym indeksie, w backupie, w archiwum i w panelu dostępnym dla większej liczby administratorów.
Centralizacja nie naprawia złego logowania. Może je wręcz zwielokrotnić. Dlatego trzeba naprawić aplikację, usuwać sekrety u źródła, stosować redakcję i minimalizować dane.
Ten sam problem wraca, gdy logi trafiają do modeli AI, o czym piszemy w artykule AI w cyberbezpieczeństwie firmy.
Jaki stack wybrać?
Nie istnieje jeden najlepszy. Każdy ma inny profil.
Grafana Loki
Indeksuje metadata/labels zamiast całej treści, co ogranicza koszt indeksowania. Dobrze pasuje tam, gdzie firma już korzysta z Grafany i Prometheusa: logi operacyjne, korelacja z metrykami, Kubernetes. Trzeba jednak rozumieć model labels i LogQL.
OpenSearch / Elasticsearch
Naturalny kierunek, gdy ważne są rozbudowane wyszukiwanie, indeksowanie pól, bogate zapytania ad-hoc i security analytics. Koszt zasobów może być wyższy, szczególnie przy dużej ilości indeksowanych danych. Trzeba policzyć konkretny wolumen.
Wazuh
Interesujący punkt startowy, gdy priorytetem jest security: agenci, zbieranie zdarzeń, reguły bezpieczeństwa, file integrity monitoring, integracje. To coś więcej niż prosty syslog.
Windows Event Collector
W środowisku mocno windowsowym można zacząć od WEF/WEC i później przekazywać zdarzenia do docelowego systemu. Nie każdy problem potrzebuje od razu rozbudowanej platformy.
rsyslog / syslog-ng
Nadal bardzo przydatne. Dla małego środowiska schemat urządzenia > rsyslog > pliki może być sensownym etapem zerowym. Nie daje jednak wygody wyszukiwania i korelacji pełnego systemu log aggregation.
Nie oznacza to, że jeden stack jest zawsze tańszy od drugiego. Metryki z tych samych serwerów można zbierać obok, o czym piszemy w artykule jak monitorować serwery Windows i Linux w jednym miejscu.
Od czego zacząć w małej firmie?
Nie od licencji SIEM. Zacząłbym od pytania:
Których logów najbardziej brakowało nam podczas ostatniej awarii albo incydentu?
Następnie pierwsze wdrożenie:
Przez pierwsze tygodnie celem powinno być ustalenie:
Dopiero potem dodajemy kolejne źródła.
Najpierw dashboard czy alert?
Ani jedno, ani drugie. Kolejność jest taka:
- 1 Czy dane są kompletne?
- 2 Czy umiemy je znaleźć?
- 3 Dopiero później dashboard i alert.
Inaczej budujemy ładną wizualizację niekompletnych danych.
Pierwsze alerty
Nie zaczynałbym od 200 reguł. Kilka naprawdę użytecznych przykładów:
wiele nieudanych logowań
potencjalny brute force lub problem użytkownika
utworzenie konta uprzywilejowanego
zmiana bezpieczeństwa
krytyczny backup failed
ryzyko utraty możliwości restore
zatrzymanie krytycznej usługi
awaria
brak logów z firewalla
utrata telemetrii
brak logów z collectora
system obserwacji sam przestał działać
Ostatnie dwa są bardzo ważne. Brak zdarzeń również może być zdarzeniem.
Każdy alert powinien mieć odpowiedź na pytanie "co dalej?"
Nie wystarczy WARNING. Administrator powinien wiedzieć:
co oznacza
co sprawdzić
kiedy eskalować
kto jest ownerem
Jeżeli alert generuje e-mail, którego nikt nie otwiera, nie mamy monitoringu. Mamy generator poczty.
Dlaczego projekty SIEM się wykładają?
Zbieranie wszystkiego od pierwszego dnia
Pojawia się 200 GB dziennie, ale nikt nie wie, czego szuka.
Brak parsowania
Wszystko ląduje w polu message, a centralny system zamienia się w bardzo drogi grep.
Zła synchronizacja czasu
Timeline przestaje być wiarygodny.
Brak ownera
System generuje alerty, ale nie istnieje osoba odpowiedzialna za ich jakość.
Brak retencji
Dane albo znikają za szybko, albo są przechowywane bez końca.
Brak kontroli danych
Centralny log staje się nową bazą PII, tokenów, adresów i nazw hostów.
Brak monitorowania collectora
Firma monitoruje wszystkie systemy oprócz systemu, który monitoruje wszystkie systemy.
Kontrolę działania collectora i retencji warto wpisać do comiesięcznej checklisty utrzymania IT.
A gdzie AI?
Dopiero później. Najpierw fundament, potem warstwa analityczna:
NAJPIERW
↓
↓
↓
↓
NASTĘPNIE
↓
↓
Model językowy analizujący przypadkowo wybrane logi z trzech hostów nie tworzy observability. Tworzy szybszy sposób analizowania niepełnych danych. Jeżeli natomiast mamy dobre dane, AI może pomóc streszczać incydenty, grupować podobne błędy, budować timeline, proponować hipotezy i przygotowywać post-mortem. Jak to zrobić rozsądnie, opisujemy w artykule AI w analizie logów Linux.
Najpierw zbierz dane, którym można zaufać.
Jak może wyglądać małe wdrożenie?
Linux --------+
|
Windows ------+
|
Firewall -----+--> COLLECTOR --> LOKI / OPENSEARCH --> GRAFANA
|
VPN ----------+
|
Backup -------+
Do tego:
I już mamy rozwiązanie dające realną wartość. Na pierwszym etapie nie potrzebujemy:
Sama centralizacja nie zastąpi też innych warstw ochrony, o czym piszemy w artykule antywirus nie wystarczy.
Jak podchodzimy do centralizacji logów w PRO-Admin?
Nie zaczynamy od produktu. Najpierw sprawdzamy:
Dopiero później dobieramy collectory, storage, transport, retencję, dashboardy i alerty.
CELEM NIE JEST
"mieć Loki" ani "mieć SIEM"
CELEM JEST
móc po awarii lub incydencie odpowiedzieć, co się wydarzyło, kiedy i na których systemach
FAQ - centralizacja logów
Czy mała firma potrzebuje SIEM?
Nie zawsze. W wielu przypadkach pierwszym krokiem powinna być zwykła centralizacja najważniejszych logów i kilka dobrze dobranych alertów.
Jak długo przechowywać logi?
Nie istnieje jedna właściwa wartość. Retencja powinna wynikać z potrzeb operacyjnych, bezpieczeństwa, wymagań prawnych lub kontraktowych oraz charakteru danych. Jeżeli log zawiera dane osobowe, należy uwzględnić również zasadę ograniczenia przechowywania wynikającą z RODO.
Czy syslog UDP jest bezpieczny?
Nie zapewnia poufności ani niezawodnego dostarczenia. RFC 5426 dopuszcza jego wykorzystanie w kontrolowanych środowiskach, ale dla ogólnego użycia rekomenduje transport TLS.
Czy trzeba używać Promtail do Loki?
Nie. Promtail osiągnął EOL 2 marca 2026. Grafana rekomenduje migrację do Grafana Alloy lub innego wspieranego collectora.
Czy Loki indeksuje całą treść logów?
Nie. Loki indeksuje przede wszystkim labels opisujące log streams. Treść logów pozostaje przeszukiwalna, ale działa to inaczej niż w systemach pełnotekstowego indeksowania.
Czy warto zbierać Windows Event Log centralnie?
Tak, szczególnie dla logowania i zdarzeń bezpieczeństwa. Windows posiada natywny Windows Event Forwarding i Windows Event Collector, dzięki którym można centralnie zbierać wybrane zdarzenia.
Czy centralizacja logów zastępuje monitoring?
Nie. Metryki odpowiadają między innymi na pytanie "jak system zachowuje się teraz", a logi dostarczają szczegółowych informacji o zdarzeniach. Najlepsze środowiska korzystają z obu.
Czy centralizacja logów zastępuje backup?
Nie. Logi nie są kopią danych biznesowych.
Czy logi trzeba backupować?
Zależy od wymagań. Dla logów istotnych z punktu widzenia bezpieczeństwa, audytu lub długiej retencji warto zapewnić odpowiednio trwałe przechowywanie, które nie zależy od pojedynczego systemu.
Podsumowanie
TO NIE JEST PROJEKT
"kupmy SIEM"
TO JEST PROJEKT
"przestańmy szukać historii awarii na dwudziestu serwerach"
Dobra architektura wygląda tak:
↓
↓
↓
↓
↓
↓ dopiero później
Najważniejsze rzeczy to:
Dashboard jest końcem tego procesu. Nie początkiem.
Logi są, ale podczas awarii nadal logujesz się na każdy serwer osobno?
W PRO-Admin możemy pomóc zbudować centralne logowanie obejmujące między innymi:
Nie zaczynamy od kupowania SIEM-u. Zaczynamy od pytania, jaką historię musimy być w stanie odtworzyć, kiedy coś przestanie działać. Jeśli nie masz własnego administratora, możemy utrzymywać to środowisko jako zewnętrzny dział IT.
Przeczytaj też
Jak sprawdzić, czy firma została zhakowana? 12 sygnałów, że atakujący jest już w Twojej sieci
Podejrzewasz, że firma mogła zostać zhakowana? Poznaj 12 praktycznych sygnałów wskazujących na włamanie do sieci, serwerów lub Microsoft 365. Wczesne wykrycie incydentu może uratować dane, pieniądze i reputację firmy.
BezpieczeństwoJak rozpoznać atak ransomware, zanim będzie za późno?
Ransomware rzadko pojawia się nagle - atakujący przebywają w sieci tygodniami. Sygnały ostrzegawcze: nietypowe logowania, błędy backupu, nowe konta administracyjne. Jak reagować.
AIAI podczas awarii. Jak użyć modelu językowego w pierwszych 30 minutach incydentu?
Jak bezpiecznie używać AI podczas awarii IT? Pierwsze 30 minut incydentu, analiza logów, hipotezy, Incident Commander, sanityzacja danych i granice automatyzacji.
AI10 rzeczy, których administrator IT nie powinien oddawać AI bez kontroli
AI może pisać Ansible, Terraform i analizować logi. Są jednak decyzje, których nie powinno podejmować bez kontroli. 10 granic bezpiecznej automatyzacji IT.
Porozmawiajmy o Twoim IT
Odpiszemy najszybciej jak to możliwe. Bezpłatna konsultacja i wycena.
Obsługujemy firmy w Szczecinie, Stargardzie i okolicach oraz realizujemy usługi zdalnie na terenie całej Polski.