एसएनएमपी क्यों टूटा?


28

Ubuntu संस्करण: Ubuntu 14.04.1 LTS

SNMP संस्करण: 5.7.2

लघु समस्या: "डिफ़ॉल्ट" कॉन्फ़िगरेशन फ़ाइल में बहुत सी प्रविष्टियाँ टूटी हुई हैं। जो वास्तव में कोई फर्क नहीं पड़ता क्योंकि मैं SNMP शुरू भी नहीं कर सकता।

वांछित परिणाम: मैं एक कामकाजी एसएनएमपी उदाहरण चाहता हूं, जिसमें से कई में संभव के रूप में कई फंक्शंस हैं।

नोट: कैनन के स्वामित्व वाली उबंटू वेबसाइटों सहित एक महान कई स्रोतों से, यह कहा जाता है कि मुझे बुनियादी कार्यक्षमता के लिए संशोधित करना होगा exportऔर SNMPDOPTS

/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. भले ही यह कॉन्फ़िगरेशन लोड हो रहा है और जाहिरा तौर पर चल रहा है। आप वास्तव में दूरस्थ डिवाइस से इस SNMP उदाहरण से कुछ भी क्वेरी नहीं कर सकते। कनेक्शन अंततः बाहर बार।

  2. सर्वर से इसे छोड़ देने से कुछ भी नहीं होता है।

snmpwalk -Os -c public -v 1 लोकलहोस्ट सिस्टम

system: Unknown Object Identifier (Sub-id not found: (top) -> system)
  1. मुझे "AgentAddress" प्रविष्टियों को हटाना पड़ा क्योंकि सॉफ्टवेयर उस आदेश को संसाधित करने के लिए हर बार घबराता रहता था। (भले ही यह डिफ़ॉल्ट और कॉन्फ़िगरेशन में सूचीबद्ध होने का तरीका है।)

/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

सूद सेवा --status-all

[ - ]  snmpd
  1. मुझे विन्यास में कई डिफ़ॉल्ट प्रविष्टियों को हटाना पड़ा क्योंकि उन्हें चलाने में त्रुटियां भी हुईं।

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

निम्नलिखित निर्देशों को 14.04 askubuntu.com/a/223734/106495
केविन बोवेन

जवाबों:


2

एसएनएमपी टूटी नहीं है। इसे काम में लाने की प्रक्रिया थोड़ी जटिल है।

14.04 पर काम करने के लिए निम्नलिखित चरणों को सत्यापित किया गया है:

एसएनएमपी और इसके डेमॉन ( sudo apt-get install snmp snmpd) को स्थापित करने के बाद , आपको फ़ाइल को संपादित करना होगा /etc/snmp/snmp.confऔर "mibs:" वाली लाइन पर टिप्पणी करनी होगी।

इस फ़ाइल के भीतर, लाइन बदलें:

mibs :

सेवा मेरे

#mibs : 

अगला, यह मानते हुए कि आपने पहले से ऐसा नहीं किया है, आपको IETF MIB का पूरा सेट प्राप्त करना होगा। लाइसेंसिंग समस्याओं के कारण डेबियन / उबंटू सिस्टम पर ये फाइलें डिफ़ॉल्ट रूप से जहाज नहीं करती हैं।

टर्मिनल ( Ctrl- Alt- t) से, निम्न कमांड दर्ज करें:

sudo apt-get install snmp-mibs-downloader

sudo download-mibs

फिर, आपको संशोधित करने की आवश्यकता होगी /etc/snmp/snmpd.conf

  1. एसएनएमपी को अपने लूपबैक पते के अलावा इंटरफेस पर प्रश्न प्राप्त करने की प्रणाली प्रदान करने के लिए। इसके लिए लाइनें इस तरह दिखनी चाहिए:

    #  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
    

    ध्यान दें कि यह किसी भी सिस्टम को आपकी मशीन को क्वेरी करने की अनुमति देगा। आपको अपने डिवाइस पर SNMP की पहुंच को सीमित करने के लिए इसे समायोजित करने की आवश्यकता होगी।

  2. अब आप अपने रीड-ओनली एसएनएमपी publicस्ट्रिंग को अपने चयन के कस्टम स्ट्रिंग से बदलना चाहेंगे , जैसा कि नीचे दिया गया है:

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

    नोट: -V systemonlyलाइन से हटाने से पूरे एमआईबी पेड़ तक पहुंच की अनुमति मिलेगी और इसे पेड़ के सिस्टम भाग तक सीमित नहीं किया जाएगा।

  3. SNMP डेमॉन को पुनरारंभ करें

    sudo service snmpd restart
    

अंत में, आपकी SNMP क्वेरी को अब ठीक से जवाब देना चाहिए।

उदाहरण के लिए:

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

अतिरिक्त संदर्भ के लिए निम्नलिखित उत्तर देखें:

Ubuntu 12.04 में IP-MIB कैसे प्राप्त करें या कॉन्फ़िगर करें?

SNMP क्या है?


0

मैं एक स्टॉक कॉन्फिगर के साथ शुरू करूँगा। 1 के दृश्य के साथ, डिबग लॉगिंग को सक्षम करें, और OID को क्वेरीज़ प्राप्त करने का प्रयास करें। मुझे ईमानदारी से कभी भी MIB की फांसी नहीं मिली, और जब से मैंने केवल MRTG और कैक्टि जैसे सामानों के लिए SNMP का उपयोग किया, मुझे वास्तव में अधिक जानने की आवश्यकता नहीं थी। देखें कि क्या आप काम कर रहे सरलतम विन्यास को प्राप्त कर सकते हैं, फिर एक तत्व को पेरेंटिन लॉग फाइल (एस) को जोड़ते समय एक बार में जोड़ सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.