هدف لب
پیکربندی SNMPv3 با یک کاربر که هم احراز هویت و هم رمزگذاری نیاز دارد، تأیید اینکه یک ایستگاه مدیریتی میتواند با موفقیت دستگاه را با استفاده از اعتبارنامههای درست پرسوجو کند، و تأیید اینکه آسیبپذیری شناساییشده در یک لب SNMPv2c قبلی — community string های متن-ساده — دیگر اعمال نمیشود.
هدف لب (چرا مهم است)
لب SNMPv2c پیشتر در این مجموعه بهطور خاص یادداشت کرد community string آن بهصورت متن-ساده منتقل میشود، آسیبپذیر در برابر رهگیری، و SNMPv3 را هرجا امنیت واقعی اهمیت دارد توصیه کرد. این لب آن توصیه را مستقیماً پیادهسازی میکند، و User-based Security Model (USM) در SNMPv3 را با authPriv، بالاترین سطح امنیت که هم احراز هویت و هم رمزگذاری را ترکیب میکند، پیکربندی میکند.
توپولوژی لب
R1 ---- Gi0/0: 192.168.95.1/24
ایستگاه مدیریتی SNMP: 192.168.95.50/24
(همان توپولوژی لب SNMPv2c قبلی)وظیفه ۱: ساخت یک گروه SNMPv3 با امنیت authPriv
یک گروه SNMP که نیازمند احراز هویت و privacy (رمزگذاری) است پیکربندی کن.
وظیفه ۲: ساخت یک کاربر SNMPv3 در آن گروه
یک کاربر با احراز هویت SHA و رمزگذاری AES، اختصاصیافته به گروه، پیکربندی کن.
وظیفه ۳: تأیید موفقیت پرسوجوی SNMPv3 با اعتبارنامههای درست
از ایستگاه مدیریتی، R1 را با استفاده از نامکاربری SNMPv3 درست، رمز عبور احراز هویت، و رمز عبور رمزگذاری پرسوجو کن.
وظیفه ۴: تأیید شکست پرسوجو با یک رمز عبور احراز هویت نادرست
تلاش کن با استفاده از نامکاربری درست اما یک رمز عبور احراز هویت اشتباه پرسوجو کنی و تأیید کن رد میشود.
وظیفه ۵: تأیید عدمکارکرد دیگر دسترسی SNMPv2c متن-ساده
community string SNMPv2c از لب قبلی را حذف کن و تأیید کن پرسوجوی بهسبک-SNMPv2c اکنون کاملاً شکست میخورد.
راهحل و تأیید
R1(config)# snmp-server group SECURE-GROUP v3 priv
-- "v3 priv" سطح امنیت authPriv برای SNMPv3
-- را مشخص میکند -- هم احراز هویت و هم
-- رمزگذاری مورد نیاز، قویترین سطح از سه سطح
-- SNMPv3 (noAuthNoPriv، authNoPriv، authPriv)R1(config)# snmp-server user secureadmin SECURE-GROUP v3 auth sha AuthPass2026 priv aes 128 PrivPass2026
-- SHA برای یکپارچگی احراز هویت، AES برای
-- رمزگذاری خود payload SNMP -- تضادی چشمگیر
-- با community string متن-ساده واحد SNMPv2cManagementStation> snmpget -v3 -u secureadmin -l authPriv \
-a SHA -A AuthPass2026 -x AES -X PrivPass2026 \
192.168.95.1 sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Cisco IOS Software, ...
-- پرسوجوی موفق، با خود payload SNMP اکنون
-- رمزگذاریشده در انتقال، برخلاف لب SNMPv2c
-- قبلیManagementStation> snmpget -v3 -u secureadmin -l authPriv \
-a SHA -A WrongPassword999 -x AES -X PrivPass2026 \
192.168.95.1 sysDescr.0
Authentication failure (incorrect password, community
or key)
-- بلافاصله رد شد -- بررسی احراز هویت پیش از
-- اینکه هر دادهای اصلاً برای انتشار در نظر
-- گرفته شود شکست میخوردR1(config)# no snmp-server community ReadOnlyStr123 RO 30ManagementStation> snmpget -v2c -c ReadOnlyStr123 192.168.95.1 sysDescr.0
Timeout: No Response from 192.168.95.1
-- دسترسی SNMPv2c اکنون کاملاً رفته -- community
-- string پیکربندیشده در لب قبلی دیگر وجود
-- ندارد، و فقط مسیر SNMPv3 بهدرستی
-- احرازهویتشده و رمزگذاریشده کارآمد باقی میماندنکته کلیدی
سطح authPriv در SNMPv3 مستقیماً افشای متن-ساده ذاتی community string در SNMPv2c، بحثشده بهعنوان یک محدودیت شناختهشده در لب SNMP قبلی، را میبندد — هم اعتبارنامه احراز هویت و هم داده واقعاً پرسوجوشده رمزگذاریشده منتقل میشوند، و برخلاف یک محدودیت ACL که فقط محدود میکند کدام هاستها میتوانند تلاش کنند به دسترسی برسند، SNMPv3 تضمین میکند حتی یک هاست روی لیست مجاز نمیتواند بدون ارائه اعتبارنامههای رمزنگاری واقعاً درست موفق شود.