apt-get install php5 libconfig-inifiles-perl snmpd
Sicherstellen, dass in /etc/apache2/mods-enabled
diese Links gesetzt sind:
php5.conf -> ../mods-available/php5.conf php5.load -> ../mods-available/php5.load
snmptt_1.2.tgz
gibt es bei [http://downloads.sourceforge.net/snmptt/snmptt_1.2.tgz?modtime=1181989825&big_mirror=0 sourceforge.net] oder im Download-Bereich http://www.jbackes.de/downloads/nagios/snmptt/snmptt_1.2.tgz
Entpacken und in das Verzeichnis wechseln, die Dateien an die richtigen Stellen kopieren und Ausführungsrechte setzen.
cp snmptt /usr/sbin/ chmod +x snmptt cp snmptthandler /usr/sbin/ chmod +x snmptthandler cp snmptt.ini /etc/snmp/
Anpassungen in der snmptt.ini
# mode = standalone mode = daemon # mysql_dbi_enable = 0
mysql_dbi_enable = 1
# damit auch unbekannte Traps weggeschrieben werden unknown_trap_log_enable = 1
# Benutzer-Informationen mysql_dbi_username = user mysql_dbi_password = password
Hiernach im Verzeichnis /etc/snmp/
die Datei snmptt.conf
anlegen. Hier werden alle Traps definiert.
Beispiel für den HP-Agent Testtrap:
# HP Agents Test Trap EVENT cpqTestTrap .1.3.6.1.4.1.232.0.11003 "Test Trap" INFO FORMAT Test Trap
Für den deamonmode
muss folgendes in der /etc/snmp/snmptrapd.conf
konfiguriert sein:
disableAuthorization yes traphandle default /usr/sbin/snmptthandler
Der snmptrapd
übergibt somit dem snmptthandler
den eingehenden SNMPTRAP.
Das Startscript snmptt-init.d
nach /etc/init.d/snmptt
kopieren, ausführbar machen, anpassen, testen und starten.
cp snmptt-init.d /etc/init.d/snmptt chmod +x /etc/init.d/snmptt
Ein für Ubuntu angepasstes Startscript, findet sich auch im Downloadbereich: http://www.jbackes.de/downloads/nagios/snmptt/snmptt_startscript.txt (umbenennen und ausführbar machen nicht vergessen).
Den snmptrapd
mit der Option -On
starten. (-On bedeutet, dass die Traps nummerisch an den snmptt übergeben werden) snmptrapd -On
Das Verzeichnis /usr/spool/snmptt
anlegen. Hier werden temporär Daten von snmptt gespeichert.
mysql-server-5.0
installieren:
apt-get install mysql-server-5.0
Anlegen der snmptt DB:
mysqladmin -p create snmptt
Es wird automatisch ein User snmptt
in der DB angelegt, der für das Frontend, snmptt und das Nagiosplugin genutzt werden kann. Diesem ein Passwort geben (z.B.: über phpmyadmin unter Rechte / Rechte ändern).
Herunterladen von [http://www.nagtrap.org/dokuwiki/doku.php?id=download:files nagtrap-0.1.2.tar.gz]
In das htdocs - Verzeichnis von Nagios ( z.B. /usr/share/nagios2/htdocs/
) entpacken. Im Verzeichnis */htdocs/nagtrap/db
liegen drei SQL Scripte. Zwei Versionen der von snmptt
und eine von snmptt_unknown.sql
. Genutzt wird snmptt-1.2.sql
und snmptt_unknown.sql
.
Mit diesen Scripten wird die DB-Struktur angelegt:
mysql -u user -p snmptt < snmptt-1.2.sql mysql -u user -p snmptt < snmptt_unknown.sql
(…-p snmptt… = snmptt ist nicht das Passwort sondern die Datenbank, in der die Struktur angelegt werden soll)
Das Frontend benötigt unter anderem die Zugangsdaten zur Mysql Datenbank. Dies erfolgt in der Datei config.ini.php
;# Enter here your information that were used to connect to your database [database] host = localhost user = user password = pasword name = snmptt tableSnmptt = snmptt ...
Der allowedUser muss von nagiosadmin auf nagios geändert werden.
;# If you use the authentification, then entry here the User that ;# may changes on the Web-Frontend comma seperated. allowedUser = nagios ...
Die „URL to Nagios“ muss auf nagios2 geaädert ertden:
[nagios] ;# Url to Nagios prefix = /nagios2 ...
Das mitgelieferte Nagiosplugin von */htdocs/nagtrap/plugin/check_snmptraps.pl
in das Nagiospluginverzeichnis kopieren. Mit diesem Plugin kann geziehlt nach Traps in der DB gesucht werden. Das Plugin benötigt Ebenfalls die Zugangsdaten zur MYSQL DB.
# ==================== Database connect information ==================== my $dbHost = "localhost"; # my $dbName = "snmptt_new"; my $dbName = "snmptt"; my $dbUser = "USER"; my $dbPass = "PASSWORD"; my $dbTable = "snmptt"; ...
Der Pfad zum util.pm
muss ebenfalls angepasst werden:
# use lib "./"; # Pfad zur util.pm !! use lib "/usr/lib/nagios/plugins"; # Pfad zur util.pm !! ...
###### NagTrap define command{ command_name NagTrap command_line /usr/lib/nagios/plugins/check_snmptraps.pl -H $HOSTADSESS$ }
###### NagTrap define service{ use generic-service host_name localhost service_description NagTrap check_command NagTrap }