Wie kann net-snmp auf dem Raspberry Pi installiert werden? Da es noch kein fertiges Package für den Raspberry Pi (Kali) gibt, ist selbst compilieren angesagt.
# System updaten sudo apt-get update sudo apt-get upgrade # Nötige libs sudo apt-get install libperl-dev mkdir net-snmp cd net-snmp # Download von aktuelles Archive von http://sourceforge.net/projects/net-snmp wget http://sourceforge.net/projects/net-snmp/files/net-snmp/5.7.3/net-snmp-5.7.3.tar.gz # auspacken tar -xvzf net-snmp-5.7.3.tar.gz cd net-snmp-5.7.3/ # setup, es kommen drei Fragen, beantworten oder mit Return den default wählen sudo ./configure # warten ...
Wenn diese Bestätigung kommt:
Dann weiter mit compilieren und installieren. Das kann eine Stunde dauern …
sudo make sudo make install # Link anlegen ln -s /usr/local/lib/libnetsnmp.so.30 /usr/lib/libnetsnmp.so.30 # MIBS (Management Information Base) Downloader installieren sudo apt-get install snmp-mibs-downloader # SNMP installieren sudo apt-get install snmpd /etc/init.d/snmpd start # oder (start|stop|restart|reload|force-reload|status) wenn er schon läuft /etc/init.d/snmpd restart # Checken ob alles richtig läuft, abfragen per SNMP der Systemlaufzeit mit snmpget -v 2c -c public 127.0.0.1 SNMPv2-MIB::sysUpTime.0 # Ergebnis 5 Min und 22 Sekunden: # DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (32224) 0:05:22.24 # oder eine Liste einiger Einstellungen ausgeben: snmpwalk -v2c -c public localhost system # SNMPv2-MIB::sysDescr.0 = STRING: Linux raspberry 3.12.26 #1 PREEMPT Thu Aug 21 20:00:35 EDT 2014 armv6l # SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10 # DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (47562) 0:07:55.62 # SNMPv2-MIB::sysContact.0 = STRING: wenzlaff.info # SNMPv2-MIB::sysName.0 = STRING: raspberry Pi # SNMPv2-MIB::sysLocation.0 = STRING: Kali Rechner # SNMPv2-MIB::sysServices.0 = INTEGER: 72 # SNMPv2-MIB::sysORLastChange.0 = Timeticks: (5) 0:00:00.05
So nun wollen wir noch die CPU Temperatur per SNMP abfragen. Dazu wird dieses Script in der neuesten Version geladen
wget https://github.com/IT-Berater/tw-scripte/blob/master/snmp-cpu-temperatur.sh
oder erstellt mit:
nano snmp-cpu-temperatur.sh
mit diesen Inhalt:
# (c) Thomas Wenzlaff 2015 www.wenzlaff.info # # 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 3 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, see {http://www.gnu.org/licenses/}. # # if [ "$1" = "-g" ] then echo .1.3.6.1.2.1.25.1.8 echo gauge temp=`cat /sys/class/thermal/thermal_zone0/temp` echo $temp1"."$cpu fi exit 0
Dieses Script ist für Kali Linux getestet evl. für Debian anpassen und nötige Anpassungen bitte als Kommentar posten.
Dieses Script ausführbar machen und nach /usr/local/bin
kopieren:
chmod 755 snmp-cpu-temperatur.sh cp snmp-cpu-temperatur.sh /usr/local/bin/ # checken ob es läuft ./snmp-cpu-temperatur.sh -g # Ausgabe # .1.3.6.1.2.1.25.1.8 # gauge # 44388 # ok, unterer Wert ist die Temperatur 44,388 Grad Celsius # die snmpd.conf Datei ergänzen sudo nano /etc/snmp/snmpd.conf # um diesen Eintrag pass .1.3.6.1.2.1.25.1.8 /bin/sh /usr/local/bin/snmp-cpu-temperatur.sh # snmp restarten mit sudo /etc/init.d/snmpd restart # schauen ob es funktioniert und monitoren: /usr/bin/snmpget -v 2c localhost -c public .1.3.6.1.2.1.25.1.8 # Ausgabe: iso.3.6.1.2.1.25.1.8 = Gauge32: 44388 # ok, die Temperatur wird mit 44,388 Grad angezeigt. Gauge32 ist ein nicht negativer Integer. # Was wird da eigentlich bei minus Graden ausgegeben? Ist aber wohl nicht relevant, oder?
Weiter auf der NET-SNMP.org Seite oder eine SNMP Mindmap anschauen.
Welche SNMP Befehle findet Ihr gut?