| Termin | Definicja |
|---|---|
| log forwarding | Log forwarding to przesyłanie zapisów dziennika do centralnego systemu gromadzenia i analizy zdarzeń. Na czym polega log forwardingLog forwarding, czyli przekazywanie logów, polega na automatycznym wysyłaniu zapisów dziennika z komputera, aplikacji, urządzenia sieciowego albo usługi do innego systemu, który pełni funkcję centralnego odbiorcy. Źródło zdarzeń może zapisywać informacje lokalnie, ale równocześnie przekazuje ich kopię do serwera logów, systemu SIEM, platformy monitoringu lub narzędzia analitycznego. W centralnym miejscu można łączyć zdarzenia z wielu urządzeń, wyszukiwać powtarzające się błędy oraz ustalać kolejność operacji wykonanych w różnych komponentach infrastruktury. Przekazywany wpis zwykle zawiera co najmniej czas zdarzenia, nazwę źródła, poziom ważności i opis operacji. W zależności od formatu mogą występować także identyfikator procesu, nazwa użytkownika, adres IP, nazwa hosta, kod błędu lub identyfikator żądania. Sam mechanizm forwarding nie oznacza jeszcze analizy treści. Jego zadaniem jest dostarczenie danych do wskazanego odbiorcy, natomiast filtrowanie, korelacja, indeksowanie i generowanie alarmów są realizowane przez system po stronie centralnej. Formaty i protokoły przesyłaniaJednym z powszechnie stosowanych mechanizmów jest syslog. RFC 5424 opisuje ustrukturyzowany format komunikatów syslog, w którym można określić między innymi priorytet, wersję, znacznik czasu, nazwę hosta, nazwę aplikacji, identyfikator procesu i identyfikator wiadomości. Starszy, nieformalny format określany jako BSD syslog został opisany w RFC 3164. Oba formaty spotyka się w urządzeniach sieciowych, systemach Unix i narzędziach takich jak rsyslog lub syslog-ng, lecz ich dokładna obsługa zależy od konfiguracji nadawcy i odbiorcy. Syslog może być przekazywany przez UDP, TCP albo połączenie TCP zabezpieczone TLS. UDP nie zapewnia potwierdzenia dostarczenia ani retransmisji, dlatego pojedynczy wpis może nie dotrzeć do odbiorcy w przypadku przeciążenia lub przerwania sieci. Dla syslog przesyłanego przez TLS używa się specyfikacji RFC 5425, a port 6514 jest zarejestrowanym portem dla tego zastosowania. Przy przesyłaniu syslog przez TCP istotne jest również prawidłowe rozdzielanie kolejnych komunikatów; zasady framingu opisuje RFC 6587. Zastosowanie konkretnego protokołu powinno wynikać z możliwości źródła, wymagań odbiorcy i oczekiwanej odporności na utratę danych. Konfiguracja, kolejki i niezawodnośćKonfiguracja log forwarding obejmuje wskazanie źródeł, adresu odbiorcy, portu, protokołu, formatu wiadomości oraz reguł wyboru zdarzeń. Nadawca może przekazywać wszystkie wpisy albo tylko określone klasy, na przykład błędy aplikacji, zdarzenia uwierzytelniania lub komunikaty dotyczące usług sieciowych. Filtrowanie zmniejsza ruch i liczbę danych do indeksowania, ale zbyt wąskie reguły mogą usunąć informacje potrzebne później do odtworzenia awarii. Dlatego konfigurację warto sprawdzić na rzeczywistych zdarzeniach, a nie tylko na podstawie poprawnego uruchomienia procesu. Ważnym elementem jest zachowanie nadawcy podczas niedostępności centralnego odbiorcy. Dojrzałe narzędzia potrafią buforować komunikaty w pamięci albo w plikach i wysłać je po przywróceniu połączenia. Trzeba jednak rozróżnić kolejkę od gwarancji dostarczenia: przepełnienie bufora, usunięcie pliku kolejki, restart hosta lub błąd dysku może spowodować utratę wpisów. W systemach korzystających z wielu źródeł należy także ujednolicić synchronizację czasu, na przykład za pomocą NTP, ponieważ niezgodne zegary utrudniają ustalenie kolejności zdarzeń. Po wdrożeniu sprawdza się zarówno dostępność połączenia, jak i faktyczną obecność wpisów w centralnym systemie. Znaczenie log forwarding przy diagnostyce komputerówCentralne przekazywanie logów ułatwia diagnozowanie problemów, które występują na styku kilku elementów. Przykładowo można zestawić wpis z aplikacji z komunikatem systemowym o błędzie dysku, utracie połączenia sieciowego albo restarcie usługi. Logi przesłane z wielu komputerów pozwalają wykryć, czy problem dotyczy jednego urządzenia, konkretnej wersji oprogramowania, wspólnego segmentu sieci czy większej liczby hostów. Przydatne jest zachowanie nazwy źródła oraz oryginalnego czasu zdarzenia, ponieważ ich zastąpienie czasem odebrania może zniekształcić przebieg awarii. Podczas sprawdzania działania mechanizmu należy zweryfikować kilka niezależnych punktów: czy źródło generuje nowe wpisy, czy reguła je wybiera, czy połączenie dociera do właściwego adresu i portu, czy odbiorca akceptuje użyty format oraz czy komunikaty są poprawnie indeksowane. W przypadku TLS dodatkowo sprawdza się certyfikat serwera, zaufany urząd certyfikacji, nazwę hosta i zgodność ustawień kryptograficznych. Błędy forwarding mogą wynikać nie tylko z awarii sieci, lecz także z blokady zapory, pełnego dysku, błędnego mapowania pól, różnicy czasu lub limitu rozmiaru wiadomości. Przy serwisowaniu laptopów, komputerów PC i podzespołów analiza lokalnych oraz centralnie zebranych logów może pomóc powiązać objawy użytkownika z konkretnym błędem systemowym. |