מאמר זה הוא חלק מסדרת Net-SNMP:

  • מדריך למתחילים להתקנה, שימוש והגדרת Net-SNMP - חלק 1
  • מדריך למתחילים להתקנה, שימוש והגדרת Net-SNMP - חלק 2

בחלק הראשון של סדרה זו, דנו בצעדים שעליך לבצע כדי להוריד, להתקין ולהפעיל את הכלי Net-SNMP.

בחלק זה נתמקד בצד התצורה, המסביר כיצד ניתן להגדיר את סוכן Net-SNMP, כמו גם להגדיר אימות והצפנה עבור ההודעות המועברות בינה לבין הלקוח.

קביעת תצורה של Net-SNMP Agent - snmpd

בהנחה שחבילת Net-SNMP מותקנת במערכת שלך והפעלה, הפעל את הפקודה הבאה snmpwalk :

 snmpwalk -v2c -c מערכת מקומית localhost 

על המערכת שלי, הפלט הבא הופק:

 SNMPv2-MIB :: sysDescr.0 = STRING: לינוקס himanshu-Desktop 3.13.0-32-generic # 57-Ubuntu SMP יום שלישי 15 יולי 2009 03:51:12 UTC 2014 i686 SNMPv2-MIB :: sysObjectID.0 = OID: NET -SNMP-MIB :: netSnmpAgentOIDs.10 DISMAN-EVENT-MIB :: sysUpTimeInstance = timeticks: (6481067) 18: 00: 10.67 SNMPv2-MIB :: sysContact.0 = STRING: Me  SNMBv2-MIB :: sysName.0 = STRING: heanshu-Desktop SNMPv2-MIB :: sysLocation.0 = STRING: יושב על הרציף של המפרץ SNMPv2-MIB :: sysServices.0 = אינטגר: 72 SNMPv2-MIB :: sysorLastChange .0 = טימטים: (22) 0: 00: 00.22 ... ... ... 

אם אתה מתבונן, פלט זה מכיל ערכים המתאימים למשתנים הספציפיים למערכת שמתחת לעץ "MIS". .iso.org.dod.internet.mgmt.mib-2.system.

עכשיו, נניח שאתה רוצה לצבוט מידע כגון "sysLocation" ו "sysContact". ניתן לעשות זאת על-ידי עריכת הערכים המתאימים בקובץ /etc/snmp/snmpd.conf, קובץ שבו ניתן להשתמש להגדרת סוכן Net-SNMP ("snmpd").

כפי שניתן לראות בצילום המסך שלמעלה, הקובץ מכיל רשומות רבות, שחלקן מתוארות בכוונה תחילה ויש להפעילן באופן מפורש. בקובץ זה, שיניתי את הערך של הפרמטר "sysLocation" מ "יושב על המזח של המפרץ" ל "Datacenter, שורה 2, ארון 1."

כדי שהשינוי ייכנס לתוקף, פשוט הפעל מחדש את daemon Net-SNMP עם הפקודה הבאה:

 /etc/init.d/snmpd הפעל מחדש 

ולאחר מכן הפעל שוב את הפקודה snmpwalk :

 $ snmpwalk -v2c -c מערכת מקומית localhost SNMPv2-MIB :: sysDescr.0 = STRING: לינוקס himanshu-Desktop 3.13.0-32-generic # 57-Ubuntu SMP יום שלישי 15 ביולי 03:51:12 UTC 2014 i686 SNMPv2-MIB :: sysObjectID.0 = OID: NET-SNMP-MIB :: netSnmpAgentOIDs.10 DISMAN-EVENT-MIB :: sysUpTimeInstance = timeticks: (470) 0: 00: 04.70 SNMPv2-MIB :: sysContact.0 = STRING: Me  ; SNMBv2-MIB :: sysName.0 = STRING: heanshu-desktop SNMPv2-MIB :: sysLocation.0 = STRING: Datacenter, שורה 2, Rack 1 SNMPv2-MIB :: sysServices.0 = אינטגר: 72 SNMPv2-MIB :: sysORLastChange .0 = טימטים: (0) 0: 00: 00.00 

