KADMIN(1) MIT Kerberos KADMIN(1)

kadmin - برنامه مدیریت پایگاه داده Kerberos V5

kadmin [-O|-N] [-r realm] [-p principal] [-q query] [[-c cache_name]|[-k [-t keytab]]|-n] [-w password] [-s admin_server[:port]] [command args...]

kadmin.local [-r realm] [-p principal] [-q query] [-d dbname] [-e enc:salt ...] [-m] [-x db_args] [command args...]

دستورات kadmin و kadmin.local رابط‌های خط فرمانی برای سیستم مدیریت Kerberos V5 هستند. این دو ابزار عملکردهای تقریباً یکسانی ارائه می‌دهند؛ تفاوت در این است که kadmin.local مستقیماً به پایگاه داده KDC دسترسی پیدا می‌کند، در حالی که kadmin عملیات‌ها را با استفاده از kadmind انجام می‌دهد. مگر در مواردی که صراحتاً خلاف آن ذکر شود، در این صفحه راهنما از "kadmin" برای اشاره به هر دو نسخه استفاده می‌شود. kadmin امکان نگهداری پرینسیپال‌های کربروس، سیاست‌های گذرواژه و جدول‌های کلید خدمت (keytabs) را فراهم می‌آورد.

کلاینت از راه دور kadmin از کربروس برای احراز هویت در kadmind با استفاده از پرینسیپال خدمت kadmin/admin یا kadmin/ADMINHOST (که در آن ADMINHOST نام میزبان کاملاً واجد شرایطِ سرور مدیریت است) استفاده می‌کند. اگر حافظه پنهان گواهی‌ها (credentials cache) حاوی بلیتی برای یکی از این پرینسیپال‌ها باشد و گزینه -c credentials_cache مشخص شده باشد، از آن بلیت برای احراز هویت در kadmind استفاده می‌شود. در غیر این صورت، از گزینه‌های -p و -k برای مشخص کردن نام پرینسیپال کربروس کلاینت جهت احراز هویت استفاده می‌شود. پس از آنکه kadmin نام پرینسیپال را تعیین کرد، یک بلیت خدمت از KDC درخواست کرده و از آن بلیت خدمت برای احراز هویت در kadmind استفاده می‌نماید.

از آنجا که kadmin.local مستقیماً به پایگاه داده KDC دسترسی دارد، معمولاً باید مستقیماً بر روی KDC اصلی با مجوزهای کافی برای خواندن پایگاه داده KDC اجرا شود. اگر پایگاه داده KDC از ماژول پایگاه داده LDAP استفاده کند، kadmin.local را می‌توان بر روی هر میزبانی که به سرور LDAP دسترسی دارد اجرا کرد.

از realm به عنوان ریلم پیش‌فرض پایگاه داده استفاده می‌کند.
از principal برای احراز هویت استفاده می‌کند. در غیر این صورت، kadmin به ترتیب اولویت، عبارت /admin را به نام پرینسیپال اصلی ccache پیش‌فرض، مقدار متغیر محیطی USER یا نام کاربری به‌دست‌آمده با getpwuid الصاق خواهد کرد.
استفاده از یک keytab برای رمزگشایی پاسخ KDC به جای درخواست گذرواژه. در این حالت، پرینسیپال پیش‌فرض host/hostname خواهد بود. اگر هیچ keytab مشخصی با گزینه -t تعیین نشده باشد، از keytab پیش‌فرض استفاده خواهد شد.
از keytab برای رمزگشایی پاسخ KDC استفاده می‌کند. این گزینه تنها همراه با گزینه -k قابل استفاده است.
درخواست پردازش ناشناس (anonymous). دو نوع پرینسیپال ناشناس پشتیبانی می‌شود. برای کربروس کاملاً ناشناس، PKINIT را روی KDC پیکربندی کرده و pkinit_anchors را در پرونده krb5.conf کلاینت تنظیم کنید. سپس از گزینه -n با پرینسیپالی به فرم @REALM (یک نام پرینسیپال خالی که به دنبال آن علامت @ و نام ریلم می‌آید) استفاده نمایید. در صورت مجاز بودن توسط KDC، یک بلیت ناشناس بازگردانده خواهد شد. شکل دومی از بلیت‌های ناشناس نیز پشتیبانی می‌شود؛ این بلیت‌های افشاکننده ریلم، هویت کلاینت را پنهان می‌کنند اما ریلم کلاینت را پنهان نمی‌سازند. برای این حالت، از kinit -n با یک نام پرینسیپال معمولی استفاده کنید. در صورت پشتیبانی توسط KDC، پرینسیپال (اما نه ریلم) با پرینسیپال ناشناس جایگزین خواهد شد. از نگارش ۱.۸، KDC کربروس MIT تنها از عملیات کاملاً ناشناس پشتیبانی می‌کند.
از credentials_cache به عنوان حافظه پنهان گواهی‌ها استفاده می‌کند. این حافظه پنهان باید شامل یک بلیت خدمت برای خدمت kadmin/admin یا kadmin/ADMINHOST (که در آن ADMINHOST نام میزبان کاملاً واجد شرایط سرور مدیریت است) باشد؛ این بلیت را می‌توان با برنامه kinit به دست آورد. اگر این گزینه مشخص نشود، kadmin یک بلیت خدمت جدید از KDC درخواست کرده و آن را در ccache موقت خود ذخیره می‌کند.
از password به جای درخواست آن از کاربر استفاده می‌کند. از این گزینه با احتیاط استفاده کنید، زیرا ممکن است گذرواژه را از طریق فهرست پردازش‌ها در دسترس سایر کاربران سیستم قرار دهد.
پرسمان مشخص‌شده را اجرا کرده و سپس خارج می‌شود.
نام پایگاه داده KDC را مشخص می‌کند. این گزینه برای ماژول پایگاه داده LDAP اعمال نمی‌شود.
سرور مدیریتی را که kadmin باید با آن ارتباط برقرار کند مشخص می‌سازد.
در صورت استفاده از kadmin.local، به جای خواندن گذرواژه اصلی پایگاه داده از پرونده stash، گذرواژه را از کاربر درخواست می‌کند.
فهرست keysalt مورد استفاده برای هر کلید جدید ایجادشده را تعیین می‌کند. برای مشاهده فهرستی از مقادیر ممکن، به Keysalt lists در kdc.conf مراجعه کنید.
اجبار به استفاده از شیوه احراز هویت قدیمی AUTH_GSSAPI.
جلوگیری از عقب‌گرد به شیوه احراز هویت AUTH_GSSAPI.
آرگومان‌های ویژه پایگاه داده را مشخص می‌کند. گزینه‌های پشتیبانی‌شده را در بخش بعدی مشاهده نمایید.

