Warning: include(/home/sw/ziembor/public_html/include/headtmpl.php) [function.include]: failed to open stream: No such file or directory in /Windows_NT/snmp-base-install-w2k.php on line 1

Warning: include() [function.include]: Failed opening '/home/sw/ziembor/public_html/include/headtmpl.php' for inclusion (include_path='.:/:/usr/local/php/pear5') in /Windows_NT/snmp-base-install-w2k.php on line 1
Konfiguracja SNMP dla Windows 2000

Konfiguracja agenta SNMP dla Windows 2000

Ziemek Borowski

Założenia

SNMP: Simple Network Management Protocol -- jest narzędziem służącym do konfiguracji i nadzorowania urządzeń sieciowych i hostów działających w sieciach IP. Pozwala na szeroki zakres operacji, począwszy od typowego monitorowania poprzez sterowanie poszczególnymi urządzeniami do zarządzania z wykorzystaniem dedykowanych pakietów oprogramowania całymi sieciami. Jego szeroka popularność bierze się z jednej strony z faktu standaryzacji (przez IETF Network Management Research Group Charter (NMRG)) -- włącznie z gotowymi już metodami i formalnymi opisami większości parametrów do nadzorowania, z drugiej przez relatywną łatwość pisania agentów i narzędzi zarządzających. Na nadzorowanym systemie/węźle instaluje sie tak zwanego agenta: tj. program działający w trybie usługi/daemona odpowiadający na żądania stacji zarządzających (tj. klientów), wydających zlecenia agentowi. Zlecenia te mogą odnosić się do pobrania pewnej wartości (GET, GET-NEXT, GET-BULK, GetNextRequest), ustawienia wartości (SET). W wypadku dostępnych z Windows NT i 2000 agentów SNMP uwierzytelnianie odbywa się za pomocą tak zwanej community (znaku współposiadania, wspólnoty) -- wywodzącej się z protokołu SNMP v1 i SNMP v2c (w wersji SNMP v3 domyślną metodą uwierzytelniania jest tak User Security Model zawierający oddzielne identyfikatory dla różnych użytkowników oraz szyfrowane w czasie transmisji (choć tylko pojedynczym DES-em) hasła. Dlatego też należy chronić agenta przed nieuprawnionym dostępem.

Podobnie jak w większości usług sieciowych przede wszystkim rozważyć czy oferowana funkcjonalność jest nam potrzebna, jakie jest ryzyko stosowania danej usługi, w jaki sposób można obejść do tej pory stosowane zabezpieczenia, czy nie istnieją inne metody zapewnienia danej funkcji i czy te inne metody nie są bezpieczniejsze. Jeśli zapadnie decyzja o wdrożeniu/dalszym utrzymywaniu SNMP do monitorowania i konfigurowania sieci należy wykonać pewną ilość zabiegów zabezpieczających. Do podstawowych należą na pewno:

Aktorzy

Przygotowania

Potrzebne ,,rekwizyty'':

Instalacja

Usługę SNMP w środowisku Windows 2000 instalujemy podobnie do innych komponentów Windows:

  1. Control Panel -> Add/Remove Programs -> Add/Remove Windows Components -> Management and Monitoring Tools -> Next -> Close
  2. restart systemu
  3. ponowna instalacja Service Pack
  4. restart systemu
  5. instalacja poprawki MS02-006 Unchecked Buffer in SNMP Service Could Enable Arbitrary Code to be Run.
  6. restart systemu
  7. zmiana community (znaku współposiadania) My Computer->Manage-> Services and Applications-> Services -> w panelu Details, dwa razy kliknij Service w zakładce Agent wpisz nazwę/e-mail w polu kontakt Contact i informację o lokalizacji w polu Location wybierając wszystkie z dostępnych własności:

    patrz rysunek: rysunek zakładki agent)

  8. Ustawianie Communities Wybrać zakładkę Security. Wybrać przyciś Add. W polu wyboru okienka SNMP Service Configuration Community rights wybrać READ ONLY a w polu Community Name wpisać nazwę ,,znaku współposiadania'' (nanosząc go równocześnie na Formularz zmianay hasła). Potwierdzić przyciskiem OK.

    np. zakładka bezpieczeństwo

    Uwaga: nazwa community jest zależna od wielkości liter: PUBLIC i public to różne community
  9. Wybrać opcję Accept SNMP packets from these hosts i przyciskiem Add dodać nazwę lub adres IP komputera z którego można wykonywać operacje na agencie.
  10. Sprawdzić czy agent działa poprawnie: p:\> snmputil get rat foobaktom4y .1.3.6.1.2.1.1.1.0 (snmputil jest dostępny Windows 2000 Resource t) lub z wykorzystaniem pakietu ucd-snmp: http://net-snmp.sf.net/
    ziembor@bluesky nt.faq.net.pl$ snmpstatus -c foobaktom4y rat
    [192.168.42.13]=>[Hardware: x86 Software: Windows 2000 ] Up: 3:34:46.21
    Interfaces: 3, Recv/Trans packets: 139556/107155 | IP: 157461/125511
    
  11. Jeśli nasze zasady zabezpieczeń wymagają tego konfigurujemy filtr pakietów IPsec (zgodnie z artykułem HOW TO: Configure Network Security for the SNMP Service in Windows 2000 (Q313381)) -- choć oczywiście nie chroni to przed podsłuchaniem połączenia między agentem a stacją zarządzającą, ani przed potencjalnym podszywaniem się pod stację zarządzającą -- tu jedynym lekarstwem jest udostępnienie SNMP tylko dla uwierzytelnianych tuneli IPsec lub PTPP

