> Ладно...
> А может кто- то настраивал у себя snmpnrap ???
> Очень надо помощь!Вот например, где мне взять скрипт snmptrap.sh, что б "немного подправить"??
---------------------------------------------------------------------------
Настраиваем SNMP сервер.
У меня, в качестве SNMP сервера выступает машина с CentOS 5.4, на которой установлен Zabbix.
Сначала необходимо установить следующий пакет:
net-snmp-utils
из него нам понадобится snmptrapd и snmpwalk.
Создаём конфиг /etc/snmp/snmptrapd.conf следующего содержания:
ignoreauthfailure no
disableAuthorization no
authCommunity log,execute,net MyCommunity
donotfork no
pidfile /tmp/snmptrap.pid
traphandle default /bin/bash /usr/local/bin/snmptrap.sh
donotlogtraps no
logoption f /var/log/snmptrap.log
outputOption efnQs
Самая важная здесь строчка: traphandle default /bin/bash /usr/local/bin/snmptrap.sh, она указывает что делать если пришел SNMP трап. В нашем случае запускается скрипт snmptrap.sh.
Про остальные строки конфига подробно можно почитать в мане:
man snmptrapd.conf
и
man snmpcmd
Теперь из папки с исходниками Zabbix: /tmp/zabbix-1.8.1/misc/snmptrap/ копируем скриптик snmptrap.sh в /usr/local/bin/
Я немного подправил скрипт, т.к. предлагаемый меня не устраивал:
#!/bin/bash
#
# Zabbix
# Copyright © 2000,2001,2002,2003 Alexei Vladishev
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
#
# CONFIGURATION
LOG="/var/log/snmptrapmy.log";
ZABBIX_SERVER="localhost";
ZABBIX_PORT="10051";
ZABBIX_SENDER="/usr/local/bin/zabbix_sender";
KEY="snmptraps";
HOST="snmptraps";
# END OF CONFIGURATION
read hostname
read ip
read uptime
read oid
read index
read desc
read type
read info
read trapip
read community
read var1
ip=`echo $ip | cut -d"[" -f2 | cut -d"]" -f1`
uptime=`echo $uptime|cut -f2 -d'='`
oid=`echo $oid|cut -f2 -d'='`
index=`echo $index|cut -f2 -d'='`
desc=`echo $desc|cut -f2 -d'='`
type=`echo $type|cut -f2 -d'='`
info=`echo $info|cut -f2 -d'='`
trapip=`echo $trapip|cut -f2 -d'='`
community=`echo $community|cut -f2 -d'='`
var1=`echo $var1|cut -f2 -d'='`
hostname=`snmpwalk -c public $ip system.sysName.0 2> /dev/null|cut -d"="
-f2|cut -d":" -f2`
str="$hostname $ip $oid $desc $info"
echo "$str" >> $LOG
$ZABBIX_SENDER -z $ZABBIX_SERVER -p $ZABBIX_PORT -s $HOST -k $KEY -o "$str"
У меня с трапом не приходил hostname, поэтому я получаю его самостоятельно этой строчкой:
hostname=`snmpwalk -c public $ip system.sysName.0 2> /dev/null|cut -d"=" -f2|cut -d":" -f2, для её работы нужна утилита snmpwalk (входит в установленный нами выше пакет), и дополнительная строчка в конфиге cisco:
------------------------------------------
help