Mengapa SNMP rusak?


28

Versi Ubuntu: Ubuntu 14.04.1 LTS

Versi SNMP: 5.7.2

Masalah pendek: Banyak entri dalam file konfigurasi "default" rusak. Yang tidak terlalu penting karena saya bahkan tidak bisa memulai SNMP.

Hasil yang Diinginkan: Saya ingin instance SNMP yang berfungsi, yang memiliki sebanyak mungkin fungsi default di dalamnya.

CATATAN: Dari banyak sumber, termasuk situs web Ubuntu yang dimiliki Canonical, dikatakan bahwa saya harus memodifikasi exportdan SNMPDOPTS, agar memiliki fungsi dasar.

/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 <pauladams@nanana.com>
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
  1. Meskipun konfigurasi ini memuat dan tampaknya berjalan. Anda tidak bisa menanyakan apa pun dari instance SNMP ini dari perangkat jarak jauh. Koneksi akhirnya habis.

  2. Meminta dari server itu sendiri tidak menghasilkan apa-apa.

snmpwalk -Os -c public -v 1 sistem localhost

system: Unknown Object Identifier (Sub-id not found: (top) -> system)
  1. Saya harus menghapus entri "agentAddress" karena perangkat lunak terus panik setiap kali mencoba memproses perintah itu. (Meskipun itu adalah default dan caranya seharusnya tercantum dalam konfigurasi.)

/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

layanan sudo - status-semua

[ - ]  snmpd
  1. Saya harus menghapus beberapa entri default di konfigurasi karena mereka juga menyebabkan kesalahan saat menjalankannya.

/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.

Instruksi berikut telah diverifikasi untuk berfungsi pada 14.04 askubuntu.com/a/223734/106495
Kevin Bowen

Jawaban:


2

SNMP tidak rusak. Proses untuk membuatnya berfungsi sedikit berbelit-belit.

Langkah-langkah berikut telah diverifikasi untuk berfungsi pada 14.04:

Setelah menginstal SNMP dan daemonnya ( sudo apt-get install snmp snmpd), Anda perlu mengedit file /etc/snmp/snmp.confdan mengomentari baris yang berisi "mibs:"

Di dalam file ini, ubah baris:

mibs :

untuk

#mibs : 

Selanjutnya, dengan asumsi Anda belum melakukan ini, Anda harus mendapatkan set lengkap MET IETF. File-file ini tidak dikirimkan, secara default, pada sistem Debian / Ubuntu karena masalah lisensi.

Dari terminal ( Ctrl- Alt- t), masukkan perintah berikut:

sudo apt-get install snmp-mibs-downloader

sudo download-mibs

Kemudian, Anda perlu memodifikasi /etc/snmp/snmpd.conf.

  1. Untuk mengizinkan SNMP sistem menerima permintaan pada antarmuka selain dari alamat loopback-nya. Baris untuk ini akan terlihat seperti ini:

    #  Listen for connections from the local system only
    #  agentAddress  udp:127.0.0.1:161
    #  Listen for connections on all interfaces (both IPv4 *and* IPv6)
    agentAddress udp:161,udp6:[::1]:161
    

    Perhatikan bahwa ini akan memungkinkan sistem APA PUN untuk mesin Anda. Anda harus menyesuaikan ini untuk membatasi akses SNMP ke perangkat Anda.

  2. Sekarang Anda ingin mengubah string SNMP Hanya-Baca dari publicstring khusus yang Anda pilih, seperti di bawah ini:

    #rocommunity public  default    -V systemonly
    rocommunity <My$ecret$tr1nG> (don't use this example!)
    

    Catatan: Menghapus -V systemonlydari garis akan memungkinkan akses ke seluruh pohon MIB dan tidak membatasinya ke bagian sistem pohon.

  3. Mulai ulang daemon SNMP

    sudo service snmpd restart
    

Akhirnya, permintaan SNMP Anda sekarang harus merespons dengan benar.

misalnya:

snmpwalk -v 2c -c <My$ecret$tr1nG> <MachineName> ipadd

IP-MIB::ipAdEntAddr.127.0.0.1 = IpAddress: 127.0.0.1
IP-MIB::ipAdEntAddr.192.168.1.7 = IpAddress: 192.168.1.7
IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1
IP-MIB::ipAdEntIfIndex.192.168.1.7 = INTEGER: 2
IP-MIB::ipAdEntNetMask.127.0.0.1 = IpAddress: 255.0.0.0
IP-MIB::ipAdEntNetMask.192.168.1.7 = IpAddress: 255.255.255.0
IP-MIB::ipAdEntBcastAddr.127.0.0.1 = INTEGER: 0
IP-MIB::ipAdEntBcastAddr.192.168.1.7 = INTEGER: 1

Lihat jawaban berikut untuk referensi tambahan:

Bagaimana cara mendapatkan atau mengkonfigurasi IP-MIB di Ubuntu 12.04?

Apa itu SNMP?


0

Saya akan mulai dengan konfigurasi stok dengan tampilan ke .1, aktifkan debug logging, dan coba dapatkan kueri ke OID. Sejujurnya saya tidak pernah memahami MIB, dan karena saya hanya menggunakan SNMP untuk hal-hal seperti MRTG dan kaktus, saya tidak pernah benar-benar perlu tahu lebih banyak. Lihat apakah Anda bisa membuat konfigurasi sesederhana mungkin berfungsi, kemudian tambahkan satu elemen pada satu waktu sembari membuntuti file log yang bersangkutan.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.