לכן, כפי שניתן לראות, הערך של הפרמטר "sysLocation" השתנה בהצלחה. באופן דומה, אתה יכול לצבוט את הערכים של פרמטרים אחרים המופיעים בקובץ זה, כמו גם להוסיף פרמטרים שאינם כבר שם.

הערה : ניתן גם להשתמש snmpconf השירות snmpconf של Net-SNMP ליצירת ושינוי קובצי תצורה של SNMP. כדי לדעת יותר על הפקודה, לקרוא כאן Manpage שלה.

הגדר אימות והצפנה

כלי השירות של Net-SNMP כגון snmpget, snmpwalk ועוד, וכן הדמון (snmpd) תומכים בכל שלוש הגרסאות של פרוטוקול SNMP: v1, v2c ו- v3. בעוד שתי התמיכה הראשונה אימות בלבד, v3 תומך גם הצפנה. אז, בסעיף זה, נדון כיצד להגדיר SNMPv3.

כצעד ראשון, עצור את שירות הדמון snmpd באמצעות הפקודה הבאה:

 /etc/init.d/snmpd להפסיק 

לאחר מכן פתח את הקובץ / /var/lib/snmp/snmpd.conf והוסף את השורה הבאה בתחתית הדף:

 CreateUser USERNAME SHA "אימות-סיסמה" AES "ENCRYPTION-PASSWORD" 

הפקודה createUser יוצרת משתמש ספציפי ל- SNMPv3 לצורך אימות והצפנה של הודעות SNMPV3.

בפקודה לעיל, החלף את "AUTHENTICATION-PASSWORD" ו- ​​"ENCRYPTION-PASSWORD" עם סיסמאות בפועל שברצונך לשמור. כמו כן, ראוי לציין כי אם לא להזכיר "ENCRYPTION-PASSWORD" בכלל, Net-SNMP ישתמש "AUTHENTICATION-PASSWORD" כמו "ENCRYPTION-PASSWORD".

עכשיו, לפתוח etc/snmp/snmpd.conf ולהוסיף את השורה הבאה בתחתית:

 RUSER USERNAME פרטי 

שורה זו מוודאת שלמשתמש שיצרנו קודם יש הרשאות לקריאה בלבד, וניתן לגשת אליו רק באמצעות AuthPriv, מצב Net-SNMP המאפשר תקשורת עם אימות, כמו גם פרטיות. אם אתה רוצה את המשתמש יש הרשאות כתיבה, יותר מדי, פשוט להשתמש rwuser (במקום rwuser ) במקרה זה.

עכשיו, הפעל את שירות Net-SNMP daemon שוב באמצעות הפקודה הבאה:

 /etc/init.d/snmpd הפעל 

ולאחר מכן הפעל את הפקודה הבאה לבדיקת SNMPV3:

 snmpwalk -v 3 -l authPriv -a sha-A [AUTHENTICATION-PASSWORD] -x AES-X [ENCRYPTION-PASSWORD] -u [USERNAME] localhost system 

אם SNMPV3 מוגדר בהצלחה, הפלט צריך להיות זהה לזו המפורטת בתחילת מאמר זה.

הערה :
1. הקפד להחליף את [AUTHENTICATION-PASSWORD], [ENCRYPTION-PASSWORD] ו- [USERNAME] עם ערכים מתאימים.

2. אימות SHA ותצוגת הצפנה של DES / AES זמינים רק אם ברשותך OpenSSL מותקן או אם --with-openssl=internal באמצעות --with-openssl=internal .

סיכום

Net-SNMP מספק הרבה אפשרויות תצורה, ומה אנחנו דנו כאן הם רק את היסודות, אם כי זה צריך להיות מספיק כדי להתחיל. לקבלת מידע נוסף, לעבור את Manpage של snmpd.conf.