Установка на Wi Fi маршрутизатор Keenetic ОС Entware SNMP, SNMP-TRAP, MIBs

Тут будет некоторая информация по keenetic
Аватара пользователя
Артём Мамзиков
Admin
Сообщения: 926
Стаж: 6 лет 4 месяца
Откуда: Вологодская область
Благодарил (а): 1 раз
Поблагодарили: 43 раза
Контактная информация:

Установка на Wi Fi маршрутизатор Keenetic ОС Entware SNMP, SNMP-TRAP, MIBs

Сообщение Артём Мамзиков »

Репозиторий с пакетами
Обновление и установка в данной OS производится командами
opkg list – команда выдает список пакетов, которые можно установить в настоящий момент.
opkg list-installed – команда выдает список уже установленных пакетов

Код: Выделить всё

opkg update
– команда скачивает список пакетов, которые могут быть установлены. Рекомендуется всегда выполнять эту команду перед установкой пакета

Код: Выделить всё

opkg upgrade
– команда обновляет установленные пакеты, если есть обновления.
opkg install <имя пакета> – команда устанавливает пакет включая пакеты, от которых устанавливаемый пакет зависит. Например “opkg install mc” установит Midnight Commander.
opkg remove <имя пакета> – команда удалит установленный ранее пакет.

Установка SNMP SNMP-TRAP

Код: Выделить всё

opkg install snmpd snmp-utils snmp-mibs snmptrapd libnetsnmp
Описание
Показать
Протокол Simple Network Management Protocol (SNMP) - это широко используемый протокол для мониторинга работоспособности сетевого оборудования (напр. маршрутизаторы), компьютерное оборудование и даже такие устройства, как ИБП.
Net-SNMP - это набор приложений, используемых для реализации SNMP v1, SNMP v2c и SNMP v3 с использованием протоколов IPv4 и IPv6.

snmpd - динамически подключаемый SNMP-агент.
snmp-utils - клиентские утилиты SNMP:
snmpbulkget
snmpbulkwalk
snmpdelta
snmpdf
snmpget
snmpgetnext
snmpnetstat
snmpset
snmpstatus
snmptable
snmptest
snmptranslate
snmptrap
snmpusm
snmpvacm
snmpwalk

snmp-mibs - содержит SNMP MIB-файлы.
snmptrapd - содержит приемник уведомлений SNMP.
libnetsnmp - общие библиотеки, необходимые другим программам.
mini_snmpd - Миниатюрный SNMP-сервер для встраиваемых систем


Стандартные порты 161 и 162 уже заняты keenetic
Проверка свободности порта

Код: Выделить всё

netstat -nlpu | grep :164

Код: Выделить всё

netstat -nlpu | grep :165
Если не найдено ничем не используется можно указать их


Пример файлов конфигурации:

Код: Выделить всё

mcedit /opt/etc/snmp/snmp.conf
cat /opt/etc/snmp/snmp.conf| grep -v ^\# |awk 'NF'

Код: Выделить всё

mibs +ALL

Код: Выделить всё

mcedit /opt/etc/snmp/snmpd.conf
cat /opt/etc/snmp/snmpd.conf| grep -v ^\# |awk 'NF'

Код: Выделить всё

agentAddress  udp:127.0.0.1:164
view   systemonly  included   .1.3.6.1.2.1.1
view   systemonly  included   .1.3.6.1.2.1.25.1
rocommunity public  localhost
rocommunity public  default    -V systemonly
rocommunity6 public  default   -V systemonly
rouser   authOnlyUser
proc  mountd
proc  ntalkd 4
proc  sendmail 10 1
disk /  10000
disk /var  5%
includeAllDisks  10%
load   12 10 5
sysLocation "office"
sysContact "bofh@example.com"
sysName "HeartOfGold"
exec filedescriptors /bin/cat /proc/sys/fs/file-nr
engineID 'LEDE'
trap2sink localhost public
rouser internalUser
extend test1   /bin/echo  Hello, world!
extend-sh test2   echo Hello, world! ; echo Hi there ; exit 35

Код: Выделить всё

mcedit /opt/etc/snmp/snmptrapd.conf
cat /opt/etc/snmp/snmptrapd.conf| grep -v ^\# |awk 'NF'

Код: Выделить всё

agentAddress  udp:127.0.0.1:165
perl do "/usr/lib/snmptt/zabbix_trap_receiver.pl";
authCommunity log,execute,net private 
authCommunity log,execute,net public

Код: Выделить всё

mcedit /opt/etc/snmp/snmptt.conf 
cat /opt/etc/snmp/snmptt.conf| grep -v ^\# |awk 'NF'

Код: Выделить всё

EVENT coldStart .1.3.6.1.6.3.1.1.5.1 "Status Events" Normal
FORMAT Device reinitialized (coldStart)
SDESC
A coldStart trap signifies that the SNMPv2 entity, acting
in an agent role, is reinitializing itself and that its
configuration may have been altered.
EDESC
EVENT warmStart .1.3.6.1.6.3.1.1.5.2 "Status Events" Normal
FORMAT Device reinitialized (warmStart)
SDESC
A warmStart trap signifies that the SNMPv2 entity, acting
in an agent role, is reinitializing itself such that its
configuration is unaltered.
EDESC
EVENT linkDown .1.3.6.1.6.3.1.1.5.3 "Status Events" Normal
FORMAT Link down on interface $1.  Admin state: $2.  Operational state: $3
SDESC
A linkDown trap signifies that the SNMP entity, acting in
an agent role, has detected that the ifOperStatus object for
one of its communication links is about to enter the down
state from some other state (but not from the notPresent
state).  This other state is indicated by the included value
of ifOperStatus.
EDESC
EVENT linkUp .1.3.6.1.6.3.1.1.5.4 "Status Events" Normal
FORMAT Link up on interface $1.  Admin state: $2.  Operational state: $3
SDESC
A linkUp trap signifies that the SNMP entity, acting in an
agent role, has detected that the ifOperStatus object for
one of its communication links left the down state and
transitioned into some other state (but not into the
notPresent state).  This other state is indicated by the
included value of ifOperStatus.
EDESC
EVENT authenticationFailure .1.3.6.1.6.3.1.1.5.5 "Status Events" Normal
FORMAT SNMP athentication failure
SDESC
An authenticationFailure trap signifies that the SNMPv2
entity, acting in an agent role, has received a protocol
message that is not properly authenticated.  While all
implementations of the SNMPv2 must be capable of generating
this trap, the snmpEnableAuthenTraps object indicates
whether this trap will be generated.
EDESC
EVENT general .* "General event" Normal
FORMAT ZBXTRAP $aA $1 $2 $3

