Версия Ubuntu: Ubuntu 14.04.1 LTS
Версия SNMP: 5.7.2
Короткая Проблема: Много записей в конфигурационном файле "по умолчанию" повреждается. Который действительно не имеет значения, потому что я не мог даже запустить SNMP.
Желаемый результат: Я хочу рабочий экземпляр SNMP, один с как можно большим количеством значений по умолчанию, функциональных в нем.
Примечание: Из очень многих источников, включая Канонические находящиеся в собственности веб-сайты Ubuntu, сказано, что я должен изменить export
и SNMPDOPTS
, чтобы иметь основную функциональность.
/etc/default/snmpd
export MIBS=UCD-SNMP-MIB
SNMPDRUN=yes
SNMPDOPTS='-Lsd -Lf /dev/null -u snmp -g snmp -I -smux -p /var/run/snmpd.pid -c /etc/snmp/snmpd.conf'
TRAPDRUN=no
TRAPDOPTS='-Lsd -p /var/run/snmptrapd.pid'
SNMPDCOMPAT=yes
/etc/snmp/snmpd.conf
view systemonly included .1.3.6.1.2.1.1
view systemonly included .1.3.6.1.2.1.25.1
rocommunity public
rwcommunity nanana
sysLocation vm1-ryd-wlo
sysContact Paul Adams <pauladams@nanana.com>
sysServices 72
disk / 10000
disk /var 5%
load 12 10 5
trapsink localhost public
iquerySecName internalUser
rouser internalUser
master agentx
/var/log/syslog
Oct 3 13:59:51 mdnsreflector-ryd-wlo snmpd[9120]: Server Exiting with code 1
Oct 3 14:00:09 mdnsreflector-ryd-wlo snmpd[9143]: Turning on AgentX master support.
Oct 3 14:00:09 mdnsreflector-ryd-wlo snmpd[9145]: NET-SNMP version 5.7.2
sudo service --status-all
[ + ] snmpd
sudo service ufw status
Status: inactive
Даже при том, что эта конфигурация загружается и по-видимому под управлением. Вы ничего не можете на самом деле запросить от этого экземпляра SNMP от удаленного устройства. Соединение в конечном счете испытывает таймаут.
Запросы его с самого сервера ни к чему не приводят.
snmpwalk - OS-c общедоступная система-v 1 localhost
system: Unknown Object Identifier (Sub-id not found: (top) -> system)
/etc/var/syslog
Oct 3 14:10:32 mdnsreflector-ryd-wlo snmpd[9292]: Turning on AgentX master support.
Oct 3 14:10:32 mdnsreflector-ryd-wlo snmpd[9292]: Turning on AgentX master support.
Oct 3 14:10:32 mdnsreflector-ryd-wlo snmpd[9292]: Error opening specified endpoint "udp:161"
Oct 3 14:10:32 mdnsreflector-ryd-wlo snmpd[9292]: Server Exiting with code 1
сервис sudo - состояние - все
[ - ] snmpd
/etc/snmp/snmpd.conf
proc mount
proc ntalkd 4
proc sendmail 10 1
includeAllDisks 10%
extend test1 /bin/echo Hello, world!
extend-sh test2 echo Hello, world! ; echo Hi there ; exit 35
/var/log/syslog
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 90: Error: Already have an entry for this process.
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 92: Error: Already have an entry for this process.
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 94: Error: Already have an entry for this process.
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 106: Error: includeAllDisks already specified.
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 106: Error: #011ignoring: includeAllDisks 10%
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 146: Error: duplicate trigger name
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: message repeated 6 times: [ /etc/snmp/snmpd.conf: line 146: Error: duplicate trigger name]
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 148: Error: duplicate trigger name
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: /etc/snmp/snmpd.conf: line 148: Error: duplicate trigger name
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: duplicate table data attempted to be entered. row exists
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: Failed to register extend entry 'test1' - possibly duplicate name.
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: duplicate table data attempted to be entered. row exists
Oct 3 10:51:11 mdnsreflector-ryd-wlo snmpd[7575]: Failed to register extend entry 'test2' - possibly duplicate name.
Я запустил бы с конфигурации запаса в целях.1, включил бы вход отладки, и попытка получает запросы к OIDs. Я честно никогда не приобретал навык МИБ, и так как я только использовал SNMP для материала как MRTG и кактусы, я никогда действительно должен был знать больше. Посмотрите, можно ли получить самую простую конфигурацию возможная работа, затем добавьте один элемент за один раз при конце подходящего файла (файлов) журнала.
SNMP не повреждается. Процесс для получения его работа является просто немного замысловатым.
Следующие шаги были проверены для работы над 14,04:
После установки SNMP и его демона (sudo apt-get install snmp snmpd
), необходимо будет отредактировать файл /etc/snmp/snmp.conf
и прокомментируйте строку, содержащую "МиБ":
В этом файле измените строку:
mibs :
кому:
#mibs :
Затем, принятие Вас уже не сделало этого, необходимо будет получить полный набор МИБ IETF. Эти файлы не поставлются, по умолчанию, в системах Debian/Ubuntu из-за лицензирования проблем.
От терминала (Ctrl-Alt-t) введите следующие команды:
sudo apt-get install snmp-mibs-downloader
sudo download-mibs
Затем необходимо будет изменить /etc/snmp/snmpd.conf
.
Позволить SNMP систему для получения запросов в интерфейсах кроме ее петлевого адреса. Строки для этого должны быть похожими на это:
# Listen for connections from the local system only
# agentAddress udp:127.0.0.1:161
# Listen for connections on all interfaces (both IPv4 *and* IPv6)
agentAddress udp:161,udp6:[::1]:161
Обратите внимание, что это позволит ЛЮБОЙ системе запрашивать Вашу машину. Необходимо будет скорректировать это для ограничения доступа SNMP к устройству.
Вы теперь захотите поменять свою струну SNMP Только для чтения от public
к пользовательской строке Вашего выбора, как указано ниже:
#rocommunity public default -V systemonly
rocommunity <My$ecret$tr1nG> (don't use this example!)
Примечание: Удаление -V systemonly
от строки предоставит доступ ко всему дереву MIB и не ограничит его системной частью дерева.
Перезапустите демона SNMP
sudo service snmpd restart
Наконец, Ваш запрос SNMP должен теперь ответить правильно.
например:
snmpwalk -v 2c -c <My$ecret$tr1nG> <MachineName> ipadd
IP-MIB::ipAdEntAddr.127.0.0.1 = IpAddress: 127.0.0.1
IP-MIB::ipAdEntAddr.192.168.1.7 = IpAddress: 192.168.1.7
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1
IP-MIB::ipAdEntIfIndex.192.168.1.7 = INTEGER: 2
IP-MIB::ipAdEntNetMask.127.0.0.1 = IpAddress: 255.0.0.0
IP-MIB::ipAdEntNetMask.192.168.1.7 = IpAddress: 255.255.255.0
IP-MIB::ipAdEntBcastAddr.127.0.0.1 = INTEGER: 0
IP-MIB::ipAdEntBcastAddr.192.168.1.7 = INTEGER: 1
См. следующие ответы для дополнительной ссылки: