SNMP je protokol sloužící ke spravování síťových prvků, vyvíjí se od roku 1988 a stal se de facto standardem pro management sítě. Kvůli jednoduchému návrhu je pro výrobce snadno implementovatelný. Navíc odděluje architekturu mamagmentu od samotného hardwaru, což umožňuje podporu velkého množství vyrobců.
SNPM protokol je typu klient-server.
Server - neboli agent je démon, běžící na každém monitorovaném zařízení v síti
(switch, hub, router, server, ...). Má lokální informace o svém stavu a
zpřístupňuje je klientům - managerům.
Manager je proces pomocí kterého může správce komunikovat s agenty a
např. zjišťovat provoz na síti, konfigurovat parametry síťových rozhraní atd.
Data mají agenti uložená v MIB.
MIB má stromovou strukturu, každý uzel stromu se nezýva objekt, nese nějakou dílčí informaci. Každý objekt musí mít jméno, syntaxi a kódování. Jméno (OID - object identifier) ho jednoznačně identifikuje, v podstatě jde o cestu od kořene k objektu v MIB stromu.
Příkladem může být objekt: atInput který říká kolik
AppleTalk paketů přešlo přes dané síťové rozhraní. Objekt je identifikován
jménem:
iso.identified-organization.dod.internet.private.enterprise.cisco.temporary variables.AppleTalk.atInput
nebo ekvivalentně číselnou hodnotou 1.3.6.1.4.1.9.3.3.1.
Pomocí příkazu snmptranslate je možné překládat jméno z MIB stromu
na jeho číselnou hodnotu. Např:
% snmptranslate system.sysUpTime.0 .1.3.6.1.2.1.1.3.0nebo naopak
% snmptranslate -On .1.3.6.1.2.1.1.3.0 system.sysUpTime.0
Syntaxe objektu definuje datový typ nesené informace, může se jednat o jednoduchý typ např. integer (scalar object) nebo tabulku (tabular object). Kódování říká jak je informace v objektu uzpůsobená k přenosu mezi stroji. Struktura MIB je popsána v RFC 2013, bývá označována jako MIB-II. Definice MIB-II vychází z SMI, má 10 základních skupin: system, interfaces, at, ip, icmp, tcp, udp, egp, transmission, snmp. Syntaxe použitá v SNMP se nazývá Abstract Syntax Notation One - ASN.1
Ve verzích SNMPv1 a v2 je implementována bezpečnost jen na té úrovni, že v každá zpráva obsahuje v plain textu jméno komunity. Ve verzi 3 je možné použít autentizaci, řízení přístupu i přenášet data šifrovaně - podpora DES, AES a MD5, SHA1 prot zajištění integrity dat.
# 1) přiřazení community k security # sec.name source community com2sec notConfigUser default public com2sec labUser 10.0.0.01/16 public com2sec anyThoe 10.0.30.1/8 thoe # 2) přiřazení security ke skupině # groupName securityModel securityName group notConfigGroup v1 notConfigUser group labGroup v2c labUser group ThoeGroup v2c anyThoe # 3) přiřazení views # name incl/excl subtree mask(optional) view systemview included .1.3.6.1.2.1.1 view mib2 included .iso.org.dod.internet.mgmt.mib-2 view all included .1 # 4) přiřazení prav přístupu ke skupině # group context sec.model sec.level prefix read write notif access notConfigGroup "" any noauth exact systemview none none access labGroup "" any noauth exact mib2 none none access ThoeGroup "" 2c noauth exact all all none
MRTG je nástroj generující grafický výstup z dat získaných SNMP, původně sloužil jen k monitorování zaítžení sítě, ale můžeme ho použít např. k zjištění zatížení procesru atp. Jako parametr se předá konfigurační soubour. Pro vygenerovani konfiguračního soubrou můžeme použít utilitu
cfgmaker <community string>@<hostname>Detailní popis konfigurace lze nalézt zde
Nagios slouží k monitorování služeb v sítí, pravidelným dotazováním na ně. Pokud se objeví problém, démon o tom může podat zpráv správcům prostřednictvím e-mailu, sms atd, také může zpřístupňovat informace přes web.