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 export
dan 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 <[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
Meskipun konfigurasi ini memuat dan tampaknya berjalan. Anda tidak bisa menanyakan apa pun dari instance SNMP ini dari perangkat jarak jauh. Koneksi akhirnya habis.
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)
- 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
- 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.
Jawaban:
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.conf
dan mengomentari baris yang berisi "mibs:"Di dalam file ini, ubah baris:
untuk
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
.Untuk mengizinkan SNMP sistem menerima permintaan pada antarmuka selain dari alamat loopback-nya. Baris untuk ini akan terlihat seperti ini:
Perhatikan bahwa ini akan memungkinkan sistem APA PUN untuk mesin Anda. Anda harus menyesuaikan ini untuk membatasi akses SNMP ke perangkat Anda.
Sekarang Anda ingin mengubah string SNMP Hanya-Baca dari
public
string khusus yang Anda pilih, seperti di bawah ini:Catatan: Menghapus
-V systemonly
dari garis akan memungkinkan akses ke seluruh pohon MIB dan tidak membatasinya ke bagian sistem pohon.Mulai ulang daemon SNMP
Akhirnya, permintaan SNMP Anda sekarang harus merespons dengan benar.
misalnya:
Lihat jawaban berikut untuk referensi tambahan:
Bagaimana cara mendapatkan atau mengkonfigurasi IP-MIB di Ubuntu 12.04?
Apa itu SNMP?
sumber
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.
sumber