از نگارش ۱.۱۴ به بعد، اگر پس از گزینه‌ها، هرگونه آرگومان خط فرمانی باقی بماند، با آن‌ها به عنوان یک پرسمان واحد جهت اجرا برخورد خواهد شد. این حالت عملکردی برای اسکریپت‌ها در نظر گرفته شده است و از چندین جنبه با حالت تعاملی تفاوت دارد:

  • آرگومان‌های پرسمان توسط پوسته تفکیک می‌شوند، نه توسط kadmin.
  • پیام‌های اطلاعاتی و هشداری نمایش داده نمی‌شوند. پیام‌های خطا و خروجی پرسمان (برای نمونه برای get_principal) همچنان نمایش داده خواهند شد.
  • پرسش‌های تایید غیرفعال هستند (گویی گزینه -force داده شده است). پرسش‌های ورود گذرواژه بر حسب نیاز همچنان مطرح خواهند شد.
  • در صورت ناموفق بودن پرسمان، وضعیت خروج (exit status) غیرصفر خواهد بود.

گزینه -q این تفاوت‌های رفتاری را ندارد؛ پرسمان به‌گونه‌ای پردازش می‌شود که گویی به صورت تعاملی وارد شده است. گزینه -q را نمی‌توان در ترکیب با پرسمانی در آرگومان‌های باقی‌مانده استفاده کرد.

از گزینه‌های پایگاه داده می‌توان برای بازنویسی مقادیر پیش‌فرض ویژه پایگاه داده استفاده کرد. گزینه‌های پشتیبانی‌شده برای ماژول DB2 عبارتند از:

نام پرونده پایه پایگاه داده DB2 را مشخص می‌کند.
باعث می‌شود عملیات‌های تکرار، قفل را در تمام طول عملیات نگه دارند، به جای اینکه هنگام مدیریت هر پرینسیپال قفل را موقتاً آزاد کنند. این رفتار پیش‌فرض است، اما این گزینه برای امکان بازنویسی تنظیمات [dbmodules] از خط فرمان وجود دارد. نخستین بار در نگارش ۱.۱۳ معرفی شد.
باعث می‌شود عملیات‌های تکرار، قفل پایگاه داده را برای هر پرینسیپال باز کنند، به جای اینکه قفل را برای تمام طول عملیات نگه دارند. نخستین بار در نگارش ۱.۱۳ معرفی شد.

گزینه‌های پشتیبانی‌شده برای ماژول LDAP عبارتند از:

