Тази статия е част от серията Net-SNMP:

  • Ръководство за начинаещи за инсталиране, използване и конфигуриране на Net-SNMP - част 1
  • Ръководство за начинаещи за инсталиране, използване и конфигуриране на Net-SNMP - Част 2

В първата част на тази серия ние обсъдихме стъпките, които трябва да следвате, за да изтеглите, инсталирате и стартирате Net-SNMP инструмента.

В тази част ще се съсредоточим върху конфигурационния аспект, обяснявайки как можете да конфигурирате Net-SNMP агента, както и да установите удостоверяване и криптиране на съобщенията, предавани между него и клиента.

Конфигуриране на Net-SNMP агента - snmpd

Ако приемем, че пакетът Net-SNMP е инсталиран на вашата система и е готов, изпълнете следната команда snmpwalk :

 snmpwalk -v2c -c публична локална система 

На моята система се произвежда следното:

 SNMPv2-MIB :: sysDescr.0 = STRING: Линукс himanshu-десктоп 3.13.0-32-generic # 57-Ubuntu SMP Вто Юли 15 03:51:12 UTC 2014 i686 SNMPv2-MIB :: sysObjectID.0 = OID: NET -SNMP-MIB :: netSnmpAgentOIDs.10 DISMAN-EVENT-MIB :: sysUpTimeInstance = Timeticks: (6481067) 18: 00: 10.67 SNMPv2-MIB :: sysContact.0 = STRING: Me  SNMPv2-MIB :: sysName.0 = STRING: himanshu-десктоп SNMPv2-MIB :: sysLocation.0 = STRING: Седене на док на залива SNMPv2-MIB :: sysServices.0 = INTEGER: 72 SNMPv2-MIB :: sysORLastChange .0 = Тайминг: (22) 0: 00: 00.22 ... ... ... 

Ако наблюдавате, този изход съдържа стойности, отговарящи на специфичните за системата променливи, които се намират под "MIS дървото" .iso.org.dod.internet.mgmt.mib-2.system.

Сега, предположим, че искате да променяте информация като "sysLocation" и "sysContact". Това можете да направите, като редактирате съответните стойности в /etc/snmp/snmpd.conf, файл, който можете да използвате за конфигуриране на Net-SNMP агента ("snmpd").

Както можете да видите на екранната снимка по-горе, файлът съдържа много записи, някои от които са съзнателно коментирани и трябва да бъдат изрично активирани. В този файл промених стойността на параметъра "sysLocation" от "Седене на доковете на залива" на "Datacenter, Row 2, Rack 1."

За да влезе в сила промяната, трябва само да рестартирате демона Net-SNMP със следната команда:

 /etc/init.d/snmpd рестартиране 

и след това изпълнете отново командата " snmpwalk :

 $ snmpwalk -v2c -c публична локална система SNMPv2-MIB :: sysDescr.0 = STRING: Линукс himanshu-desktop 3.13.0-32-generic # 57-Ubuntu SMP Tue Jul 15 03:51:12 UTC 2014 i686 SNMPv2-MIB :: sysObjectID.0 = OID: NET-SNMP-MIB :: netSnmpAgentOIDs.10 DISMAN-EVENT-MIB :: sysUpTimeInstance = Timeticks: (470) 0: 00: 04.70 SNMPv2-MIB :: sysContact.0 =  ; SNMPv2-MIB :: sysName.0 = STRING: hisanshu-desktop SNMPv2-MIB :: sysLocation.0 = STRING: Datacenter, ред 2, рейка 1 SNMPv2-MIB :: sysServices.0 = INTEGER: 72 SNMPv2-MIB :: sysORLastChange .0 = Тайметрови лостове: (0) 0: 00: 00.00 

Така, както можете да видите, стойността на параметъра sysLocation бе успешно променена. По същия начин можете да промените стойностите на другите параметри, налични в този файл, както и да добавите параметри, които още не са налице.

Забележка : Можете също така да използвате програмата snmpconf Net-SNMP за създаване и модифициране на конфигурационни файлове на SNMP. За да научите повече за командата, прочетете тук Manpage.

Настройване на удостоверяване и шифроване

snmpget програми за Net-SNMP клиент като snmpget, snmpwalk и други, както и демон (snmpd) поддържат всичките три версии на протокола SNMP: v1, v2c и v3. Докато първите две поддържат само удостоверяване, v3 също така поддържа криптиране. Така че в този раздел ще обсъдим как да настроите SNMPv3.

Като първа стъпка спирайте услугата snmpd демон, като използвате следната команда:

 /etc/init.d/snmpd спиране 

след това отворете файла /var/lib/snmp/snmpd.conf и добавете следния ред в долната част:

 createUser USERNAME SHA "АВТЕНТИЗАЦИЯ-ПАРОЛА" AES "ENCRYPTION-PASSWORD" 

Командата createUser създава специфичен за SNMPv3 потребител с цел удостоверяване и криптиране на SNMPV3 съобщения.

В горната команда заменете "AUTHENTICATION-PASSWORD" и "ENCRYPTION-PASSWORD" с действителните пароли, които искате да запазите. Също така, заслужава да се отбележи, че ако изобщо не споменавате "ENCRYPTION-PASSWORD", Net-SNMP ще използва "AUTHENTICATION-PASSWORD" като "ENCRYPTION-PASSWORD".

Сега отворете etc/snmp/snmpd.conf и добавете следния ред в долната част:

 Потребителски права в USERNAME 

Тази линия гарантира, че потребителят, който създадохме по-рано, има разрешения само за четене и може да бъде достъпен само чрез AuthPriv, режим Net-SNMP, който позволява комуникация с удостоверяване, както и поверителност. Ако искате потребителят да има разрешения за писане, просто използвайте rwuser (вместо rouser ) в този случай.

Сега стартирайте отново услугата за разчитане на Net-SNMP, като използвате следната команда:

 /etc/init.d/snmpd старт 

и след това изпълнете следната команда за тестване на SNMPV3:

 snmpwalk -v 3 -l authPriv -a sha -А [АВТЕНТИЗАЦИЯ-ПАРОЛА] -x AES -X [ENCRYPTION-PASSWORD] -u [USERNAME] локална система 

Ако SNMPV3 е настроен успешно, изходът трябва да бъде същият като този, посочен в началото на тази статия.

Забележка :
1. Не забравяйте да замените [AUTHENTICATION-PASSWORD], [ENCRYPTION-PASSWORD] и [USERNAME] с подходящи стойности.

2. SHA удостоверяване и поддръжка DES / AES криптиране е налице само ако сте инсталирали OpenSSL или сте компилирали с помощта на - --with-openssl=internal .

заключение

Net-SNMP предоставя много опции за конфигуриране и това, което сме обсъждали тук, са само основите, въпреки че трябва да бъде достатъчно, за да започнете. За повече информация прегледайте страницата Manpage на snmpd.conf.