Konfiguracja

Po tak przeprowadzonej instalacji dostępna jest tylko część możliwych wartości: tylko te podstawowe, odnoszącze sie do MIB-I i MIB-II. Brak jest dostępu do zmiennych definiowanych przez Microsoft, tj. do .1.3.6.1.4.1.311. Aby je udostępnić należy pobrać pliki perfmib.dll oraz perfmib.ini:

  1. skopiować pliki perfmib.dll and perfmib.ini do katalogu %Systemroot%\system32. Plik perfmib.ini ustawia konfigurację perfmib.dll tak by udostępniać liczniki dostępne za pomocą PerfMon dla SNMP. Plik ten tworzony jest z pomocą perf2mib.exe
  2. dodać klucze mocujące perfmib.dll jako rozszerzenie agenta SNMP (SNMP Agent Extension):
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SNMP\Parameters\ExtensionAgents]
    "1"="SOFTWARE\\Microsoft\\LANManagerMIB2Agent\\CurrentVersion"
    "2"="SOFTWARE\\Microsoft\\RFC1156Agent\\CurrentVersion"
    "3"="SOFTWARE\\Microsoft\\HostMIB\\CurrentVersion"
    "4"="SOFTWARE\\Microsoft\\SNMPMIB\\CurrentVersion"
    "5"="SOFTWARE\\Microsoft\\SNMP_EVENTS\\CurrentVersion"
    "6"="SOFTWARE\\Microsoft\\ACS\\CurrentVersion"
    "7"="SOFTWARE\\Microsoft\\IGMPMibAgent\\CurrentVersion"
    "8"="SOFTWARE\\Microsoft\\IPMulticastMibAgent\\CurrentVersion"
    "9"="SOFTWARE\\Microsoft\\RIPMibAgent\\CurrentVersion"
    "10"="SOFTWARE\\Microsoft\\OSPFMibAgent\\CurrentVersion"
    "11"="SOFTWARE\\Microsoft\\BOOTPMibAgent\\CurrentVersion"
    "12"="SOFTWARE\\Microsoft\\IPXMibAgent\\CurrentVersion"
    "0"="Software\\Microsoft\\W3SVC\\CurrentVersion"
    "13"="Software\\Microsoft\\MSFTPSVC\\CurrentVersion"
    "15"="SOFTWARE\\Microsoft\\IASAgent\\CurrentVersion"
    "PerfAgent"="SOFTWARE\\Microsoft\\PerformanceAgent\\CurrentVersion"
    
    oraz
    Windows Registry Editor Version 5.00
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PerformanceAgent]
    
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PerformanceAgent\CurrentVersion]
    "Pathname"="%SystemRoot%\\System32\\perfmib.dll"
    
  3. ponownie uruchomić usługę SNMP
    p:\>net stop snmp
    The SNMP Service service is stopping..
    The SNMP Service service was stopped successfully.
    
    
    p:\>net start snmp
    The SNMP Service service is starting.
    The SNMP Service service was started successfully.
    

MRTG -- rozproszone monitorowanie wydajności/obciążenia.

Najczęstszą przyczyną instalacji agenta SNMP jest chęć monitorowania systemu Windows NT/W2K z systemów Uniksowych z użyciem pakietu MRTG. Poniżej znajduje się przykładowa konfiguracja MRTG dostosowana do monitorowania tak przygotowanego systemu:

http://ziembor.waw.pl/Windows_NT/w2k-snmp-base-install/w2k.cfg

.

Poza MRTG można użyć jednego z wielu dostępnych narzędzi:

Można ew. używać tego pakietu w środowisku Windows -- sama instalacja MRTG opisana jest dobrze na stronie domowej projektu http://www.mrtg.org/ -- tyle, że wówczas lepiej użyć liczników dostępnych od razu z performance log service -- ale to temat na inny, duży, artykuł ;-).

Patrz też


Warning: include(/home/sw/ziembor/public_html/include/bottomtmpl.php) [function.include]: failed to open stream: No such file or directory in /Windows_NT/snmp-base-install-w2k.php on line 420

Warning: include() [function.include]: Failed opening '/home/sw/ziembor/public_html/include/bottomtmpl.php' for inclusion (include_path='.:/:/usr/local/php/pear5') in /Windows_NT/snmp-base-install-w2k.php on line 420