سرور LDAP را برای اتصال از طریق یک URI مربوط به LDAP مشخص می‌کند.
مقدار DN مورد استفاده برای متصل شدن (bind) به سرور LDAP را مشخص می‌کند.
گذرواژه یا راز SASL مورد استفاده برای متصل شدن به سرور LDAP را مشخص می‌کند. استفاده از این گزینه ممکن است گذرواژه را از طریق فهرست پردازش‌ها در معرض دید سایر کاربران سیستم قرار دهد؛ برای جلوگیری از این موضوع، در عوض گذرواژه را با استفاده از دستور stashsrvpw در kdb5_ldap_util ذخیره (stash) کنید.
سازوکار SASL مورد استفاده برای اتصال به سرور LDAP را مشخص می‌کند. در صورت استفاده از یک سازوکار SASL، مقدار bind DN نادیده گرفته می‌شود. جدید در نگارش ۱.۱۳.
نام احراز هویت مورد استفاده هنگام اتصال به سرور LDAP با یک سازوکار SASL را در صورتی که سازوکار به آن نیاز داشته باشد مشخص می‌کند. جدید در نگارش ۱.۱۳.
نام مجازشماری (authorization) مورد استفاده هنگام اتصال به سرور LDAP با یک سازوکار SASL را مشخص می‌کند. جدید در نگارش ۱.۱۳.
ریلم مورد استفاده هنگام اتصال به سرور LDAP با یک سازوکار SASL را در صورتی که سازوکار از آن استفاده کند مشخص می‌کند. جدید در نگارش ۱.۱۳.
سطح اشکال‌زدایی کتابخانه کلاینت OpenLDAP را تعیین می‌کند. level یک عدد صحیح است که توسط کتابخانه تفسیر می‌شود. پیام‌های اشکال‌زدایی در خروجی خطای استاندارد چاپ می‌شوند. جدید در نگارش ۱.۱۲.

هنگام استفاده از کلاینت از راه دور، دستورات در دسترس ممکن است بر اساس امتیازات مشخص‌شده در پرونده kadm5.acl در سرور مدیریت محدود باشند.

add_principal [options] newprinc

پرینسیپال newprinc را ایجاد می‌کند و دو بار برای گذرواژه درخواست می‌نماید. اگر هیچ سیاست گذرواژه‌ای با گزینه -policy مشخص نشده باشد، سیاست با نام default در صورت وجود به پرینسیپال اختصاص داده می‌شود. با این حال، ایجاد سیاستی با نام default به طور خودکار این سیاست را به پرینسیپال‌های از پیش موجود اختصاص نمی‌دهد. این انتساب سیاست را می‌توان با گزینه -clearpolicy لغو کرد.

این دستور نیازمند امتیاز add است.

نام‌های مستعار: addprinc، ank

گزینه‌ها:

(رشته getdate time) تاریخ انقضای پرینسیپال.
(رشته getdate time) تاریخ انقضای گذرواژه.
(مدت زمان یا رشته getdate time) حداکثر عمر بلیت برای پرینسیپال.
(مدت زمان یا رشته getdate time) حداکثر عمر قابل تمدید بلیت‌ها برای پرینسیپال.
شماره نسخه اولیه کلید.
سیاست گذرواژه مورد استفاده توسط این پرینسیپال. در صورت عدم تعیین، سیاست default در صورت وجود استفاده می‌شود (مگر اینکه -clearpolicy مشخص شده باشد).
از انتساب هرگونه سیاست در زمانی که -policy مشخص نشده باشد جلوگیری می‌کند.
{-|+}allow_postdated
گزینه -allow_postdated این پرینسیپال را از دریافت بلیت‌های پس‌تاریخ منع می‌کند. گزینه +allow_postdated این پرچم را پاک می‌کند.
{-|+}allow_forwardable
گزینه -allow_forwardable این پرینسیپال را از دریافت بلیت‌های قابل انتقال منع می‌کند. گزینه +allow_forwardable این پرچم را پاک می‌کند.
{-|+}allow_renewable
گزینه -allow_renewable این پرینسیپال را از دریافت بلیت‌های قابل تمدید منع می‌کند. گزینه +allow_renewable این پرچم را پاک می‌کند.
{-|+}allow_proxiable
گزینه -allow_proxiable این پرینسیپال را از دریافت بلیت‌های پروکسی‌پذیر منع می‌کند. گزینه +allow_proxiable این پرچم را پاک می‌کند.
{-|+}allow_dup_skey
گزینه -allow_dup_skey احراز هویت کاربر به کاربر را برای این پرینسیپال از طریق منع دیگران از دریافت بلیت خدمتی که با کلید نشست TGT این پرینسیپال رمزنگاری شده باشد، غیرفعال می‌کند. گزینه +allow_dup_skey این پرچم را پاک می‌کند.
{-|+}requires_preauth
گزینه +requires_preauth این پرینسیپال را ملزم به پیش‌احراز هویت قبل از اجازه یافتن برای kinit می‌کند. گزینه -requires_preauth این پرچم را پاک می‌کند. هنگامی که +requires_preauth روی یک پرینسیپال خدمت تنظیم شود، KDC تنها در صورتی بلیت‌های خدمت را برای آن پرینسیپال خدمت صادر می‌کند که احراز هویت اولیه کلاینت با استفاده از پیش‌احراز هویت انجام شده باشد.
{-|+}requires_hwauth
گزینه +requires_hwauth این پرینسیپال را ملزم می‌کند تا پیش از مجاز بودن برای kinit، با استفاده از یک دستگاه سخت‌افزاری پیش‌احراز هویت را انجام دهد. گزینه -requires_hwauth این پرچم را پاک می‌کند. هنگامی که +requires_hwauth روی یک پرینسیپال خدمت تنظیم شود، KDC تنها در صورتی بلیت‌های خدمت را برای آن پرینسیپال صادر می‌کند که احراز هویت اولیه کلاینت با استفاده از دستگاه سخت‌افزاری برای پیش‌احراز هویت انجام شده باشد.
{-|+}ok_as_delegate
گزینه +ok_as_delegate پرچم okay as delegate را روی بلیت‌های صادرشده با این پرینسیپال به عنوان خدمت تنظیم می‌کند. کلاینت‌ها می‌توانند از این پرچم به عنوان راهنمایی استفاده کنند که هنگام احراز هویت در خدمت، باید گواهی‌ها تفویض شوند. گزینه -ok_as_delegate این پرچم را پاک می‌کند.
{-|+}allow_svr
گزینه -allow_svr صدور بلیت‌های خدمت را برای این پرینسیپال ممنوع می‌کند. در نگارش ۱.۱۷ و پس از آن، بلیت‌های خدمت کاربر به کاربر همچنان مجاز هستند مگر اینکه پرچم -allow_dup_skey نیز تنظیم شده باشد. گزینه +allow_svr این پرچم را پاک می‌کند.
{-|+}allow_tgs_req
گزینه -allow_tgs_req مشخص می‌کند که درخواست خدمت صدور بلیت (TGS) برای یک بلیت خدمت برای این پرینسیپال مجاز نیست. گزینه +allow_tgs_req این پرچم را پاک می‌کند.
{-|+}allow_tix
گزینه -allow_tix صدور هرگونه بلیت را برای این پرینسیپال ممنوع می‌سازد. گزینه +allow_tix این پرچم را پاک می‌کند.
{-|+}needchange
گزینه +needchange تغییر گذرواژه را در احراز هویت اولیه بعدی به این پرینسیپال اجباری می‌کند. گزینه -needchange این پرچم را پاک می‌کند.
{-|+}password_changing_service
گزینه +password_changing_service این پرینسیپال را به عنوان یک پرینسیپال خدمت تغییر گذرواژه علامت‌گذاری می‌کند.
{-|+}ok_to_auth_as_delegate
گزینه +ok_to_auth_as_delegate به این پرینسیپال امکان می‌دهد تا بلیت‌های قابل انتقال به خود را از کاربران دلخواه جهت استفاده با تفویض مقید (constrained delegation) دریافت کند.
{-|+}no_auth_data_required
گزینه +no_auth_data_required از اضافه شدن داده‌های PAC یا AD-SIGNEDPATH به بلیت‌های خدمت برای این پرینسیپال جلوگیری می‌کند.
{-|+}lockdown_keys
گزینه +lockdown_keys از خروج کلیدهای این پرینسیپال از KDC از طریق kadmind جلوگیری می‌کند. عملیات‌های chpass و extract برای پرینسیپالی با این ویژگی رد می‌شوند. عملیات chrand مجاز است، اما کلیدهای جدید را بازنمی‌گرداند. همچنین عملیات‌های delete و rename در صورت تنظیم بودن این ویژگی رد می‌شوند تا از جایگزین شدن پرینسیپال‌هایی مانند krbtgt/* یا kadmin/* با پرینسیپال‌های جدید بدون این ویژگی توسط یک مدیر مخرب جلوگیری به عمل آید. این ویژگی را می‌توان از طریق پروتکل شبکه تنظیم کرد، اما حذف آن تنها با استفاده از kadmin.local امکان‌پذیر است.
کلید پرینسیپال را به یک مقدار تصادفی تنظیم می‌کند.
باعث می‌شود که پرینسیپال بدون هیچ کلیدی ایجاد شود. جدید در نگارش ۱.۱۲.
گذرواژه پرینسیپال را به رشته مشخص‌شده تنظیم می‌کند و برای گذرواژه درخواستی مطرح نمی‌سازد. توجه: استفاده از این گزینه در اسکریپت شل ممکن است گذرواژه را از طریق فهرست پردازش‌ها در معرض دید سایر کاربران سیستم قرار دهد.
از فهرست keysalt مشخص‌شده برای تنظیم کلیدهای پرینسیپال استفاده می‌کند. برای مشاهده فهرستی از مقادیر ممکن، به Keysalt lists در kdc.conf مراجعه فرمایید.
گزینه‌های ویژه پایگاه داده را نشان می‌دهد. گزینه‌های مربوط به ماژول پایگاه داده LDAP عبارتند از:
شیء LDAP را که حاوی پرینسیپال کربروس در حال ایجاد خواهد بود مشخص می‌کند.
شیء LDAP را که شیء پرینسیپال کربروس تازه ایجادشده به آن اشاره خواهد کرد مشخص می‌کند.
شیء ظرفی را که پرینسیپال کربروس قرار است در زیر آن ایجاد شود مشخص می‌کند.
یک سیاست بلیت را به پرینسیپال کربروس پیوند می‌دهد.

نکته:

  • گزینه‌های containerdn و linkdn را نمی‌توان همراه با گزینه dn مشخص نمود.
  • اگر هنگام افزودن پرینسیپال، گزینه‌های dn یا containerdn تعیین نشوند، پرینسیپال‌ها در زیر ظرف پرینسیپال پیکربندی‌شده در ریلم یا ظرف ریلم ایجاد می‌شوند.
  • مقادیر dn و containerdn باید در زیردرخت‌ها یا ظرف پرینسیپال پیکربندی‌شده در ریلم قرار داشته باشند.

مثال:

kadmin: addprinc jennifer
No policy specified for "jennifer@ATHENA.MIT.EDU";
defaulting to no policy.
Enter password for principal jennifer@ATHENA.MIT.EDU:
Re-enter password for principal jennifer@ATHENA.MIT.EDU:
Principal "jennifer@ATHENA.MIT.EDU" created.
kadmin:

modify_principal [options] principal

پرینسیپال مشخص‌شده را تغییر می‌دهد و فیلدها را بر اساس آنچه مشخص شده اصلاح می‌کند. گزینه‌های مربوط به add_principal به استثنای گزینه‌های -randkey، -pw و -e برای این دستور نیز اعمال می‌شوند. علاوه بر این، گزینه -clearpolicy سیاست فعلی یک پرینسیپال را پاک می‌کند.

این دستور نیازمند امتیاز modify است.

نام مستعار: modprinc

گزینه‌ها (علاوه بر گزینه‌های addprinc):

-unlock
یک پرینسیپال قفل‌شده (پرینسیپالی که تلاش‌های ناموفق زیادی برای احراز هویت بدون فاصله زمانی کافی بین آن‌ها طبق سیاست گذرواژه‌اش دریافت کرده است) را باز می‌کند تا بتواند با موفقیت احراز هویت شود.

rename_principal [-force] old_principal new_principal

نام old_principal مشخص‌شده را به new_principal تغییر می‌دهد. این دستور پیش از اقدام درخواست تایید می‌کند، مگر اینکه گزینه -force داده شده باشد.

این دستور نیازمند امتیازات add و delete است.

نام مستعار: renprinc

add_alias alias_princ target_princ

یک نام مستعار alias_princ ایجاد می‌کند که به target_princ اشاره دارد. نام‌های مستعار ممکن است تا عمق ۱۰ زنجیره‌ای شوند (به این معنی که target_princ خود می‌تواند یک نام مستعار باشد).

این دستور نیازمند امتیاز add برای alias_princ و امتیاز modify برای target_princ است.

(جدید در نگارش ۱.۲۲.)

نام‌های مستعار: alias

delete_principal [-force] principal

پرینسیپال یا نام مستعار principal مشخص‌شده را از پایگاه داده حذف می‌کند. این دستور برای حذف تایید می‌خواهد، مگر اینکه گزینه -force داده شده باشد.

این دستور نیازمند امتیاز delete است.

نام مستعار: delprinc

change_password [options] principal

گذرواژه principal را تغییر می‌دهد. در صورتی که هیچ‌یک از گزینه‌های -randkey یا -pw مشخص نشده باشد، گذرواژه جدید را درخواست می‌کند.

این دستور نیازمند امتیاز changepw است، یا اینکه پرینسیپال در حال اجرای برنامه همان پرینسیپالی باشد که گذرواژه‌اش تغییر می‌کند.

نام مستعار: cpw

گزینه‌های زیر در دسترس هستند:

کلید پرینسیپال را به یک مقدار تصادفی تنظیم می‌کند.
گذرواژه را به رشته مشخص‌شده تنظیم می‌کند. استفاده از این گزینه در یک اسکریپت ممکن است گذرواژه را از طریق فهرست پردازش‌ها در دسترس سایر کاربران سیستم قرار دهد.
از فهرست keysalt مشخص‌شده برای تنظیم کلیدهای پرینسیپال استفاده می‌کند. برای مشاهده فهرستی از مقادیر ممکن، به Keysalt lists در kdc.conf مراجعه کنید.
کلیدهای موجود را در پایگاه داده نگه می‌دارد. این پرچم معمولاً به جز شاید برای پرینسیپال‌های krbtgt ضروری نیست.

مثال:

kadmin: cpw systest
Enter password for principal systest@BLEEP.COM:
Re-enter password for principal systest@BLEEP.COM:
Password for systest@BLEEP.COM changed.
kadmin:

purgekeys [-all|-keepkvno oldest_kvno_to_keep] principal

کلیدهای قدیمی قبلاً نگه‌داشته‌شده (برای نمونه از change_password -keepold) را از principal پاکسازی می‌کند. اگر -keepkvno مشخص شده باشد، تنها کلیدهایی را که kvno آن‌ها کمتر از oldest_kvno_to_keep است پاکسازی می‌کند. اگر -all مشخص شده باشد، تمام کلیدها پاکسازی می‌شوند. گزینه -all جدید در نگارش ۱.۱۲ است.

این دستور نیازمند امتیاز modify است.

get_principal [-terse] principal

ویژگی‌های پرینسیپال را دریافت می‌کند. با گزینه -terse، فیلدها به صورت رشته‌های درون گیومه و جداشده با تب نمایش داده می‌شوند.

این دستور نیازمند امتیاز inquire است، یا اینکه پرینسیپال اجراکننده برنامه با پرینسیپال فهرست‌شده یکسان باشد.

نام مستعار: getprinc

مثال‌ها:

kadmin: getprinc tlyu/admin
Principal: tlyu/admin@BLEEP.COM
Expiration date: [never]
Last password change: Mon Aug 12 14:16:47 EDT 1996
Password expiration date: [never]
Maximum ticket life: 0 days 10:00:00
Maximum renewable life: 7 days 00:00:00
Last modified: Mon Aug 12 14:16:47 EDT 1996 (bjaspan/admin@BLEEP.COM)
Last successful authentication: [never]
Last failed authentication: [never]
Failed password attempts: 0
Number of keys: 1
Key: vno 1, aes256-cts-hmac-sha384-192
MKey: vno 1
Attributes:
Policy: [none]
kadmin: getprinc -terse systest
systest@BLEEP.COM   3    86400     604800    1
785926535 753241234 785900000
tlyu/admin@BLEEP.COM     786100034 0    0
kadmin:

list_principals [expression]

تمام یا برخی از نام‌های پرینسیپال را بازیابی می‌کند. expression یک عبارت glob به سبک شل است که می‌تواند شامل نویسه‌های عام ?، * و [] باشد. تمام نام‌های پرینسیپال منطبق با عبارت چاپ می‌شوند. در صورتی که هیچ عبارتی ارائه نشود، تمام نام‌های پرینسیپال چاپ خواهند شد. اگر عبارت حاوی نویسه @ نباشد، یک نویسه @ به همراه ریلم محلی به انتهای عبارت الصاق می‌شود.

این دستور نیازمند امتیاز list است.

نام‌های مستعار: listprincs، get_principals، getprincs

مثال:

kadmin:  listprincs test*
test3@SECURE-TEST.OV.COM
test2@SECURE-TEST.OV.COM
test1@SECURE-TEST.OV.COM
testuser@SECURE-TEST.OV.COM
kadmin:

get_strings principal

ویژگی‌های رشته‌ای را روی principal نمایش می‌دهد.

این دستور نیازمند امتیاز inquire است.

نام مستعار: getstrs

set_string principal name value

یک ویژگی رشته‌ای را روی principal تنظیم می‌کند. ویژگی‌های رشته‌ای برای ارائه پیکربندی‌های مختص هر پرینسیپال به KDC و برخی ماژول‌های افزونه KDC استفاده می‌شوند. نام‌های ویژگی رشته‌ای زیر توسط KDC شناخته می‌شوند:

یک نشانگر احراز هویت را مشخص می‌کند که برای احراز هویت در پرینسیپال به عنوان یک خدمت الزامی است. می‌توان چندین نشانگر را مشخص کرد که با فاصله از هم جدا می‌شوند؛ در این حالت هر یک از نشانگرهای مشخص‌شده پذیرفته خواهد شد. (جدید در نگارش ۱.۱۴.)
انواع رمزنگاری پشتیبانی‌شده برای کلیدهای نشست را هنگامی که احراز هویت در پرینسیپال به عنوان یک سرور انجام می‌شود، مشخص می‌کند. برای فهرستی از مقادیر پذیرفته‌شده، به Encryption types در kdc.conf مراجعه کنید.
پیش‌احراز هویت گذرواژه‌های یک‌بارمصرف (OTP) را برای یک principal کلاینت فعال می‌کند. مقدار value یک رشته JSON است که آرایه‌ای از اشیاء را نشان می‌دهد که هر کدام دارای فیلدهای اختیاری type و username هستند.
یک عبارت تطابق را مشخص می‌کند که ویژگی‌های گواهی مورد نیاز برای گواهی کلاینت استفاده‌شده توسط پرینسیپال در طول احراز هویت PKINIT را تعریف می‌نماید. عبارت تطابق در همان قالبی است که توسط گزینه pkinit_cert_match در krb5.conf استفاده می‌شود. (جدید در نگارش ۱.۱۶.)
نوع رمزنگاری بافرهای چکسام PAC KDC را برای بلیت‌های صادرشده برای این سرور، از طریق مشتق کردن کلید از کلید krbtgt محلی در صورتی که از نوع رمزنگاری متفاوتی باشد، به نوع رمزنگاری مشخص‌شده اجبار می‌کند. ممکن است لازم باشد هنگام استفاده از کلیدهای aes-sha2 در مدخل krbtgt محلی، این مقدار روی "aes256-sha1" در مدخل کراس‌ریلم krbtgt برای ریلم اکتیو دایرکتوری تنظیم شود.

این دستور نیازمند امتیاز modify است.

نام مستعار: setstr

مثال:

set_string host/foo.mit.edu session_enctypes aes128-cts
set_string user@FOO.COM otp "[{""type"":""hotp"",""username"":""al""}]"

del_string principal key

یک ویژگی رشته‌ای را از principal حذف می‌کند.

این دستور نیازمند امتیاز delete است.

نام مستعار: delstr

add_policy [options] policy

یک سیاست گذرواژه با نام policy را به پایگاه داده اضافه می‌کند.

این دستور نیازمند امتیاز add است.

نام مستعار: addpol

گزینه‌های زیر در دسترس هستند:

(مدت زمان یا رشته getdate time) حداکثر طول عمر یک گذرواژه را تعیین می‌کند.
(مدت زمان یا رشته getdate time) حداقل طول عمر یک گذرواژه را تعیین می‌کند.
حداقل طول یک گذرواژه را تعیین می‌کند.
حداقل تعداد کلاس‌های نویسه‌ای مورد نیاز در یک گذرواژه را تعیین می‌کند. پنج کلاس نویسه‌ای عبارتند از: حروف کوچک، حروف بزرگ، اعداد، علائم نگارشی، و نویسه‌های فاصله/غیرقابل‌چاپ.
تعداد کلیدهای گذشته نگه‌داشته‌شده برای یک پرینسیپال را تعیین می‌کند. این گزینه با ماژول پایگاه داده LDAP KDC پشتیبانی نمی‌شود.
تعداد شکست‌های احراز هویت قبل از قفل شدن پرینسیپال را مشخص می‌کند. شکست‌های احراز هویت تنها برای پرینسیپال‌هایی که نیازمند پیش‌احراز هویت هستند پیگیری می‌شوند. شمارنده تلاش‌های ناموفق پس از یک تلاش موفق احراز هویت به ۰ بازنشانی می‌شود. مقدار ۰ برای maxnumber (پیش‌فرض) قفل شدن را غیرفعال می‌کند.
(مدت زمان یا رشته getdate time) زمان مجاز میان شکست‌های احراز هویت را تعیین می‌کند. اگر یک شکست احراز هویت پس از سپری شدن failuretime از شکست قبلی رخ دهد، تعداد شکست‌های احراز هویت به ۱ بازنشانی می‌شود. مقدار ۰ برای failuretime (پیش‌فرض) به معنای نامحدود (تا ابد) است.
(مدت زمان یا رشته getdate time) مدت زمانی را که در صورت رخ دادن شکست‌های احراز هویت بیش از حد بدون سپری شدن بازه زمانی مشخص‌شده، پرینسیپال از احراز هویت محروم (قفل) می‌شود، تعیین می‌کند. مدت زمان ۰ (پیش‌فرض) به این معناست که پرینسیپال تا زمانی که توسط مدیر با دستور modprinc -unlock باز نشود، قفل باقی می‌ماند.
چندتایی‌های کلید/نمک پشتیبانی‌شده برای کلیدهای بلندمدت هنگام تنظیم یا تغییر گذرواژه/کلیدهای یک پرینسیپال را مشخص می‌کند. برای مشاهده فهرستی از مقادیر پذیرفته‌شده، به Keysalt lists در kdc.conf مراجعه کنید، اما توجه داشته باشید که چندتایی‌های کلید/نمک باید تنها با کاما (',') از یکدیگر جدا شوند. برای پاک کردن سیاست کلید/نمک مجاز، از مقدار '-' استفاده کنید.

مثال:

kadmin: add_policy -maxlife "2 days" -minlength 5 guests
kadmin:

modify_policy [options] policy

سیاست گذرواژه با نام policy را اصلاح می‌کند. گزینه‌ها همان‌طور که برای add_policy شرح داده شد هستند.

این دستور نیازمند امتیاز modify است.

نام مستعار: modpol

delete_policy [-force] policy

سیاست گذرواژه با نام policy را حذف می‌کند. پیش از حذف، تاییدیه درخواست می‌شود. اگر این سیاست توسط هر پرینسیپالی در حال استفاده باشد، دستور با شکست مواجه می‌شود.

این دستور نیازمند امتیاز delete است.

نام مستعار: delpol

مثال:

kadmin: del_policy guests
Are you sure you want to delete the policy "guests"?
(yes/no): yes
kadmin:

get_policy [ -terse ] policy

مقادیر سیاست گذرواژه با نام policy را نمایش می‌دهد. با پرچم -terse، فیلدها را به عنوان رشته‌های درون گیومه جداشده با تب در خروجی نمایش می‌دهد.

این دستور نیازمند امتیاز inquire است.

نام مستعار: getpol

مثال‌ها:

kadmin: get_policy admin
Policy: admin
Maximum password life: 180 days 00:00:00
Minimum password life: 00:00:00
Minimum password length: 6
Minimum number of password character classes: 2
Number of old keys kept: 5
Reference count: 17
kadmin: get_policy -terse admin
admin     15552000  0    6    2    5    17
kadmin:

مقدار "Reference count" تعداد پرینسیپال‌هایی است که از آن سیاست استفاده می‌کنند. در ماژول پایگاه داده LDAP KDC، فیلد Reference count معنایی ندارد.

list_policies [expression]

تمام یا برخی از نام‌های سیاست‌ها را بازیابی می‌کند. expression یک عبارت glob به سبک شل است که می‌تواند شامل نویسه‌های عام ?، * و [] باشد. تمام نام‌های سیاست منطبق با عبارت چاپ می‌شوند. اگر عبارتی ارائه نشود، تمام نام‌های سیاست‌های موجود چاپ می‌شوند.

این دستور نیازمند امتیاز list است.

نام‌های مستعار: listpols، get_policies، getpols.

مثال‌ها:

kadmin:  listpols
test-pol
dict-only
once-a-min
test-pol-nopw
kadmin:  listpols t*
test-pol
test-pol-nopw
kadmin:

ktadd [options] principal
ktadd [options] -glob princ-exp

یک principal، یا تمام پرینسیپال‌های منطبق با princ-exp را به یک پرونده keytab اضافه می‌کند. کلیدهای هر پرینسیپال در طول این فرآیند تصادفی‌سازی می‌شوند. قوانین مربوط به princ-exp در دستور list_principals شرح داده شده است.

این دستور نیازمند امتیازات inquire و changepw است. با شکل -glob، همچنین نیازمند امتیاز list است.

گزینه‌ها عبارتند از:

استفاده از keytab به عنوان پرونده keytab. در غیر این صورت، از keytab پیش‌فرض استفاده می‌شود.
از فهرست keysalt مشخص‌شده برای تنظیم کلیدهای جدید پرینسیپال استفاده می‌کند. برای مشاهده فهرستی از مقادیر ممکن، به Keysalt lists در kdc.conf مراجعه فرمایید.
نمایش اطلاعات با تفصیل کمتر.
کلیدها را تصادفی نمی‌کند. کلیدها و شماره نسخه‌های آن‌ها دست‌نخورده باقی می‌مانند. این گزینه را نمی‌توان در ترکیب با گزینه -e مشخص نمود.

یک مدخل برای هر یک از انواع رمزنگاری یکتای پرینسیپال اضافه می‌شود، و کلیدهای چندگانه با نوع رمزنگاری یکسان اما انواع نمک متفاوت نادیده گرفته می‌شوند.

نام مستعار: xst

مثال:

kadmin: ktadd -k /tmp/foo-new-keytab host/foo.mit.edu
Entry for principal host/foo.mit.edu@ATHENA.MIT.EDU with kvno 3,
     encryption type aes256-cts-hmac-sha1-96 added to keytab
     FILE:/tmp/foo-new-keytab
kadmin:

ktremove [options] principal [kvno | all | old]

مدخل‌های مربوط به principal مشخص‌شده را از یک keytab حذف می‌کند. نیازمند هیچ مجوزی نیست، زیرا این کار نیازی به دسترسی به پایگاه داده ندارد.

اگر رشته "all" مشخص شود، تمام مدخل‌های مربوط به آن پرینسیپال حذف می‌شوند؛ اگر رشته "old" مشخص شود، تمام مدخل‌های مربوط به آن پرینسیپال به جز مواردی که بالاترین kvno را دارند حذف می‌گردند. در غیر این صورت، مقدار مشخص‌شده به عنوان یک عدد صحیح تحلیل شده و تمام مدخل‌هایی که kvno آن‌ها با آن عدد صحیح مطابقت دارد حذف می‌شوند.

گزینه‌ها عبارتند از:

استفاده از keytab به عنوان پرونده keytab. در غیر این صورت، از keytab پیش‌فرض استفاده می‌شود.
نمایش اطلاعات با تفصیل کمتر.

نام مستعار: ktrem

مثال:

kadmin: ktremove kadmin/admin all
Entry for principal kadmin/admin with kvno 3 removed from keytab
     FILE:/etc/krb5.keytab
kadmin:

پایگاه داده را به طور انحصاری قفل می‌کند. با احتیاط فراوان استفاده شود! این دستور تنها با ماژول پایگاه داده DB2 KDC کار می‌کند.

قفل انحصاری پایگاه داده را آزاد می‌کند.

درخواست‌های در دسترس برای kadmin را فهرست می‌کند.

نام‌های مستعار: lr، ?

خروج از برنامه. اگر پایگاه داده قفل شده باشد، قفل آزاد می‌شود.

نام‌های مستعار: exit، q

برنامه kadmin در اصل توسط Tom Yu در MIT به عنوان رابطی برای برنامه مدیریت کربروس OpenVision نوشته شد.

برای مشاهده توضیحات متغیرهای محیطی کربروس، به kerberos مراجعه کنید.

kpasswd، kadmind، kerberos

MIT

1985-2026, MIT

1.22.2