| SNMPVACM(1) | Net-SNMP | SNMPVACM(1) |
نام (NAME)
snmpvacm - ایجاد و نگهداری مدخلهای کنترل دسترسی مبتنی بر نما (VACM) برای SNMPv3 در یک موجودیت شبکه
خلاصه دستور (SYNOPSIS)
snmpvacm [COMMON OPTIONS] AGENT createSec2Group
MODEL SECURITYNAME GROUPNAME
snmpvacm [COMMON OPTIONS] AGENT deleteSec2Group MODEL
SECURITYNAME
snmpvacm [COMMON OPTIONS] AGENT createView [-Ce] NAME SUBTREE
MASK
snmpvacm [COMMON OPTIONS] AGENT deleteView NAME SUBTREE
snmpvacm [COMMON OPTIONS] AGENT createAccess GROUPNAME
[CONTEXTPREFIX] MODEL LEVEL CONTEXTMATCH READVIEW WRITEVIEW NOTIFYVIEW
snmpvacm [COMMON OPTIONS] AGENT deleteAccess GROUPNAME
[CONTEXTPREFIX] MODEL LEVEL
snmpvacm [COMMON OPTIONS] AGENT createAuth GROUPNAME
[CONTEXTPREFIX] MODEL LEVEL AUTHTYPE CONTEXTMATCH VIEW
snmpvacm [COMMON OPTIONS] AGENT deleteAuth GROUPNAME
[CONTEXTPREFIX] MODEL LEVEL AUTHTYPE
توضیحات (DESCRIPTION)
دستور snmpvacm یک برنامهٔ کاربردی SNMP است که میتواند برای انجام نگهداریهای ساده روی جدولهای ماژول کنترل دسترسی مبتنی بر نما (VACM) در یک کارگزار SNMP استفاده شود. مشخصات VACM در پروتکل SNMPv3 (ببینید RFC2575) جدولهای گوناگونی را برای تعیین گروههای کاربری، نماهای MIB و تنظیمات دسترسی مجاز تعریف میکند. این دستورهای snmpvacm عملاً سطرهایی را در جدول مناسب ایجاد یا حذف میکنند و با دستورالعملهای پیکربندی معادل که در صفحهٔ راهنمای snmpd.conf(5) مستند شدهاند، مطابقت دارند.
توضیحات کاملتر دربارهٔ نحوهٔ عملکرد این موارد را میتوان در بخش سؤالات متداول (FAQ) پروژه یافت.
زیردستورها (SUB-COMMANDS)
createSec2Group MODEL SECURITYNAME GROUPNAME
یک مدخل در جدول نام امنیتی به گروه در SNMPv3 ایجاد میکند. این جدول اجازه میدهد یک مدخل کنترل دسترسی منفرد به چندین کاربر (یا «اصیل»ها / principals) اعمال شود و با مقادیر مدل امنیتی و نام امنیتی نمایهگذاری میشود.
MODEL
- یک عدد صحیح
که بیانگر
مدل امنیتی
است و یکی
از مقادیر
زیر را
میپذیرد:
1 - رزرو شده برای SNMPv1
2 - رزرو شده برای SNMPv2c
3 - مدل امنیتی مبتنی بر کاربر (USM)
SECURITYNAME
- رشتهای که نام امنیتی یک اصیل را نشان میدهد (در قالبی مستقل از مدل امنیتی ارائه میشود). برای درخواستهای مبتنی بر USM، نام امنیتی همان نام کاربری است.
GROUPNAME
- رشتهای که گروهی را مشخص میکند که این مدخل (یعنی جفت نام امنیتی/مدل) باید به آن تعلق داشته باشد. سپس در جدول دسترسی به این نام گروه ارجاع داده خواهد شد (ببینید createAccess در زیر).
deleteSec2Group MODEL SECURITYNAME
یک مدخل را از جدول نام امنیتی به گروه در SNMPv3 حذف میکند و بدین ترتیب تنظیمات کنترل دسترسی را برای اصیل موردنظر پاک مینماید. مدخلی که باید حذف شود با مقادیر MODEL و SECURITYNAME نمایهگذاری میشود که باید با مقادیر استفادهشده در دستور متناظر createSec2Group (یا معادل آن) مطابقت داشته باشند.
createView [-Ce] NAME SUBTREE MASK
یک مدخل در جدول نمای MIB در SNMPv3 ایجاد میکند. یک نمای MIB شامل خانوادهای از زیردرختهای نما است که ممکن است به صورت جداگانه در نما گنجانده شده یا (گاهی اوقات) از آن مستثنی شوند. هر زیردرخت نما با ترکیبی از یک زیردرخت OID به همراه یک ماسک رشته بیتی تعریف میشود. جدول نما بر اساس نام نما و مقادیر OID زیردرخت نمایهگذاری میشود.
[-Ce]
- یک فلگ اختیاری برای مشخص کردن اینکه این زیردرخت نما باید از نمای نامگذاریشده مستثنی شود. اگر مشخص نشود، حالت پیشفرض گنجاندن زیردرخت در نما است. هنگام ساخت یک نما از ترکیبی از زیردرختهای گنجاندهشده و مستثنیشده، زیردرختهای مستثنیشده باید ابتدا تعریف شوند - بهویژه اگر نمای نامگذاریشده قبلاً در یک یا چند مدخل دسترسی ارجاع داده شده باشد.
NAME
- رشتهای برای شناسایی یک نمای MIB خاص، که این زیردرخت OID/ماسک بخشی از آن (یا احتمالاً تنها بخش آن) را تشکیل میدهد.
SUBTREE
- شناسه OID که ریشه زیردرخت را برای افزودن به (یا مستثنی کردن از) نمای نامگذاریشده تعریف میکند.
MASK
- یک ماسک بیتی که مشخص میکند کدام زیرشناسههای OID زیردرخت مرتبط باید معنادار در نظر گرفته شوند.
deleteView NAME SUBTREE
یک مدخل را از جدول نمای SNMPv3 حذف میکند و بدین ترتیب زیردرخت را از نمای MIB دادهشده برمیدارد. حذف آخرین (یا تنها) زیردرخت منجر به حذف کل نما خواهد شد. مدخلی که باید حذف شود با مقادیر NAME و SUBTREE نمایهگذاری میشود که باید با مقادیر استفادهشده در دستور متناظر createView (یا معادل آن) مطابقت داشته باشند.
هنگام حذف زیردرختها از یک نمای ترکیبی (یعنی شامل هر دو نوع زیردرختهای گنجاندهشده و مستثنیشده)، زیردرختهای گنجاندهشده باید ابتدا حذف شوند.
createAccess GROUPNAME [CONTEXTPREFIX] MODEL LEVEL CONTEXTMATCH READVIEW WRITEVIEW NOTIFYVIEW
یک مدخل در جدول دسترسی SNMPv3 ایجاد میکند و به این ترتیب سطح مشخصی از دسترسی به نماهای خاص MIB را برای اصیلهای موجود در گروه تعیینشده (با فرض ارائه مدل و سطوح امنیتی مناسب در درخواست) مجاز میسازد. جدول دسترسی بر اساس مقادیر نام گروه، پیشوند بافت (context prefix)، مدل امنیتی و سطح امنیتی نمایهگذاری میشود.
GROUPNAME
- نام گروهی که این مدخل دسترسی به آن اعمال میشود (همانطور که توسط دستور createSec2Group یا معادل آن تنظیم شده است)
CONTEXTPREFIX
- رشتهای که نمایانگر نام یک بافت (یا مجموعهای از نامهای بافت) است که این مدخل دسترسی به آن اعمال میشود. تفسیر این رشته به مقدار فیلد CONTEXTMATCH بستگی دارد (زیر را ببینید).
- در صورت حذف، مقدار پیشفرض آن بافت تهی "" خواهد بود.
MODEL
- یک عدد صحیح
که بیانگر
مدل امنیتی
است و یکی
از مقادیر
زیر را
میپذیرد:
1 - رزرو شده برای SNMPv1
2 - رزرو شده برای SNMPv2c
3 - مدل امنیتی مبتنی بر کاربر (USM)
LEVEL
- یک عدد صحیح
که بیانگر
حداقل سطح
امنیتی است
و یکی از
مقادیر زیر
را
میپذیرد:
1 - noAuthNoPriv
2 - authNoPriv
3 - authPriv - این مدخل دسترسی به درخواستهای با این سطح یا بالاتر اعمال خواهد شد (که در آن authPriv بالاتر از authNoPriv است و آن نیز به نوبه خود بالاتر از noAuthNoPriv قرار دارد).
CONTEXTMATCH
- نحوه تفسیر مقدار CONTEXTPREFIX را مشخص میکند. اگر این فیلد مقدار '1' (به معنی 'exact' یا دقیق) داشته باشد، نام بافت یک درخواست باید دقیقاً با مقدار CONTEXTPREFIX مطابقت داشته باشد تا این مدخل دسترسی برای آن درخواست قابل اعمال باشد.
- اگر این فیلد دارای مقدار '2' (به معنی 'prefix' یا پیشوند) باشد، زیررشته ابتدایی نام بافتِ درخواست باید با مقدار CONTEXTPREFIX مطابقت داشته باشد تا این مدخل دسترسی برای آن درخواست اعمال شود. این یک شکل ساده از نویسه عمومی (wildcarding) را فراهم میکند.
READVIEW
- نام نمای MIB (همانطور که توسط createView یا معادل آن تنظیم شده است) که اشیای MIB را تعریف میکند که این درخواست ممکن است مقادیر فعلی آنها را بخواند.
- اگر نمایی با این نام وجود نداشته باشد، دسترسی خواندن داده نمیشود.
WRITEVIEW
- نام نمای MIB (همانطور که توسط createView یا معادل آن تنظیم شده است) که اشیای MIB را تعریف میکند که این درخواست ممکن است مقادیر جدیدی را برای آنها مقداردهی (SET) کند.
- اگر نمایی با این نام وجود نداشته باشد، دسترسی خواندن داده نمیشود.
NOTIFYVIEW
- نام نمای MIB (همانطور که توسط createView یا معادل آن تنظیم شده است) که اشیای MIB مجاز برای گنجانده شدن در درخواست اعلان را تعریف میکند.
- توجه داشته باشید که این جنبه از کنترل دسترسی در حال حاضر پشتیبانی نمیشود.
deleteAccess GROUPNAME [CONTEXTPREFIX] MODEL LEVEL
یک مدخل را از جدول دسترسی SNMPv3 حذف میکند و در نتیجه تنظیمات کنترل دسترسی مشخصشده را پاک مینماید. مدخلی که باید حذف شود با مقادیر نام گروه، پیشوند بافت، مدل امنیتی و سطح امنیتی نمایهگذاری میشود که باید با مقادیر استفادهشده در دستور متناظر createAccess (یا معادل آن) مطابقت داشته باشند.
createAuth GROUPNAME [CONTEXTPREFIX] MODEL LEVEL AUTHTYPE CONTEXTMATCH VIEW
یک مدخل در افزونه Net-SNMP برای جدول دسترسی استاندارد ایجاد میکند و بدین ترتیب نوع خاصی از دسترسی به نمای MIB را برای اصیلهای موجود در گروه مشخصشده مجاز میسازد. تفسیر GROUPNAME، CONTEXTPREFIX، MODEL، LEVEL و CONTEXTMATCH همانند دستورالعمل createAccess است. جدول دسترسی افزونه بر اساس مقادیر نام گروه، پیشوند بافت، مدل امنیتی، سطح امنیتی و authtype نمایهگذاری میشود.
AUTHTYPE
- نوع دسترسی که این مدخل باید به آن اعمال شود. برای جزئیات نشانههای معتبر به snmpd.conf(5) و snmptrapd.conf(5) مراجعه کنید.
VIEW
- نام نمای MIB (همانطور که توسط createView یا معادل آن تنظیم شده است) که اشیای MIB مجاز برای این نوع دسترسی را تعریف میکند.
deleteAuth GROUPNAME [CONTEXTPREFIX] MODEL LEVEL AUTHTYPE
یک مدخل را از جدول دسترسی افزونه حذف میکند و در نتیجه تنظیمات کنترل دسترسی مشخصشده را پاک مینماید. مدخلی که باید حذف شود با مقادیر نام گروه، پیشوند بافت، مدل امنیتی، سطح امنیتی و authtype نمایهگذاری میشود که باید با مقادیر استفادهشده در دستور متناظر createAuth (یا معادل آن) مطابقت داشته باشند.
توجه داشته باشید که snmpget نیازمند یک آرگومان برای تعیین کارگزار مورد پرسوجو است، همانطور که در صفحهٔ راهنمای snmpcmd(1) توضیح داده شده است.
مثالها (EXAMPLES)
با فرض وجود کاربری از قبل به نام dave (که میتوان آن را با دستور snmpusm(1) تنظیم کرد)، میتوانیم دسترسی کامل خواندن و نوشتن به کل درخت OID را با استفاده از دستورهای زیر پیکربندی کنیم:
- snmpvacm localhost createSec2Group 3 dave RWGroup
- snmpvacm localhost createView all .1 80
- snmpvacm localhost createAccess RWGroup 3 1 1 all all none
این دستورات یک گروه امنیتی جدید به نام «RWGroup» شامل کاربر SNMPv3 به نام «dave» ایجاد میکنند، یک نمای جدید «all» شامل کل درخت OID مبتنی بر .iso(1) ایجاد مینمایند و سپس به کاربران گروه «RWGroup» (یعنی «dave») هر دو دسترسی خواندن و نوشتن را به نمای «all» (یعنی کل درخت OID) هنگام استفاده از درخواستهای احراز هویتشدهٔ SNMPv3 اعطا میکنند.
به عنوان مثال دوم، میتوانیم دسترسی فقط-خواندنی به بخشی از درخت OID را با استفاده از دستورهای زیر برقرار کنیم:
- snmpvacm localhost createSec2Group 3 wes ROGroup
- snmpvacm localhost createView sysView system fe
- snmpvacm localhost createAccess ROGroup 3 0 1 sysView none none
این دستورات یک گروه امنیتی جدید به نام «ROGroup» شامل کاربر (از قبل موجودِ) «wes» ایجاد میکنند، یک نمای جدید «sysView» شامل بخش درخت OID مبتنی بر .iso(1).org(3).dod(6).inet(1).mgmt(2).mib-2(1).system(1) ایجاد مینمایند و سپس به کاربران این گروه «ROGroup» (یعنی «wes») دسترسی خواندن، اما نه دسترسی نوشتن، به نمای «sysView» (یعنی گروه system) میدهند.
وضعیت خروج (EXIT STATUS)
مقادیر خروج زیر بازگردانده میشوند:
0 - اتمام موفقیتآمیز
1 - خطای نحوی در استفاده (که پیام استفادهٔ مناسب را نمایش میدهد) یا اتمام مهلت زمانی (timeout) درخواست.
2 - رخ دادن خطا هنگام اجرای دستور (که پیام خطای مناسبی را نیز نمایش میدهد).
محدودیتها (LIMITATIONS)
این ابزار از پیکربندی رشتههای اجتماع (community strings) جدید پشتیبانی نمیکند، بنابراین فقط برای برپایی کنترل دسترسی جدید برای درخواستهای SNMPv3 کاربرد دارد. میتوان از آن برای اصلاح تنظیمات دسترسیِ رشتههای اجتماع موجود استفاده کرد، اما نه برای ایجاد موارد جدید.
استفاده از پارامترهای عددی برای پارامترهای secLevel و contextMatch چندان شهودی و سرراست نیست. این دستورها انعطافپذیری کامل دستورالعملهای معادل فایل پیکربندی را ارائه نمیدهند.
در حال حاضر هیچ معادلی برای دستورالعملهای پیکربندی یکبارهٔ rouser و rwuser وجود ندارد.
همچنین ببینید (SEE ALSO)
snmpcmd(1), snmpusm(1), snmpd.conf(5), snmp.conf(5), RFC 2575, Net-SNMP project FAQ
| 05 Sep 2006 | V5.9.5.2 |