'\" t
.TH ISNSADM 8 "11 May 2007"
.SH "نام (NAME)"
isnsadm \- ابزار کلاینت iSNS
.SH "خلاصه دستور (SYNOPSIS)"
.B isnsadm
.RI [ options... ]
.RI \--register " object...
.PP
.B isnsadm
.RB [ ... ]
.RI \--query " attr" [= value ]
.PP
.B isnsadm
.RB [ ... ]
.RI \--deregister " attr=value
.PP
.B isnsadm
.RB [ ... ]
.RI \--list " type attr=value
.PP
.B isnsadm
.RB [ ... ]
.RI \--dd-register " attr=value
.PP
.B isnsadm
.RB [ ... ]
.RI \--dd-deregister " dd-id attr=value
.PP
.B isnsadm
.RB [ ... ]
.RI \--enroll " client-name attr=value
.PP
.B isnsadm
.RB [ ... ]
.RI \--edit-policy " attr=value
.SH "توضیحات (DESCRIPTION)"
دستور
.B isnsadm
یک ابزار خط فرمان برای تعامل با سرور iSNS است\&. این ابزار در یکی از چندین حالت عمل میکند که نسبت به هم مانعةالجمع هستند\&.
در حال حاضر،
.B isnsadm
از ثبت، پرسوجو و لغو ثبت پشتیبانی میکند\&.
.SH "گزینهها (OPTIONS)"
بهطور پیشفرض،
.B isnsadm
بیشتر تنظیمات خود را از فایل پیکربندی
.BR /etc/isns/isnsadm.conf
دریافت میکند، به استثنای گزینههای زیر:
.TP
.BI \--config " filename\fR, " \-c " filename
این گزینه فایل پیکربندی پیشفرض را لغو میکند (نادیده میگیرد)\&.
.TP
.BI \--debug " facility\fR, " \-d " facility
اشکالزدایی را فعال میکند\&. بخشهای معتبر عبارتند از:
.PP
.TS
tab(,),box,center;
lb|lr.
socket,ارسال/دریافت شبکه
auth,اطلاعات مربوط به احراز هویت و امنیت
message,لایه پروتکل iSNS
state,وضعیت پایگاه داده
scn,پیامهای SCN (اعلان تغییر وضعیت)
esi,پیامهای ESI (استعلام وضعیت موجودیت)
all,تمام موارد بالا
.TE
.PP
.TP
.BI \--local
باعث میشود
.B isnsadm
هنگام برقراری ارتباط با سرور iSNS از یک سوکت محلی (سوکت یونیکس) استفاده کند\&. این گزینه میتواند توسط مدیر سیستم برای انجام کارهای مدیریتی مانند ثبتنام کلاینتهای جدید، ویرایش کنترل دسترسی و موارد مشابه استفاده شود\&. حالت محلی تنها در دسترس کاربر ارشد (ریشه) است\&.
.TP
.BI \--server " servername\fR, " \-s " servername
سرور مورد استفاده را مشخص میکند (اگر در فایل پیکربندی مشخص نشده باشد)\&.
.TP
.BI \--control
باعث میشود
.B isnsadm
هویت یک گره کنترلی را به خود بگیرد\&. گرههای کنترلی از این جهت خاص هستند که نسبت به گرههای ذخیرهسازی عادی، از دسترسیها و اختیارات بیشتری در دسترسی و اصلاح پایگاه داده برخوردارند\&.
.PP
هنگام استفاده از این گزینه،
.B isnsadm
به ترتیب از نام مبدأ و کلید DSA مشخصشده توسط گزینههای پیکربندی
.BR Control.SourceName " و " Control.AuthKeyFile
استفاده خواهد کرد\&.
.PP
.TP
.BI \--key " attr" = value
این گزینه تنها در حالت ثبت شناخته میشود و به شما امکان میدهد کلید یک شیء را مشخص کنید\&. برای توضیحات دقیقتر، به بخش
.BR "حالت ثبت (Registration mode)"
مراجعه کنید\&.
.TP
.BI \--keyfile= filename
هنگام ایجاد یک خطمشی برای یک کلاینت جدید iSNS،
.B isnsadm
قادر به تولید یک کلید DSA برای آن کلاینت است\&. بخش عمومی کلید در یک شیء خطمشی در پایگاه داده سرور iSNS ذخیره میشود، در حالی که بخش خصوصی آن در فایل مشخصشده توسط گزینه
.B keyfile
ذخیره خواهد شد\&.
.B
.TP
.BI \--help
پیام راهنما را نمایش داده و خارج میشود\&.
.\"---------------------------
.SS "راهنمای داخلی (Built-in help)"
دستور
.B isnsadm
دارای توابع راهنمای داخلی است\&. هنگامی که با گزینه
.B \--help
فراخوانی شود، یک پیام راهنمای کلی شامل تمام حالتهای دستوری پشتیبانیشده را چاپ کرده و خارج میشود\&. راهنمای اختصاصی برای هر یک از حالتهای دستوری با فراخوانی آن حالت به همراه آرگومان تکی
.B help
در دسترس است، مانند این:
.PP
.B isnsadm \--register help
.PP
این دستور یک پیام راهنما در توصیف نحوه استفاده از این حالت دستوری چاپ میکند، که به دنبال آن فهرستی از مشخصههای پشتیبانیشده توسط این دستور و متن راهنمای توصیفکننده هر مشخصه نمایش داده میشود\&.
.\"---------------------------
.SS "مشخصههای پشتیبانیشده (Supported attributes)"
بیشتر حالتهای دستوری فهرستی از مشخصهها را به عنوان آرگومان در خط فرمان دریافت میکنند\&. نامگذاری و نحو این مشخصهها برای تمام حالتهای دستوری یکسان است، با این حال برخی حالتها فقط از مجموعه محدودی از مشخصهها پشتیبانی میکنند\&.
.PP
مشخصهها معمولاً به صورت جفتهای
.IB name = value
داده میشوند\&. در جاهایی که مشخصههای خالی (یا NIL) پشتیبانی میشوند، میتوان نام مشخصه را به تنهایی وارد کرد\&.
.PP
نحو مقدار مشخصه
(\fIvalue\fR)
به نوع مشخصه بستگی دارد\&. برای رشتهها و مقادیر عددی، قواعد خاصی اعمال نمیشود، اما فیلدهای بیتی دارای نحو خاصی هستند که در ادامه توضیح داده شده است\&.
.PP
نام مشخصه معمولاً با نوع شیئی که به آن اعمال میشود (مانند
.BR entity )
همراه با یک خط تیره و سپس خود نام آغاز میشود\&. با این حال، در جاهایی که بستر به طور واضح نوع شیء خاصی را تعیین میکند، میتوان پیشوند را حذف کرد\&. برای مثال، هنگام ویرایش یک شیء خطمشی با استفاده از
.BR \--edit-policy ،
استفاده از
.B node-type
به عنوان شکل کوتاه
.B policy-node-type
مجاز است\&.
.PP
به همین ترتیب، در یک دستور پرسوجو، ترکیب مشخصههای مربوط به انواع اشیاء مختلف مجاز نیست\&. بنابراین، اولین مشخصه در رشته پرسوجو، بستر نوع را مشخص میکند، به طوری که دو فراخوانی زیر معادل یکدیگر هستند:
.PP
.B isnsadm \--query pg-name=iqn.com.foo pg-addr=10.1.1.1 pg-port=860/tcp
.br
.B isnsadm \--query pg-name=iqn.com.foo addr=10.1.1.1 port=860/tcp
.PP
در حال حاضر
.B isnsadm
از مشخصههای زیر پشتیبانی میکند:
.PP
.TS
tab(,),box,center;
li|lilili
lt|lbrlb.
بستر (Context),مشخصه (Attribute),برچسب iSNS,نامهای مستعار (Aliases)
_
Network Entity,entity-id,1,eid
\^,entity-prot,2
\^,entity-index,7
iSCSI Storage Node,iscsi-name,32
\^,iscsi-node-type,33
\^,iscsi-alias,34
\^,iscsi-idx,36
\^,iscsi-authmethod,42
Portal,portal-addr,16
\^,portal-port,17
\^,portal-name,18
\^,portal-esi-port,20
\^,portal-esi-interval,21
\^,portal-idx,22
\^,portal-scn-port,23
Portal Group,portal-group-index,52
\^,pg-name,48
\^,pg-addr,49
\^,pg-port,50
\^,pg-tag,51,pgt
\^,pg-idx,52
Discovery Domain,dd-id,2065
\^,dd-name,2066
\^,dd-member-iscsi-idx,2067
\^,dd-member-name,2068
\^,dd-member-fc-name,2069,
\^,dd-member-portal-idx,2070,
\^,dd-member-addr,2071,
\^,dd-member-port,2072,
\^,dd-features,2078,
Policy Object,policy-name,-,spi
\^,policy-key,-
\^,policy-entity,-
\^,policy-node-type,-
\^,policy-object-type,-
\^,policy-functions,-
.TE
.PP
.\"---------------------------
.SS "مشخصههای درگاه (Portal attributes)"
اطلاعات درگاه (Portal) در iSNS از طریق دو مشخصه جداگانه منتقل میشود؛ یک مشخصه نشانی که حاوی نشانی IP است، و یک مشخصه درگاه TCP/UDP که حاوی شماره درگاه و نشانه پروتکل مورد استفاده (TCP یا UDP) است\&.
.PP
هنگام تجزیه یک درگاه TCP/UDP، سامانه Open-iSNS انتظار یک شماره درگاه را دارد که به طور اختیاری یک اسلش و پروتکل به دنبال آن میآید\&. نامهای پورت مانند "iscsi-target" پشتیبانی نمیشوند\&.
.PP
برای سهولت،
.B isnsadm
از روش نگارشی پشتیبانی میکند که درگاه را به عنوان یک شبهمشخصه نمایش میدهد و نشانی و درگاه را با دونقطه از هم جدا میکند\&. بنابراین، دو مورد زیر معادل هستند که مورد دوم نمایش خلاصهشده مورد اول است:
.PP
.BI addr=
" port=" [/ protocol ] \fR.
.BI portal= : port [/ protocol ]
.PP
این روش نگارش میتواند در هر بستری که جفت مشخصه
.BR addr / port
امکان حضور دارد به کار رود، و ممکن است با یک نام نوع پیشوندگذاری شود، مانند
.BR pg-portal=... \&.
.PP
هنگام استفاده از نشانیهای صریح IPv6، نشانی باید درون براکت قرار گیرد، در غیر این صورت دونقطههای داخل نشانی باعث ایجاد ابهام میشوند:
.BR portal=[2001:5c0:0:2::24]:860/tcp
.PP
.\"---------------------------
.SS "مشخصههای فیلد بیتی (Bitfield attributes)"
برخی از مشخصههای iSNS کلماتی هستند که یک فیلد بیتی را نشان میدهند\&.
.B isnsadm
این مشخصهها را به جای مقدار عددی، به صورت قابل خواندن برای انسان نمایش داده و تجزیه میکند\&. نام مقادیر بیت توسط بخشهای راهنمای داخلی نمایش داده میشود\&. هنگام تعیین یک مشخصه فیلد بیتی در خط فرمان، میتوانید آنها را با استفاده از نویسه علامت مثبت (\fB+\fP) یا کاما (\fB,\fR) ترکیب کنید، مانند این:
.PP
.B node-type=control+initiator
.PP
.\"---------------------------
.SS "حالت ثبت (Registration mode)"
حالت ثبت با استفاده از گزینه
.B \--register
انتخاب میشود، که به دنبال آن فهرستی از یک یا چند شیء برای ثبت در سرور iSNS قرار میگیرد\&.
به طور پیشفرض، این کار یک موجودیت شبکه برای کلاینت ایجاد میکند (اگر وجود نداشته باشد)، و اشیاء جدید را درون آن قرار میدهد\&. معمولاً تمام اشیاء مربوط به یک موجودیت شبکه را در یک عملیات ثبت میکنید، نه هر یک را به صورت جداگانه\&.
.PP
هر شیء به صورت یک نوع مشخص میشود، که به طور اختیاری با فهرستی از مشخصههای جداشده با کاما دنبال میشود، مانند این:
.PP
.B target=iqn.2005-01.org.open-iscsi.foo:disk1,alias=disk1
.PP
انواع اشیاء زیر در حال حاضر پشتیبانی میشوند:
.TP
.BI entity= name
به سرور اعلام میکند که تمام اشیاء را در شیء ظرف موجودیت شبکه (Network Entity) مشخصشده گروهبندی کند\&.
معمولاً سرور iSNS به طور خودکار نام موجودیتی متناسب با خطمشیهای خود اختصاص میدهد و نیازی به مشخص کردن صریح آن نیست\&.
.TP
.BI initiator[= name ]
یک گره ذخیرهسازی iSCSI از نوع آغازگر (initiator) ثبت میکند\&.
به طور پیشفرض، نام برابر با نام مبدأ iSNS تنظیم میشود\&.
.IP
به دنبال این میتوان هر تعداد از مشخصههای گره ذخیرهسازی iSCSI را قرار داد\&.
.TP
.BI target[= name ]
یک گره ذخیرهسازی iSCSI از نوع هدف (target) ثبت میکند\&.
به طور پیشفرض، نام برابر با نام مبدأ iSNS تنظیم میشود\&.
.IP
این شیء همان مجموعه مشخصههای
.B initiator
را میپذیرد\&.
.TP
.BI control[= name ]
یک گره ذخیرهسازی iSCSI از نوع کنترلی (control) ثبت میکند\&.
به طور پیشفرض، نام برابر با نام مبدأ iSNS تنظیم میشود\&.
تنها گرههای مدیریتی باید به عنوان گرههای کنترلی ثبت شوند، زیرا این کار به گره کنترل کاملی روی پایگاه داده iSNS میدهد\&.
.IP
این شیء همان مجموعه مشخصههای
.B initiator
را میپذیرد\&.
.TP
.BI portal=[ address:port/proto ]
یک درگاه را با استفاده از سهتایی نشانی، درگاه و پروتکل دادهشده ثبت میکند\&. اگر این سهتایی حذف شود،
.B isnsadm
از نشانی IP میزبان کلاینت استفاده خواهد کرد\&. اگر درگاه پیش از ثبت یک initiator (در خط فرمان) بیاید، پورت پیشفرض 860/tcp خواهد بود؛ اگر پیش از ثبت یک target بیاید، پورت پیشفرض 3260/tcp خواهد بود\&.
برای میزبانهای چنداتصالی (multi-homed)، انتخاب نشانی به پیادهسازی بستگی دارد\&.
.IP
به دنبال این میتواند هر تعداد از مشخصههای درگاه قرار گیرد\&.
.TP
.B pg
یک گروه درگاه (portal group) ثبت میکند که درگاه و گره قبلی را به هم پیوند میدهد\&. گروههای درگاه میتوانند برای توصیف درگاههای ترجیحی برای یک گره دادهشده به کار روند؛ لطفاً برای جزئیات به RFC 4171 مراجعه کنید\&.
.IP
به دنبال این میتواند هر تعداد از مشخصههای گروه درگاه قرار گیرد\&.
فهرست مشخصهها باید برچسب گروه درگاه (PGT) را از طریق مشخصه
.B pgt
تعیین کند\&.
.PP
دو گزینه خط فرمان دیگر نیز وجود دارند که منحصراً در حالت ثبت استفاده میشوند\&. یکی از آنها
.B \--replace
است\&. در حالت عادی، حالت ثبت اشیاء جدید را به موجودیت شبکه مرتبط با میزبان کلاینت
.I اضافه
میکند\&. اگر در خط فرمان
.B \--replace
را مشخص کنید، سرور موجودیت شبکه را کاملاً پاک کرده و تمام درگاهها و گرههای ذخیرهسازی موجود در آن را حذف خواهد کرد\&. سپس یک موجودیت شبکه جدید ایجاد کرده و درگاهها و گرههای ذخیرهسازی ارائهشده توسط فراخوان را در آن قرار میدهد\&.
.PP
علاوه بر این، جایگزینی تنها بخشهایی از یک موجودیت شبکه نیز امکانپذیر است\&. این کار با استفاده از گزینه خط فرمان
.B \--key
برای تعیین شیئی که باید جایگزین شود انجام میگیرد\&.
.PP
برای نمونه، فرض کنید یک موجودیت شبکه شامل درگاه
.B 10.1.1.1:860
است، و نشانی شبکه کلاینت به
.B 10.2.7.7
تغییر یافته است\&. در این صورت دستور زیر پایگاه داده را به صورت تجزیهناپذیر (اتومیک) بهروزرسانی کرده و فقط درگاه را بدون دستکاری گرههای ذخیرهسازی ثبتشده جایگزین میکند:
.PP
.B " isnsadm \--replace \--key portal=10.1.1.1:860 portal=10.2.7.7:860
.PP
گزینه
.B \--key
تنها زیرمجموعهای از مشخصههای معمول را میشناسد:
.RS
.TS
tab(,),box;
li|li
lb|lb.
نوع شیء (Object type),نحو (Syntax)
_
Entity,eid=\fIidentifier
Portal,portal=\fIaddress\fP:\fPport
iSCSI Node,iscsi-name=\fIname
.TE
.RE
.PP
برای دریافت فهرست مشخصههای پشتیبانیشده، دستور
.BR "isnsadm \--register help"
را فراخوانی کنید\&.
.\"---------------------------
.SS "حالت پرسوجو (Query mode)"
حالت پرسوجو با استفاده از گزینه
.B \--query
انتخاب میشود\&. یک پرسوجو از فهرستی از جفتهای
.BR attr = \fI value
تشکیل میشود\&. تمام مشخصهها باید به یک نوع شیء تعلق داشته باشند، یعنی پرسوجوهایی که مشخصه موجودیت شبکه را مثلاً با مشخصه درگاه ترکیب کنند رد خواهند شد\&.
.PP
همچنین میتوان نام مشخصه را بدون مقدار (یعنی فقط
.BR attr )
مشخص کرد، که با هر شیئی که دارای چنین مشخصهای باشد، صرفنظر از مقدار آن، مطابقت خواهد داشت\&. این ویژگی زمانی مفید است که بخواهید تمام اشیاء از یک نوع خاص را پرسوجو کنید\&.
.PP
برای دریافت فهرست مشخصههای پشتیبانیشده، دستور
.BR "isnsadm \--query help"
را فراخوانی کنید\&.
.\"---------------------------
.SS "حالت فهرست (List Mode)"
در این حالت،
.B isnsadm
تمام اشیاء یک نوع دادهشده را نمایش میدهد، که به صورت اختیاری میتواند به مواردی که با مقادیر مشخصه خاصی مطابقت دارند محدود شود\&.
.PP
آرگومانهای حالت فهرست شامل یک
.IR "نام نوع"
است، که به طور اختیاری با یک یا چند جفت
.IB attr = value
دنبال میشود\&. تنها مشخصههای مربوط به نوع دادهشده مجاز هستند؛ برای نمونه، اگر نام نوع را
.B portals
مشخص کنید، تنها مشخصههای درگاه مجاز خواهند بود\&.
.PP
نامهای نوع ممکن عبارتند از:
.BR entities ،
.BR nodes ،
.BR portals ،
.BR dds ،
.BR ddsets ،
.BR portal-groups
و
.BR policies \&.
.PP
اطلاعات بیشتر از طریق دستور زیر در دسترس است:
.BR "isnsadm \--list help" \&.
.\"---------------------------
.SS "حالت لغو ثبت (Deregistration mode)"
در این حالت، میتوانید اشیائی را که قبلاً ثبت شدهاند لغو ثبت کنید\&. تنها گرهی که در وهله اول موجودیت را ثبت کرده است مجاز به حذف آن یا هر یک از اشیاء فرزند آن است (گرههای کنترلی به این محدودیت مقید نیستند)\&.
.PP
در حالت لغو ثبت، فهرست آرگومانها شامل فهرستی از جفتهای
.IB attr = value
است\&. لغو ثبت از همان مجموعه مشخصههای حالت پرسوجو پشتیبانی میکند\&.
.\"---------------------------
.SS "ثبت دامنه کشف (Discovery Domain Registration)"
این حالت امکان ثبت یک دامنه کشف یا افزودن اعضای جدید به یک دامنه کشف موجود را فراهم میکند\&. مجدداً، مشخصهها به صورت فهرستی از جفتهای
.IB attr = value
تعیین میشوند\&. تنها مشخصههای دامنه کشف شناخته میشوند\&.
.PP
توجه داشته باشید که برای افزودن اعضا به یک دامنه موجود، باید شناسه عددی دامنه را مشخص کنید\&. نام نمادین دامنه هنگام ارجاع به یک دامنه کشف، شناسه معتبری نیست\&.
.\"---------------------------
.SS "حالت لغو ثبت دامنه کشف (Discovery Domain Deregistration mode)"
در این حالت، میتوانید یک دامنه کشف را که قبلاً ثبت شده است لغو ثبت کنید\&. تنها گرهی که در وهله اول یک دامنه کشف را ثبت کرده است مجاز به حذف آن یا هر یک از اعضای آن است (گرههای کنترلی به این محدودیت مقید نیستند)\&.
.PP
در حالت لغو ثبت دامنه کشف، فهرست آرگومانها شامل شناسه دامنه کشف است که به دنبال آن فهرستی از جفتهای
.IB attr = value
قرار میگیرد\&. لغو ثبت دامنه کشف از همان مجموعه مشخصههای حالت پرسوجو پشتیبانی میکند\&.
.\"---------------------------
.SS "ثبتنام کلاینت (Client Enrollment)"
این حالت تنها زمانی کار میکند که سرور کلاینت را دارای قابلیتهای گره کنترلی تشخیص دهد، که این امر به دو روش امکانپذیر است:
.TP
فراخوانی
.B isnsadm \--local
به عنوان کاربر ارشد روی میزبانی که
.B isnsd
روی آن در حال اجرا است\&. گزینه
.B \--local
به آن دستور میدهد از طریق سوکت کنترلی محلی با سرور ارتباط برقرار کند\&.
.TP
فراخوانی
.BR "isnsadm \--control" ،
که به آن دستور میدهد هویت یک گره کنترلی را به خود بگیرد\&. هنگام ارائه این گزینه،
.B isnsadm
به ترتیب از نام مبدأ و کلید DSA مشخصشده توسط گزینههای پیکربندی
.BR Control.SourceName " و " Control.AuthKeyFile
استفاده خواهد کرد\&. سرور باید طوری پیکربندی شده باشد که به این هویت وضعیت گره کنترلی اعطا کند\&.
.PP
برای ثبتنام یک کلاینت، از گزینه
.B \--enroll
استفاده کنید، که به دنبال آن نام (مبدأ) کلاینت مورد نظر برای ثبتنام قرار میگیرد\&. این رشته به عنوان نام خطمشی امنیتی که کلاینت برای شناسایی خود استفاده میکند به کار خواهد رفت\&.
.PP
به دنبال این، فهرستی از جفتهای مشخصه/مقدار میآید، که در آن مجموعه مشخصههای زیر پشتیبانی میشوند:
.PP
.TS
tab(,),box,center;
li|lilili
lb|lrlb.
مشخصه (Attribute),شرح (Description),نامهای مستعار (Aliases)
_
name,نام خطمشی,spi
key,کلید عمومی DSA کلاینت
entity,شناسه موجودیت تخصیصیافته
node-type,نوع یا انواع گره مجاز
node-name,نام یا نامهای گره مجاز
functions,بیتمپ توابع مجاز
object-type,ماسک دسترسی به شیء
.TE
.PP
مشخصه
.B key
برای مشخص کردن کلید عمومی DSA استفاده میشود که سرور باید برای احراز هویت پیامهای ارسالی از این کلاینت استفاده کند\&. میتوانید یک نام فایل ارائه دهید؛ که در این صورت
.B isnsadm
تلاش خواهد کرد کلید عمومی با کدگذاری PEM را از آن فایل بخواند\&. اگر هیچ مشخصه
.B key
داده نشود، یا هنگام استفاده از
.BR key=gen ،
دستور
.B isnsadm
یک کلید DSA تولید خواهد کرد\&. بخش خصوصی کلید تازه تولیدشده در فایل مشخصشده توسط
.BI \--keyfile= filename
ذخیره خواهد شد\&.
.PP
مشخصه
.B object-type
برای تعیین انواع اشیائی که کلاینت مجاز به دسترسی به آنها است استفاده میشود\&. این یک فهرست جداشده با کاما از جفتهای
.IB type : perm
است، که در آن
.I type
میتواند هر یک از
.BR entity ،
.BR iscsi-node ،
.BR portal ،
.BR portal-group ،
.BR dd ،
.BR ddset
و
.BR policy
باشد\&. مجوزها میتوانند
.BR rw
یا
.BR r
باشند\&.
.PP
مشخصه
.B functions
میتواند برای محدود کردن توابعی که کلاینت مجاز به فراخوانی آنها است استفاده شود\&. این یک فیلد بیتی است که از نامهای استاندارد توابع از RFC 4171 استفاده میکند، مانند
.BR DevAttrReg ،
.BR DevAttrQry
و غیره\&.
.PP
برای توضیحات مربوط به مدل امنیتی و خطمشیهای open-isns، لطفاً به صفحه راهنمای
.BR isns_config (5)
مراجعه کنید\&.
.PP
.BR "نکته مهم" :
برای تولید یک کلید DSA، باید مجموعهای از پارامترهای DSA نصب شده باشند\&. بهطور پیشفرض،
.B isnsadm
انتظار دارد آنها را در
.BR /etc/isns/dsa.params
پیدا کند\&. این پارامترها با یک بار فراخوانی
.B isnsd \--init
روی ماشین سرور ایجاد میشوند\&. متناوباً، میتوانید از دستور زیر استفاده کنید:
.PP
.ti +8
openssl dsaparam 1024 -out /etc/isns/dsa.params
.ti -8
.PP
که در آن 1024 اندازه انتخابشده برای کلید DSA به بیت است\&.
.SH "مثالها (EXAMPLES)"
اگر میخواهید از Open-iSNS در حالت احراز هویتشده استفاده کنید، ابتدا باید کلید DSA و پارامترهای DSA سرور را مقداردهی اولیه کنید\&. این کار را میتوان به سادگی با استفاده از دستور زیر انجام داد:
.PP
.B isnsd \--init
.PP
این دستور کلید خصوصی و عمومی سرور را ایجاد کرده و آنها را به ترتیب در
.B /etc/isns/auth_key
و
.B auth_key.pub
قرار میدهد\&.
.PP
دستور زیر یک شیء خطمشی برای گرهای به نام
.B isns.control
ایجاد کرده و امتیازات کنترلی را به آن اعطا میکند:
.PP
.B isnsadm \--local \--keyfile=control.key
.B \--enroll isns.control \(rs
.br
.B " node-type=ALL functions=ALL object-type=ALL
.PP
در فرآیند ثبتنام کلاینت، این دستور یک جفت کلید DSA تولید میکند و بخش کلید خصوصی را در فایل
.B control.key
قرار میدهد\&. این فایل باید به عنوان
.B /etc/isns/control.key
روی میزبانی که میخواهید به عنوان ایستگاه مدیریت iSNS استفاده کنید نصب شود\&.
.PP
در مرحله بعد، باید یک شیء گره ذخیرهسازی برای ایستگاه مدیریت ایجاد کنید:
.PP
.B isnsadm \--local \--register control
.PP
سپس روی ایستگاه مدیریت میتوانید میزبانهای دیگری را ثبتنام کنید:
.PP
.B isnsadm \--control \--keyfile=somehost.key
.B \--enroll iqn.2005-01.org.open-iscsi.somehost \(rs
.br
.B " node-type=target+initiator
.PP
مجدداً، این دستور یک جفت کلید DSA تولید کرده و بخش کلید خصوصی را در auth_key ذخیره میکند\&. توجه داشته باشید که استفاده از گزینه
.B \--control
به
.B isnsadm
اعلام میکند به جای کلید و نام مبدأ پیشفرض، از هویت گره کنترلی استفاده کند\&.
.PP
سپس باید
.B somehost.key
را به میزبان کلاینت کپی کرده و آن را به عنوان
.B /etc/isns/auth_key
نصب کنید\&. به همین ترتیب، کلید عمومی سرور (که در
.B /etc/isns/auth_key.pub
روی سرور قرار دارد) باید به ماشین کلاینت کپی شده و در
.B /etc/isns/server_key.pub
قرار گیرد\&.
.PP
بهطور پیشفرض، هنگامی که یک کلاینت یک گره ذخیرهسازی (چه initiator و چه target) را در iSNS ثبت میکند، قادر به مشاهده هیچ گره ذخیرهسازی دیگری نخواهد بود\&. برای اینکه targetها برای یک initiator مشخص قابل مشاهده باشند، باید اصطلاحاً دامنههای کشف (یا به اختصار DD) ایجاد کنید\&.
.PP
در حال حاضر، عملیات عضویت در دامنه نیازمند امتیاز مدیر سیستم است\&. قابلیتهای الحاقی در آینده ممکن است به کلاینتهای iSNS اجازه دهند هنگام ثبت، خود را به یک یا چند DD اضافه کنند\&.
.PP
برای ایجاد یک دامنه کشف و افزودن گرهها به آن، میتوانید از دستور زیر استفاده کنید:
.PP
.B isnsadm \--control \--dd-register dd-name=mydomain \(rs
.br
.B " member-name=iqn.org.bozo.client iqn.org.bozo.jbod ...
.PP
برای افزودن اعضا به یک DD موجود، باید شناسه عددی دامنه را مشخص کنید \- متأسفانه استفاده از نام DD کافی نیست (این یکی از الزامات RFC است، نه نقص پیادهسازی):
.PP
.B isnsadm \--control \--dd-register dd-id=42 \(rs
.br
.B " member-name=iqn.com.foo member-name=iqn.com.bar
.PP
شناسه DD را میتوان با انجام یک پرسوجو برای نام DD به دست آورد:
.PP
.B isnsadm \--control \--query dd-name=mydomain
.PP
در حالت مدیریت، میتوانید گرهها و درگاهها را به صورت دستی نیز ثبت و لغو ثبت کنید، در صورتی که بخواهید یک ناهماهنگی در پایگاه داده را برطرف کنید\&. برای نمونه، دستور زیر یک گره و درگاه را روی میزبانی به نام client.bozo.org ثبت میکند:
.PP
.B isnsadm \--control \--register entity=client.bozo.org \(rs
.br
.B " initiator=iqn.org.bozo.client portal=191.168.7.1:860
.PP
توجه داشته باشید که این ثبت صراحتاً موجودیت شبکهای را که اشیاء جدید باید در آن قرار گیرند مشخص میکند\&. اگر این مورد را حذف کنید، اشیاء جدید در موجودیتی به نام
.B CONTROL
قرار میگیرند، که قطعاً چیزی نیست که شما میخواهید\&.
.SH "همچنین ببینید (SEE ALSO)"
RFC 4171,
.BR isnsd (8),
.BR isns_config (5).
.SH "نویسندگان (AUTHORS)"
Olaf Kirch