Код: Выделить всё

mcedit /opt/etc/snmp/snmptt.ini
cat /opt/etc/snmp/snmptt.ini| grep -v ^\# |awk 'NF'

Код: Выделить всё

[General]
snmptt_system_name =
mode = daemon
multiple_event = 1
dns_enable = 0
strip_domain = 0
strip_domain_list = <<END
domain.com
END
resolve_value_ip_addresses = 0
net_snmp_perl_enable = 1
net_snmp_perl_cache_enable = 0
net_snmp_perl_best_guess = 0
translate_log_trap_oid = 0
translate_value_oids = 1
translate_enterprise_oid_format = 1
translate_trap_oid_format = 1
translate_varname_oid_format = 1
translate_integers = 1
mibs_environment = ALL
wildcard_expansion_separator = " "
allow_unsafe_regex = 0
remove_backslash_from_quotes = 0
dynamic_nodes = 0
description_mode = 0
description_clean = 1
threads_enable = 0
threads_max = 10
date_time_format = %H:%M:%S %Y/%m/%d
[DaemonMode]
daemon_fork = 1
daemon_uid = snmptt
pid_file = /var/run/snmptt.pid
spool_directory = /var/spool/snmptt/
sleep = 5
use_trap_time = 1
keep_unlogged_traps = 1
duplicate_trap_window = 300
[Logging]
stdout_enable = 0
log_enable = 1
log_file = /var/log/snmptt/snmptt.log
log_system_enable = 0
log_system_file = /var/log/snmptt/snmpttsystem.log
unknown_trap_log_enable = 1
unknown_trap_log_file = /var/log/snmptt/snmpttunknown.log
statistics_interval = 0
syslog_enable = 1
syslog_facility = local0
syslog_level_debug = <<END
END
syslog_level_info = <<END
END
syslog_level_notice = <<END
END
syslog_level_warning = <<END
END
syslog_level_err = <<END
END
syslog_level_crit = <<END
END
syslog_level_alert = <<END
END
syslog_level = warning
syslog_system_enable = 1
syslog_system_facility = local0
syslog_system_level = warning
[SQL]
db_translate_enterprise = 0
db_unknown_trap_format = '$-*'
sql_custom_columns = <<END
END
sql_custom_columns_unknown = <<END
END
mysql_dbi_enable = 0
mysql_dbi_host = localhost
mysql_dbi_port = 3306
mysql_dbi_database = snmptt
mysql_dbi_table = snmptt
mysql_dbi_table_unknown = snmptt_unknown
mysql_dbi_table_statistics =
mysql_dbi_username = snmpttuser
mysql_dbi_password = password
mysql_ping_on_insert = 1
mysql_ping_interval = 300
postgresql_dbi_enable = 0
postgresql_dbi_module = 0
postgresql_dbi_hostport_enable = 0
postgresql_dbi_host = localhost
postgresql_dbi_port = 5432
postgresql_dbi_database = snmptt
postgresql_dbi_table_unknown = snmptt_unknown
postgresql_dbi_table_statistics =
postgresql_dbi_table = snmptt
postgresql_dbi_username = snmpttuser
postgresql_dbi_password = password
postgresql_ping_on_insert = 1
postgresql_ping_interval = 300
dbd_odbc_enable = 0
dbd_odbc_dsn = snmptt
dbd_odbc_table = snmptt
dbd_odbc_table_unknown = snmptt_unknown
dbd_odbc_table_statistics =
dbd_odbc_username = snmptt
dbd_odbc_password = password
dbd_odbc_ping_on_insert = 1
dbd_odbc_ping_interval = 300
[Exec]
exec_enable = 1
pre_exec_enable = 1
unknown_trap_exec =
unknown_trap_exec_format =
exec_escape = 1
[Debugging]
DEBUGGING = 0
DEBUGGING_FILE =
DEBUGGING_FILE_HANDLER =
[TrapFiles]
snmptt_conf_files = <<END
/etc/snmp/snmptt.conf
/etc/snmp/snmptt.conf.dop
END

Запустить службу snmp

Код: Выделить всё

/opt/etc/init.d/S47snmpd start
Запустить службу snmp-trap

Код: Выделить всё

/opt/etc/init.d/S47snmptrapd start
Запрос с помощью OID

Код: Выделить всё

snmpwalk -v 2c -c public 127.0.0.1 .1.3.6.1.2.1.2.2.1.2

Более подробно аналогичная настройка
Keenetic > Entware > Debian Установка SNMP, SNMP-TRAP, MIBs

Примеры работы настройки еще
Пример создания шаблона SNMP для Zabbix
Настройка SNMP Traps в zabbix Debian
количество слов: 1123

Вернуться в «Keenetic»