The Dude – Zbieranie informacji poprzez protokół SNMP ( Mikrotik / Windows)
Protokół SNMP (ang. Simple Network Managment Protocol) został opracowany w celu monitorowania systemów podłączonych do sieci, oraz zarządzania nimi. Protokół SNMP pozwala aplikacjom na wysyłanie żądań dotyczących informacji diagnostycznych do monitorowanych urządzeń. Oczywiście urządzenie monitorujące jak i monitorowane muszą być wyposażone w oprogramowanie, które wysyła i odbiera informację SMNP. Moduł ten nosi nazwę Agenta SNMP. Protokół SNMP pracuje na porcie TCP i UDP 161
Dziś zdecydowana większość urządzeń podłączanych do sieci ma zaimplementowany protokół SNMP. W tym artykule opiszemy jak zbierać informacje za pomocą narzędzia The Dude z urządzeń wyposażonych w oprogramowanie RouterOS oraz Windows.
1. Mikrotik
W pierwszej kolejności uruchamiany Protokół SNMP na Mikrotiku, którego chcemy monitorować (domyślnei funkcjonalność jest wyłączona).
Z kolumny wybieramy IP>SNMP, w okienku zaznaczamy Enabled, oraz wpisujemy adres IP urządzenia, na które będziemy wysyłać zdarzenia typu TRAP.
Teraz przechodzimy do The Dude i dodajemy urządzenie do monitorowania. Na wolnym polu naciskamy Prawym przyciskiem myszy>Add Device. I w zakładce wpisujemy Adres IP, login i hasło (koniecznie zaznaczamy opcję RouterOS), następnie przechodzimy dalej naciskając Next
Po pojawieniu się okienka usług, uruchamiany skanowanie dostępnych usług przyciskiem Discover.
Jeżeli prawidłowo wpisaliśmy dane na Mikrotik’u oraz w The Dude, ukażą nam się usługi rozgłaszane poprzez protokół SNMP.
Teraz widzimy monitorowane urządzenie, wraz z domyślnymi wyświetlanymi wartościami. Urządzeniem, które monitorujemy jest RB2011UiAS-RM. Ma on możliwość sprawdzania na napięcia wejściu oraz temperatury. I te właśnie parametry za pomocą SNMP wyświetlimy pod urządzeniem. Zrobimy również wykres temperatury, aby móc monitorować poziom temperatury w różnych porach dnia.
Wszystkie wartości, jakie są dostępne poprzez Simple Network Managment Protocol, możemy zobaczyć naciskając na urządzenie PPM (prawy przycisk myszy)>Tools>Snmpwalk
Jak widać poniżej, ten sposób nie jest do końca czytelny dla użytkownika. Po lewej stronie znajdują się ciągi cyfr. Są to tzw. OID (ang. Object identifier). OID, czyli identyfikatory obiektu, w tym wypadku identyfikatory wartości SNMP. Stosuje się je po to, aby odróżnić od siebie różne badane wartości.
Najlepszym sposobem na odszukanie interesującego nas parametru jest Internet. W przypadku Mikrotika, polecam forum.mikrotik.com, gdzie są opisane OID-y.
OID-em dla temperatury jest 1.3.6.1.4.1.14988.1.1.3.10.0
natomiast dla napięcia 1.3.6.1.4.1.14988.1.1.3.8.0
Aby te wartości zaprezentować na ikonie naszego urządzenia – wracamy do głównego okna The Dude i ponownie klikamy PPM na nasze monitorowane urządzenie, wybierając opcję Appearance
Część parametrów jesteśmy w stanie dodać bez konieczności znania OID, za pomocą funkcji Insert Variable. Możemy tam odszukać takie wartości jak TimeAndDate. Jak widać poniżej dodałem tę właśnie wartość na końcu wartości Label
Po zatwierdzeniu zmian – informacja o urządzeniu zawiera obecnie dane o czasie:
Są to jednak wartości podstawowe i nie obejmują wielu danych jakie mogły by nas interesować.
Dodajmy więc informację o temperaturze oraz napięciu urządzenia na urządzeniu.
Wracamy do opcji Appearance a w zakładce Label dodajemy OID.
Prawidłowa składnia OID wygląda tak: [oid(“Identyfikator OID”)]
Zgodnie z powyższym do zakładki Label dodajemy 2 wpisy:
Temperatura:[oid(“1.3.6.1.4.1.14988.1.1.3.10.0”)]C
Voltage: [oid(“1.3.6.1.4.1.14988.1.1.3.8.0”)]V
Tekst znajdujący się poza nawiasem kwadratowym, pełni jedynie funkcję opisową.
Po dodaniu tych elementów, ikona naszego urządzenia posiada dodatkowe pola z informacjami (temperatura, napięcie)
Za pomocą OID-ów mamy szybki podgląd na najważniejsze dla nas wartości bez konieczności użycia osobnego oprogramowania czy zagłębiana się w ustawienia systemów.
Teraz pokażemy jak zrobić wykres temperatury.
W pierwszej kolejności musimy utworzyć źródło danych. Za jego pomocą wykres będzie pobierał wartości co określony czas i nanosił je na wykres.
W głównym panelu przechodzimy do zakładki Charts, a następnie wybieramy Data Source:
Dodajemy nowe źródło danych za pomocą + , oraz podajemy Nazwę, Jednostkę, Adres IP urządzenia ,OID oraz Interwał czasowy.
Składnia dla źródła danych wygląda tak: oid(”identyfikator OID”)
Przechodzimy do zakładki Charts, oraz dodajemy nowy wykres:
Po dodaniu wykresu, klikamy na nim dwukrotnie. Dodajemy źródło danych z listy rozwijanej, wybieramy kolor wykresu i zatwierdzamy.
Po stworzeniu nowych wykresów, mamy do nich dostęp w zakładce Charts po lewej stronie
Tym sposobem możemy tworzyć wykresy bardzo wielu danych m.in.:
-sygnał linku radiowego
-transfer na poszczególnych interfejsach
-napięcia
2. Teraz zajmijmy się protokołem SNMP dla Windowsa. Jest on zdecydowanie trudniejszy do skonfigurowania, ponieważ musimy uruchomić protokół SNMP, dodać regułki do Firewalla, oraz w usługach nadać mu wspólnotę oraz adresy IP, na które będzie odpowiadać.
Standardowo dodajemy urządzenie do monitoringu:
W usługach monitorowanych prawdopodobnie pojawi się tylko ping ( o ile nie jest zablokowany na Firewall’u).
Aby uruchomić agenta SNMP na naszym Windows’ie, w menu ‘start’ wybieramy Komputer, następnie Odinstaluj lub zamień program.
Z lewej strony wybieramy opcję Włącz lub wyłącz funkcję systemu Windows.
Z listy wybieramy opcję Protokół SNMP (Simple Network Managment Protocol), oraz włączamy zarówno Protokół SNMP jak i WMI:
Po uruchomieniu protokołu przechodzimy do Usług systemu Windows i tam wyszukujemy SNMP Service. W Windows 7 zamiast SNMP Service będzie Usługa SNMP.
Wchodzimy w SNMP Service, zakładka Zabezpieczenia. Dodajemy wspólnotę (w moim przypadku jest to standardowa wspólnota ‘public’). Należy pamiętać, że wspólnota na The Dude musi się zgadzać ze wspólnotami Agentów SNMP( domyślnie na wszystkich jest ustawiony public). Na końcu wpisujemy adres IP urządzenia monitorującego.
To jeszcze nie wszystko 🙂
Dla urządzeń w sieci lokalnej dane z tego komputera poprzez SNMP będą już dostępne. Jeżeli sieć już jest bardziej rozległa i urządzenie monitorujące znajduję się w innej podsieci niż sieć lokalna mojego komputera to zablokuje na Firewall.
Aby temu zaradzić musimy odblokować port 161 TCP i UDP dla adresu IP serwera The Dude. A więc do dzieła 🙂
Przechodzimy do Panelu sterowania>Zapora systemu Windows i wybieramy opcję Ustawienia Zaawansowane.
Wybieramy po lewej stronie Reguły przychodzące, następnie po prawej Nowa reguła.
Jako typ reguły wybieramy Port
Zaznaczamy TCP i wpisujemy numer portu SNMP czyli 161
Następnie Zezwalamy na połączenie
Na końcu musimy nadać tylko nazwę regułki.
Analogicznie tworzymy regułę dla protokołu UDP
Z racji tego, że SNMP z Systemu Windows jest wysyłany z opóźnieniem musimy poczekać kilka minut zanim dostaniemy pierwsze informację na temat naszego komputera.
Chcąc aby informacje zapisywane były w formie wykresów musimy jeszcze raz przeskanować dostępne usługi. Klikamy dwukrotnie na nasz komputer, przechodzimy do zakładki Services i wybieramy Discover
Po pojawieniu się dostępnych usług przechodzimy do zakładki History. Jak widać System zaczyna rysować wykresy.
Wiele informacji możemy zobaczyć w zakładce SNMP, klikając na nasze urządzenie.
Do następnego!
Wojciech Kujawa