Wersja Ubuntu: Ubuntu 14.04.1 LTS
Wersja SNMP: 5.7.2
Krótki problem: Wiele wpisów w „domyślnym” pliku konfiguracyjnym jest zepsutych. Co tak naprawdę nie ma znaczenia, ponieważ nie mogę nawet uruchomić SNMP.
Pożądany wynik: chcę działającą instancję SNMP, taką, która będzie mieć możliwie jak najwięcej domyślnych ustawień.
UWAGA: Z wielu źródeł, w tym stron internetowych Ubuntu należących do Canonical, mówi się, że muszę zmodyfikować export
i SNMPDOPTS
, aby mieć podstawową funkcjonalność.
/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 <[email protected]>
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
Mimo że ta konfiguracja ładuje się i najwyraźniej działa. Nie można faktycznie zapytać o nic z tej instancji SNMP ze zdalnego urządzenia. Połączenie ostatecznie się skończyło.
Zapytanie o to z samego serwera nic nie daje.
snmpwalk -Os -c public -v 1 system hosta lokalnego
system: Unknown Object Identifier (Sub-id not found: (top) -> system)
- Musiałem usunąć wpisy „agentAddress”, ponieważ oprogramowanie ciągle panikowało za każdym razem, gdy próbowało przetworzyć to polecenie. (Mimo że jest to ustawienie domyślne i sposób, w jaki powinien być wymieniony w konfiguracji).
/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
usługa sudo - status-all
[ - ] snmpd
- Musiałem usunąć kilka domyślnych wpisów w konfiguracji, ponieważ powodowały one również błędy podczas ich uruchamiania.
/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.
Odpowiedzi:
SNMP nie jest zepsuty. Proces jego uruchomienia jest nieco skomplikowany.
Następujące kroki zostały zweryfikowane do pracy 14.04:
Po zainstalowaniu SNMP i jego daemon (
sudo apt-get install snmp snmpd
) musisz edytować plik/etc/snmp/snmp.conf
i skomentować wiersz zawierający „mibs:”W tym pliku zmień wiersz:
do
Następnie, zakładając, że jeszcze tego nie zrobiłeś, będziesz musiał uzyskać pełny zestaw MIB IETF. Pliki te nie są domyślnie dostarczane w systemach Debian / Ubuntu z powodu problemów z licencjonowaniem.
W terminalu ( Ctrl- Alt- t) wprowadź następujące polecenia:
sudo apt-get install snmp-mibs-downloader
sudo download-mibs
Następnie musisz zmodyfikować
/etc/snmp/snmpd.conf
.Aby umożliwić SNMP system odbierać zapytania na interfejsach innych niż adres sprzężenia zwrotnego. Linie do tego powinny wyglądać następująco:
Zauważ, że pozwoli to KAŻDEMU systemowi na zapytanie twojego komputera. Konieczne będzie dostosowanie tego ustawienia, aby ograniczyć dostęp SNMP do urządzenia.
Teraz będziesz chciał zmienić ciąg SNMP tylko do odczytu z
public
niestandardowego ciągu, który wybierzesz, jak poniżej:Uwaga: Usunięcie
-V systemonly
z linii pozwoli na dostęp do całego drzewa MIB i nie ograniczy go do systemowej części drzewa.Uruchom ponownie demona SNMP
Na koniec zapytanie SNMP powinno teraz poprawnie odpowiadać.
na przykład:
Dodatkowe informacje można znaleźć w następujących odpowiedziach:
Jak uzyskać lub skonfigurować IP-MIB w Ubuntu 12.04?
Co to jest SNMP?
źródło
Chciałbym zacząć od standardowej konfiguracji z widokiem .1, włączyć rejestrowanie debugowania i spróbować uzyskać zapytania do OID. Szczerze mówiąc, nigdy nie zrozumiałem MIB-ów, a ponieważ używałem SNMP tylko do takich rzeczy jak MRTG i kaktusy, nigdy tak naprawdę nie musiałem wiedzieć więcej. Sprawdź, czy możesz uzyskać najprostszą możliwą konfigurację, a następnie dodawaj jeden element na raz, dostosowując odpowiednie pliki dziennika.
źródło