2. Zabezpieczenia w Sieciach Komputerowych

2.1. Narzędzia i protokoły zarządzania siecią: SNMP, NetFlow

SNMP i NetFlow to dwa różne, ale komplementarne mechanizmy używane do zbierania informacji o stanie i ruchu w sieci. SNMP (ang. Simple Network Management Protocol) działa w modelu zarządzania opartego na agentach i menedżerze: na urządzeniach sieciowych jak routery, przełączniki, serwery działa oprogramowanie‑agent, które udostępnia dane o stanie urządzenia; system nadzoru (menedżer) zadaje pytania typu „get” lub „walk” i otrzymuje odpowiedź zawierającą dane, albo sam może wysłać informację (trap lub inform) o zdarzeniu. SNMP używa „MIB” – bazy obiektów zarządzania przedstawionych w drzewiastej strukturze, identyfikowanych przez OID (Object Identifier). Przykład: jeśli menedżer zapyta „1.3.6.1.2.1.1.3.0” (sysUpTime), agent odpowie liczbą  1000235, co oznacza czas pracy urządzenia w setnych częściach sekundy. Protokół ma trzy główne wersje – SNMPv1, v2c i v3; różnice obejmują uwierzytelnianie, poufność, autoryzację. SNMPv3 dodał uwierzytelnianie HMAC (MD5 lub SHA) i opcjonalnie szyfrowanie DES/AES. Tradycyjna konfiguracja: urządzenie definiuje „community string” (hasło w stylu „public”), które menedżer musi podać, by uzyskać dostęp „read-only” lub „read-write”. Trap pozwala agentowi wysyłać alerty bez pytania, np. przy przekroczeniu progów CPU czy awarii interfejsu. Dla wydajniejszego monitorowania stosuje się polling – okresowe odpytywanie agentów, co umożliwia zbudowanie historycznych wykresów, trendów i alertów.

Rysunek: model SNMP

NetFlow (i podobne IPFIX) działa nieco inaczej: urządzenie sieciowe (router/switch/firewall) eksportuje zbiory informacji o przepływach ruchu — zestawach pakietów, które dzielą te same właściwości (tzw. flow). Flowy są definiowane przede wszystkim przez pięć parametrów: adres źródłowy IP, adres docelowy IP, port źródłowy, port docelowy, protokół (5‑tuple), ale mogą być rozszerzone o dodatkowe atrybuty – typ serwisu (ToS), AS BGP, liczba pakietów, bajtów, czas rozpoczęcia i zakończenia, interfejs. Urządzenie gromadzi dane flow, a gdy flow się kończy (timeout wysoki lub niski), pakiety, których był częścią, lub gdy liczba bajtów przekroczy wartość progową, wysyła „record” do kolektora NetFlow. Kolektor zbiera, agreguje i analizuje te rekordy, co pozwala na identyfikację największych pod względem ruchu użytkowników, stosunków między sieciami, kanałów geograficznych, identyfikację problemów (np. błędów), wykrycie ataków (DOS/DDOS), analizę trendów.

NetFlow oferuje prostą, ale potężną mapę ruchu. Korzysta się z niestandardowych portów UDP (np. 2055) lub TCP/IP w IPFIX (por. RFC 7011), co pozwala przesyłać dane wśród różnych typów urządzeń. W połączeniu z SNMP można np. zestawić, że interfejs o największym ruchu (według SNMP – ifInOctets/ifOutOctets) odpowiada największym przepływom NetFlow, co daje pełny obraz wydajności i obciążenia sieci. SNMP ma ograniczenie: większość urządzeń utrzymuje licznik bajtów do wartości 32 bitów – w szybkich interfejsach trzeba używać SNMPv2 z counternami 64‑bitowymi (Counter64) – inaczej można przeoczyć fakt przerwania licznika.

Administracja wynajduje w SNMP ustawienia progów (thresholdy) dla CPU, pamięci, stanu interfejsów, natomiast NetFlow pozwala analizować przepływy, latencje, „elefanty” (elephant flows) i „myszy”. Gdy flow rzeczywiście trwa długo i zużywa wiele zasobów, można go przebadać i zoptymalizować (QoS, routowanie), albo throttling i QoS na podstawie szczytów wykresów. SNMP i NetFlow można połączyć z narzędziami SIEM/SOAR, aby reagować na zmiany.

Złożone środowiska sieciowe często integrują SNMP i NetFlow z panelem typu grafana, rrdtool/Cacti, SolarWinds, PRTG, Paessler, ELK stack z Elastic Stack – zbierają dane, tworzą historyczne wykresy, przewidują trendy i alarmują. Często router odpytywany SNMP co 60 s, zbiera NetFlow w czasie rzeczywistym w oknach 5 min, a aplikacje agregują i wizualizują korelacje między obciążeniem, wydajnością a flowami.

Rysunek: integracja SNMP oraz NetFlow

SNMP pozwala monitorować konfigurację, interfejsy, błędy, zasoby urządzeń, natomiast NetFlow karmiony przez informacje o ruchu – pozwala ocenić wzorce ruchu, przepustowości, kanały i bezpieczeństwo sieci. To rozdanie SNMP+NetFlow jest standardem w wielu przedsiębiorstwach, ISP i centrach danych.

Wysokiej klasy rozwiązania korzystają również z rozszerzeń takie jak sFlow, jflow (Cisco), IPFIX czy eFlow (Huawei). IPFIX jest standaryzowaną wersją NetFlow v9, używa protokołu eksportu szablonów i rekordów. sFlow to próbkuj ruch pasujący co N‑ty pakiet i eksportuje ramki wprost do kolektora, co obniża narzut w szybkich sieciach 100 Gbps+.

Z punktu widzenia implementacji, SNMP wymaga konfiguracji ACL („grant snmp read‑only” lub v3 users), NetFlow – definicji „flow exporter” (adres kolektora, port UDP) i „flow monitor” powiązanego ze szablonem. Aktywacja trace‑flow połączenia analizuje także pakiety TCP/UDP poruszające się przez dane interface’y.

W serwisach chmurowych (AWS, Azure) SNMP nie działa bezpośrednio – korzysta się z CloudWatch, Azure Monitor, ale można wdrożyć agenty SNMP/Telegraf do VM‑ów. Dla NetFlow można użyć flow logs (VPC Flow Logs / NSG Flow logs), które umożliwiają podobną analizę ruchu, a integracja z SIEM analizuje zagrożenia, nadużycia, anomalie. SNMP może posłużyć do audytu, NetFlow do wykrywania botnetu, ataków DDoS, skanowania portów, wycieków danych.