BehMon

SNMP چیست و چطور با آن تجهیزات شبکه را مانیتور کنیم؟

آشنایی با پروتکل SNMP، نسخه‌ها، OID و MIB، تفاوت Poll و Trap، و راهنمای فعال‌سازی امن SNMP روی سوییچ و روتر برای مانیتورینگ شبکه.

تقریباً هر تجهیز شبکه‌ای، از یک سوییچ ساده تا UPS اتاق سرور، به زبان SNMP صحبت می‌کند. به همین دلیل SNMP هنوز ستون اصلی مانیتورینگ شبکه است. در این مقاله می‌بینیم SNMP چطور کار می‌کند و چطور آن را درست و امن راه بیندازیم.

SNMP چیست؟

SNMP (Simple Network Management Protocol) پروتکلی برای خواندن اطلاعات مدیریتی از تجهیزات شبکه است. سیستم مانیتورینگ (Manager) از تجهیز (Agent) می‌پرسد «ترافیک این اینترفیس چقدر است؟» یا «دمای CPU چند درجه است؟» و تجهیز جواب می‌دهد.

OID و MIB به زبان ساده

هر مقدار قابل خواندن در تجهیز یک شناسه‌ی عددی به نام OID دارد؛ مثلاً 1.3.6.1.2.1.1.3.0 مدت زمان روشن بودن تجهیز (sysUpTime) است. MIB فایلی است که این شناسه‌ها را نام‌گذاری و توضیح می‌دهد. MIBهای استاندارد (مثل IF-MIB برای اینترفیس‌ها) روی همه‌ی تجهیزات یکسان‌اند و هر سازنده MIBهای اختصاصی خودش را هم دارد، مثلاً برای دمای سنسورها.

اگر نمی‌دانید مقدار مورد نظرتان کدام OID است، ابزار SNMP Walk درخت OIDهای یک تجهیز را پیمایش می‌کند و همه‌ی مقادیر را نشان می‌دهد.

نسخه‌های SNMP

نسخهاحراز هویتکاربرد
v1Community (متن ساده)قدیمی؛ فقط برای تجهیزات خیلی قدیمی
v2cCommunity (متن ساده)رایج‌ترین؛ شمارنده‌های ۶۴ بیتی برای لینک‌های پرسرعت
v3نام کاربری، رمز و رمزنگاریامن‌ترین؛ برای شبکه‌های حساس

در v2c رشته‌ی Community عملاً رمز عبور است و به‌صورت متن ساده ارسال می‌شود. پس اگر از v2c استفاده می‌کنید، حتماً دسترسی را محدود کنید (بخش امنیت را ببینید).

Poll در برابر Trap

  • Poll: سیستم مانیتورینگ به‌طور منظم (مثلاً هر دقیقه) از تجهیز سؤال می‌کند. داده‌ی پیوسته برای نمودار و روند فراهم می‌شود.
  • Trap: تجهیز خودش در لحظه‌ی وقوع رویداد (مثلاً قطع شدن یک اینترفیس) پیام می‌فرستد. سریع است ولی ممکن است گم شود، چون روی UDP ارسال می‌شود.

بهترین روش ترکیب هر دو است: Poll برای داده‌ی پیوسته و Trap برای اطلاع فوری از رویدادهایی مثل linkDown.

چه چیزهایی را با SNMP پایش کنیم؟

  • ترافیک ورودی و خروجی هر اینترفیس و درصد مصرف نسبت به سرعت لینک
  • خطاها و دورریزها (errors و discards) روی اینترفیس‌ها
  • وضعیت اینترفیس (up/down)
  • CPU، حافظه و دمای تجهیز
  • مدت روشن بودن (برای تشخیص ری‌استارت‌های ناخواسته)
  • وضعیت باتری و بار UPS، سنسورهای دما و رطوبت

فعال‌سازی امن SNMP

  1. Community پیش‌فرض public را حذف کنید و یک رشته‌ی طولانی و تصادفی بسازید.
  2. SNMP را فقط فقط‌خواندنی (RO) فعال کنید؛ دسترسی نوشتنی لازم نیست.
  3. با ACL فقط به IP سرور مانیتورینگ اجازه‌ی دسترسی بدهید.
  4. در صورت امکان از SNMPv3 با احراز هویت و رمزنگاری استفاده کنید.
  5. Communityها را در خزانه‌ی رمزشده‌ی سیستم مانیتورینگ نگه دارید، نه در فایل متنی.

جمع‌بندی

SNMP ساده، همه‌جایی و قدرتمند است و با تنظیم درست، بیشترین اطلاعات را با کمترین هزینه از شبکه بیرون می‌آورد. در BehMon می‌توانید برای هر هدف سنسورهای SNMP دلخواه با OID خودتان تعریف کنید، با مرورگر SNMP Walk داخل پنل OIDها را پیدا کنید و Trapهای linkDown/linkUp را مستقیم به هشدار تبدیل کنید. بیشتر درباره‌ی مانیتورینگ BehMon.