Prosto między logi
- Maciej Piekulski,
- 30.06.2003
Na rynku produktów do zbierania i analizy logów można znaleźć programy wysoce wyspecjalizowane, oferty zaspokajające typowe potrzeby oraz kompleksowe narzędzia dla najbardziej wymagających.
Na rynku produktów do zbierania i analizy logów można znaleźć programy wysoce wyspecjalizowane, oferty zaspokajające typowe potrzeby oraz kompleksowe narzędzia dla najbardziej wymagających.
Sprawdzanie logów to zajęcie czasochłonne nawet w przypadku przeglądania danych z pojedynczego serwera. Gdy serwerów jest więcej, "uczciwe" przejrzenie zdarzeń i wychwycenie tych ważnych spośród nieistotnych - nawet posługując się narzędziami do gromadzenia logów ze zdalnych serwerów na jednej konsoli - jest po prostu mało skuteczne. Gromadzenie logów może przynieść rzeczywiste korzyści, jeśli dane zostaną poddane wnikliwej analizie. Z punktu widzenia bezpieczeństwa istotne jest wychwycenie korelacji pomiędzy zdarzeniami zachodzącymi jednocześnie lub sekwencyjnie w różnych miejscach sieci. Ciekawych spostrzerzeń mogą dostarczyć analizy porównawcze z różnych okresów.
Oczywiście, można korzystać z własnoręcznie pisanych czy też pobieranych z Internetu skryptów, jednak zawsze będą to metody zastępcze. W ofercie Microsoftu są narzędzia LogEventComb czy LogParser, jednak również one mają ograniczenia funkcjonalne w dziedzinie analizy. Z kolei pakiet MOM (Microsoft Operations Manager), choć umożliwia zbieranie i analizę logów, zawiera też wiele innych funkcji, które posiadają bezpłatne programy.
Przegląd możliwości trzech narzędzi do zbierania i analizy logów: LogCaster firmy RippleTech, S.E.L.M. (Security Event Log Monitor) firmy GFI oraz wersja pre-release najnowszego pakietu VigilEnt Log Analyzer firmy NetIQ, być może ułatwi wybór programu najlepiej odpowiadającego potrzebom użytkownika.
LogCaster (RippleTech)
LogCaster dostępny w wersji 3.63, oprócz zbierania logów systemów Windows NT/2000/XP, może równocześnie monitorować wydajność i dostępność działających na tych systemach usług (serwisów), np. SMTP, POP3, SQL itd., a także wydajność i stan komponentów serwera - procesorów czy pamięci. LogCaster wyposażono w serwer Syslog, dzięki czemu może gromadzić i analizować logi serwerów z Unixa oraz logi urządzeń sieciowych: przełączników, routerów, systemów zaporowych itd.
LogCaster pracuje z wykorzystaniem agentów zainstalowanych na poszczególnych systemach - agenci instalowani są w trybie push (tzw. wypychania) z konsoli zarządzającej, co pozwala na wykonanie całościowej instalacji i późniejszej aktualizacji oprogramowania z jednego miejsca. Agenci wykonują wstępną selekcję zdarzeń, które w czasie rzeczywistym są przesłane do centralnego serwera. Wstępne filtrowanie logów jeszcze na monitorowanym komputerze pozwala zminimalizować obciążenie sieci.
Zadaniem agenta jest porównanie zaistniałych zdarzeń z dostarczonym przez administratora wzorcem filtrów i wysłanie, bądź też nie, informacji o zdarzeniu do serwera zarządzającego EDS (Event Dispatcher Service). Zdarzenie, co do którego agent podjął decyzję o wysłaniu informacji, trafia do bazy danych serwera zarządzającego i jest wyświetlane w oknie podglądu konsoli. Na podstawie zadanych parametrów zdarzenia serwer EDS może też np. wysłać wiadomość SMS, e-mail, włączyć lub wyłączyć inną aplikację, uruchomić skrypt itd. Możliwości definiowania reakcji programu są bardzo rozbudowane. Przykładowo, jeżeli LogCaster zostanie sprzężony z systemem kontroli dostępu do pomieszczeń, można zbudować scenariusz, w którym po trzech nieudanych próbach logowania się do monitorowanego komputera pomieszczenie, z którego dokonywano tych prób, zostanie zamknięte.
Umieszczenie agentów systemu LogCaster na monitorowanych urządzeniach jest pożądane także z innych względów - umożliwia dokładniejszą kontrolę użytkowników mobilnych, których notebooki są bardziej narażone na próby złamania zabezpieczeń niż komputery stacjonarne. Zdobycie przez użytkownika uprawnień większych niż standardowo przyznane może z kolei ułatwić mu usunięcie niechcianych wpisów z dzienników zdarzeń.
LogCaster problem ten rozwiązuje dzięki tworzeniu kopii zdarzeń zachodzących w systemie. W trybie offline zdarzenia odkładają się w buforze, do momentu uzyskania połączenia z centralnym serwerem EDS. Agenta działającego na zdalnym komputerze można wyłączyć tylko z konsoli zarządzającej - oczywiście, jeżeli użytkownikowi nie udało się zdobyć własnym sumptem lokalnych uprawnień administracyjnych. LogCaster okazuje się przydatny także w innym scenariuszu - pozwala definiować reguły alarmujące administratora o fakcie lokalnego logowania, gdy osoba korzystająca z danego komputera jest poza firmą, np. w delegacji.
Niestety, mimo tak wielu zalet funkcjonalnych, LogCaster ma problemy ze skalowaniem architektury - nie umożliwia tworzenia struktury hierarchicznej, z serwerem głównym i serwerami pomocniczymi, zbierającymi logi z określonych segmentów sieci lub określonych typów usług.
Bardzo przydatnymi dostępnymi w programie modułami są: SysLog Watcher, Text File Watcher, Service Watcher, TCP/IP Watcher, Performance Watcher, Historical Performance Reporting. Każdy z nich pozwala na monitorowanie innych elementów systemu oraz podejmowanie określonych działań w przypadku zaistnienia okoliczności przewidzianych przez administratora.