Więcej

    SNMP w praktyce – podstawowa konfiguracja

    W poprzednim artykule o SNMP poruszyliśmy kwestie ściśle teoretyczne. Czymże jednak jest teoria bez praktyki? Dzisiaj przyjrzymy się nie tylko temu jak skonfigurować SNMP (co jest stosunkowo proste), ale również temu jak to robić mając na uwadze bezpieczeństwo sieci. Źle skonfigurowany protokół SNMP może naprawdę napsuć krwi! Na koniec przyjrzymy się pokrótce dostępnym na rynku rozwiązaniom software’owym do monitorowania sieci przy użyciu SNMP. Miłej lektury!

    Wprowadzenie

    SNMP nie należy do skomplikowanych protokołów. Wszystkie konfiguracje w tym artykule będą na przykładzie routera Cisco, a wykorzystywany system to IOS. Z premedytacją nie podaję tutaj konkretnego modelu urządzenia oraz wersji IOS gdyż sposób konfiguracji SNMP niemalże się wcale nie zmienił na przestrzeni lat i w więszkości przypadków jest niezależny od tych dwóch składowych. Ponadto pomijam konfigurację SNMP v1 gdyż jest to standard, który już dawno wyszedł z użycia. Ruszajmy!

    UWAGA! Zanim przejdziesz do dalszej części artykułu upewnij się, że jest Ci znana terminologia związana z SNMP. Została ona opisana w pierwszej części artykułu.

    Cykl artykułów o SNMP

    Artykuły publikowane w ramach cyklu o SNMP można czytać niezależnie, ale najlepsze efekty osiągniesz, jeśli zapoznasz się z nimi po kolei. Cały cykl składa się z następujących artykułów:

    1. SNMP w Teorii – Prosty i Sprawdzony Monitoring Sieci
    2. SNMP w Praktyce – Podstawowa Konfiguracja

    Konfiguracja SNMP v2c

    1. Konfigurację zaczynamy od włączenia SNMP oraz zdefiniowania read-only community string z poziomu priviledged exec mode:

    Router(config)#snmp-server enable
    Router(config)#snmp-server community public RO

    W tym przypadku community string ma wartość „public”.

    2. Jeżeli z jakichś powodów potrzebujesz mieć możliwość konfigurowania urządzenia za pomocą SNMP to należy skonfigurować również read-write community string:

    Router(config)#snmp-server community private RW

    W tym przypadku RW community string ma wartość „private”. Odradzam jednak taką konfigurację ze względów bezpieczeństwa.

    3. Jeżeli chcemy mieć możliwość wysyłania trapów, to należy również skonfigurować serwer SNMP, do którego będziemy je wysyłać. Zakładam, że serwer jest osiągalny.

    Router(config)#snmp‐server host 10.1.0.254 version 2c public

    W komendzie powyżej podajemy oczywiście IP serwera SNMP. Zauważ ponadto, że definiujemy w tej komendzie wersję SNMP jaką chcemy używać w komunikacji z serwerem (2c) oraz podajemy read-only community string („public”).

    4. SNMP na urządzeniu umożliwia nam skonfigurowanie dodatkowych parametrów, które mogą nam pozwolić w lepszej identyfikacji / dokumentacji urządzenia:

    Router(config)#snmp‐server location Wroclaw
    Router(config)#snmp‐server contact info@nastykusieci.pl
    

    Możemy przykładowo wskazać lokalizację urządzenia oraz adres e-mail osoby odpowiedzialnej za nie.

    5. Samo skonfigurowanie serwera SNMP nie wystarczy do wysyłania trapów! Należy jeszcze włączyć tą funkcjonalność:

    Router(config)#snmp‐server enable traps
    

    Komenda powyżej uruchomi wszystkie rodzaje trapów jakie obsługuje urządzenie. Konkretne rodzaje trapów mogą się różnić w zależności od modelu urządzenia. Możemy zobaczyć jakie trapy zostały uruchomione wyświetlając running-config:

    Router#show run | include traps
    snmp‐server enable traps vrrp
    snmp‐server enable traps ds1
    snmp‐server enable traps tty
    snmp‐server enable traps eigrp
    [...]

    Możemy oczywiście być o wiele bardziej granularni i zamiast włączać wszystkie trapy uruchomić tylko te przez nas wybrane:

    Router(config)#snmp-server enable traps frame-relay
    Router(config)#snmp-server enable traps bgp
    Router(config)#snmp-server enable traps snmp

    6. Mamy również możliwość wysyłania różnych trapów do osobnych serwerów SNMP (NMS). Na przykład:

    Router(config)#snmp‐server host 10.1.0.254 version 2c public snmp bgp
    Router(config)#snmp‐server host 10.2.0.138 version 2c public snmp frame-relay

    Podsumowując podstawowa konfiguracja SNMP v2c prezentuje się następująco:

    Router(config)#snmp-server enable
    Router(config)#snmp-server community public RO
    Router(config)#snmp‐server host 10.1.0.254 version 2c public
    Router(config)#snmp‐server location Wroclaw
    Router(config)#snmp‐server contact info@nastykusieci.pl
    Router(config)#snmp‐server enable traps

    Konfiguracja SNMP v3

    SNMP v3 bazuje na zupełnie innym modelu zabezpieczeń. Spośród trzech trybów konfiguracji, tutaj skupimy się na trybie auth-priv (więcej informacji na ten temat w pierwszym artykule).

    1. Konfigurację zaczynamy od włączenia SNMP, uruchomienia trapów oraz skonfigurowania informacji opcjonalnych:

    Router(config)#snmp-server enable
    Router(config)#snmp‐server enable traps
    Router(config)#snmp‐server location Wroclaw
    Router(config)#snmp‐server contact info@nastykusieci.pl

    2. W następnym kroku definiujemy grupę SNMP. Grupy SNMP używamy po to aby mapować użytkowników SNMP (users) z widokami SNMP (views). O widokach porozmawiamy w dalszej części artykułu. W tym miejscu musisz natomiast wiedzieć, że w SNMP v3 obligatoryjne jest skonfigurowanie użytkowników. Dlatego też musimy najpierw skonfigurować grupę, do której następnie podwiążemy użytkowników:

    Router(config)#snmp-server group TEST_GROUP v3 priv

    W przykładzie powyżej nadaliśmy grupie nazwę „TEST_GROUP”. Warto zauważyć, że określamy tu również wersję SNMP oraz tryb zabezpieczenia w przypadku wersji 3. Poza „priv” (oferującym szyfrowanie i uwierzytelnianie) można również skonfigurować „auth” (samo uwierzytelnianie) lub „noauth” (brak zabezpieczeń, co jest równoznaczne z używaniem community string’ów). Jeżeli nie podasz ostatniego argumentu to domyślnie zostanie użyty tryb „noauth”!

    3. W dalszym kroku tworzymy użytkownika SNMP, którego mapujemy do utworzonej wcześniej grupy:

    Router(config)#snmp‐server user TEST_USER TEST_GROUP v3 auth md5 STRONG_PASSWORD priv aes 128 ENCRYPT_KEY
    
    Configuring snmpv3 USM user, persisting snmpEngineBoots. Please Wait...
    

    Powyżej stworzyliśmy użytkownika „TEST_USER”, którego zmapowaliśmy do grupy „TEST_GROUP”. Wskazaliśmy, że używana będzie wersja 3. SNMP. Uwierzytelniania będziemy dokonywać za pomocą hash’a MD5, a hasłem użytkownika będzie „STRONG_PASSWORD”. Na koniec jako metodę szyfrowania wskazujemy AES-128, a klucz szyfrowania konfigurujemy jako „ENCRYPT_KEY”.

    Ważne: skonfigurowani użytkownicy nie są widoczni w running-config. W celu wyświetlenia użytkowników należy użyć „show snmp users”.

    4. W celu wysyłania trapów musimy oczywiście wskazać serwer SNMP. Ponieważ używamy SNMP v3, konieczne jest również wskazanie użytkownika:

    Router(config)#snmp-server host 10.1.0.254 version 3 TEST_USER

    Podsumowując podstawowa konfiguracja SNMP v3 prezentuje się następująco:

    Router(config)#snmp-server enable
    Router(config)#snmp‐server location Wroclaw
    Router(config)#snmp‐server contact info@nastykusieci.pl
    Router(config)#snmp‐server enable traps
    Router(config)#snmp-server group TEST_GROUP v3 priv
    Router(config)#snmp‐server user TEST_USER TEST_GROUP v3 auth md5 STRONG_PASSWORD priv aes 128 ENCRYPT_KEY
    Router(config)#snmp-server host 10.1.0.254 version 3 TEST_USER

    Chyba nie było tak źle? SNMP nie wymaga zapamiętania zbyt wielu komend i jest stosunkowo prosty. Oczywiście wszędzie tam gdzie możesz należy używać SNMP v3. W dalszej części przyjrzymy się widokom SNMP, kwestiom bezpieczeństwa oraz troubleshootingowi!

    Jakiego serwera SNMP (NMS) używasz w Twojej organizacji bądź jaki mógłbyś polecić innym sieciowcom?

    🗳 Jak przydatna była ta publikacja?

    Średnia ocena 4.7 / 5. Ilość głosów: 27

    Brak ocen. Bądź pierwszy!

    Dziękujemy za ocenę! Zapraszamy Cię do obserwowania NSS w mediach społecznościowych!

    Przykro nam, że ta publikacja okazała się być dla Ciebie nieprzydatna!

    Uwaga: Twój głos będzie liczony tylko jeśli udzielisz feedbacku używając formularza poniżej.

    Jak możemy poprawić tę publikację?

    Damian Michalak
    Network Consultant, Twórca Na Styku Sieci
    guest
    0 - Ilość komentarzy
    Inline Feedbacks
    View all comments

    Sprawdź swoją wiedzę z CCNA

    Otrzymuj nasz cotygodniowy mailing "Czwartest" i sprawdź swoją wiedzę rozwiązując wyzywające zadania z zakresu certyfikacji CCNA. Dasz radę?

    Uzupełniając powyższe pole wyrażasz zgodę na otrzymywanie od GetGoodNet Damian Michalak z siedzibą we Wrocławiu newslettera zawierającego treści edukacyjne. Zgodę możesz wycofać w każdym czasie.

    NSS na Social Media

    1,611FaniLubię
    72ObserwującyObserwuj
    133ObserwującyObserwuj
    1,220SubskrybującySubskrybuj

    Najnowsze artykuły

    spot_img

    Może Cię też zainteresować...

    0
    Co sądzisz na temat tej publikacji? Zostaw proszę komentarzx
    ()
    x