| SSSD-KCM(8) | File Formats and Conventions | SSSD-KCM(8) |
نام (NAME)
sssd-kcm - مدیر حافظه پنهان کربروس در SSSD
توضیحات (DESCRIPTION)
این صفحه راهنما پیکربندی مدیر حافظه پنهان کربروس در SSSD (KCM) را شرح میدهد. KCM فرآیندی است که حافظههای پنهان اعتبارنامه کربروس را ذخیره، ردیابی و مدیریت میکند. این ابزار از پروژه کربروس Heimdal سرچشمه میگیرد، اگرچه کتابخانه کربروس MIT نیز پشتیبانی سمت کلاینت را از حافظه پنهان اعتبارنامه KCM ارائه میدهد (جزئیات بیشتر در زیر آمده است).
در ساختاری که حافظههای پنهان کربروس توسط KCM مدیریت میشوند، کتابخانه کربروس (که معمولاً از طریق یک برنامه مانند kinit(1) استفاده میشود) یک “کلاینت KCM” است و دیمن KCM به عنوان “سرور KCM” شناخته میشود. کلاینت و سرور از طریق یک سوکت یونیکس ارتباط برقرار میکنند.
سرور KCM مالک هر یک از حافظههای پنهان اعتبارنامه را ردیابی میکند و بررسی کنترل دسترسی را بر اساس UID و GID کلاینت KCM انجام میدهد.
حافظه پنهان اعتبارنامه KCM دارای چندین ویژگی جالب است:
این ویژگی به سیستم اجازه میدهد تا از یک حافظه پنهان اعتبارنامه آگاه از مجموعه استفاده کند، و با bind-mount کردن سوکت، حافظه پنهان اعتبارنامه را بین برخی از کانتینرها یا هیچکدام به اشتراک بگذارد.
مهلت زمانی پیشفرض عدم فعالیت کلاینت KCM برابر 5 دقیقه است که زمان بیشتری را برای تعامل کاربر با ابزارهای خط فرمان مانند kinit فراهم میسازد.
استفاده از حافظه پنهان اعتبارنامه KCM (USING THE KCM CREDENTIAL CACHE)
به منظور استفاده از حافظه پنهان اعتبارنامه KCM، باید به عنوان نوع اعتبارنامه پیشفرض در krb5.conf(5) انتخاب شود. نام حافظه پنهان اعتبارنامه باید فقط “KCM:” بدون هیچگونه بسط الگو باشد. برای مثال:
[libdefaults]
default_ccache_name = KCM:
سپس، مطمئن شوید که کتابخانههای کلاینت کربروس و سرور KCM روی مسیر سوکت یونیکس توافق دارند. به طور پیشفرض، هر دو از مسیر یکسان /var/run/.heim_org.h5l.kcm-socket استفاده میکنند. برای پیکربندی کتابخانه کربروس، گزینه “kcm_socket” آن را تغییر دهید که در صفحه راهنمای krb5.conf(5) توضیح داده شده است.
در نهایت، مطمئن شوید که سرور SSSD KCM قابل دسترسی است. سرویس KCM معمولاً با فعالسازی از طریق سوکت توسط systemd(1) راهاندازی میشود. بر خلاف سایر سرویسهای SSSD، نمیتوان آن را با افزودن رشته “kcm” به دستورالعمل “service” شروع کرد.
systemctl start sssd-kcm.socket systemctl enable sssd-kcm.socket
لطفاً توجه داشته باشید که توزیع شما ممکن است از قبل این واحدها را برای شما پیکربندی کرده باشد.
محل ذخیرهسازی حافظه پنهان اعتبارنامه (THE CREDENTIAL CACHE STORAGE)
حافظههای پنهان اعتبارنامه در یک پایگاهداده ذخیره میشوند، بسیار شبیه به نحوه ذخیرهسازی ورودیهای کاربر یا گروه توسط SSSD. این پایگاهداده معمولاً در مسیر “/var/lib/sss/secrets” قرار دارد.
دریافت گزارشهای اشکالزدایی (OBTAINING DEBUG LOGS)
سرویس sssd-kcm معمولاً توسط systemd(1) بر اساس سوکت فعال میشود. برای تولید لاگهای اشکالزدایی، قطعه زیر را مستقیماً به پرونده /etc/sssd/sssd.conf یا به عنوان یک قطعه پیکربندی به دایرکتوری /etc/sssd/conf.d/ اضافه کنید:
[kcm] debug_level = 10
سپس، سرویس sssd-kcm را مجدداً راهاندازی کنید:
systemctl restart sssd-kcm.service
در نهایت، هر سناریویی که برای شما کار نمیکند را اجرا نمایید. لاگهای KCM در مسیر /var/log/sssd/sssd_kcm.log تولید خواهند شد. توصیه میشود زمانی که دیگر نیازی به فعال بودن اشکالزدایی ندارید، لاگهای اشکالزدایی را غیرفعال کنید زیرا سرویس sssd-kcm میتواند حجم بسیار زیادی از اطلاعات اشکالزدایی را تولید کند.
لطفاً توجه داشته باشید که در حال حاضر، قطعات پیکربندی تنها در صورتی پردازش میشوند که پرونده پیکربندی اصلی در مسیر /etc/sssd/sssd.conf وجود داشته باشد.
تمدیدها (RENEWALS)
سرویس sssd-kcm را میتوان طوری پیکربندی کرد که برای TGTهای قابل تمدید ذخیرهشده در ccache متعلق به KCM، تلاش برای تمدید انجام دهد. تمدیدها تنها زمانی انجام میشوند که نیمی از طول عمر بلیت سپری شده باشد. تمدیدهای KCM زمانی پیکربندی میشوند که گزینههای زیر در بخش [kcm] تنظیم شده باشند:
tgt_renewal = true krb5_renew_interval = 60m
همچنین SSSD میتواند گزینههای krb5 برای تمدیدها را از یک دامنه موجود به ارث ببرد.
tgt_renewal = true tgt_renewal_inherit = domain-name
گزینههای krb5 زیر را میتوان در بخش [kcm] برای کنترل رفتار تمدید پیکربندی کرد، این گزینهها در زیر با جزئیات شرح داده شدهاند:
krb5_renew_interval krb5_renewable_lifetime krb5_lifetime krb5_validate krb5_canonicalize krb5_auth_timeout
گزینههای پیکربندی (CONFIGURATION OPTIONS)
سرویس KCM در بخش “kcm” از پرونده sssd.conf پیکربندی میشود. لطفاً توجه داشته باشید از آنجا که سرویس KCM معمولاً با سوکت فعال میشود، پس از تغییر گزینهها در بخش “kcm” پرونده sssd.conf، کافی است سرویس “sssd-kcm” را مجدداً راهاندازی کنید:
systemctl restart sssd-kcm.service
برای مرجع دقیق نحو، به بخش “FILE FORMAT” از صفحه راهنمای sssd.conf(5) مراجعه فرمایید.
گزینههای عمومی سرویس SSSD مانند “debug_level” یا “fd_limit” توسط سرویس kcm پذیرفته میشوند. لطفاً برای فهرست کامل به صفحه راهنمای sssd.conf(5) مراجعه کنید. علاوه بر این، برخی گزینههای ویژه KCM نیز وجود دارند.
socket_path (رشته)
پیشفرض: /var/run/.heim_org.h5l.kcm-socket
نکته: در پلتفرمهایی که systemd پشتیبانی میشود، مسیر سوکت با مسیر تعریفشده در پرونده واحد sssd-kcm.socket بازنویسی میشود.
max_ccaches (عدد صحیح)
پیشفرض: 0 (نامحدود، فقط سهمیه به ازای هر UID اعمال میشود)
max_uid_ccaches (عدد صحیح)
پیشفرض: 64
max_ccache_size (عدد صحیح)
پیشفرض: 65536
tgt_renewal (بولی)
پیشفرض: False (تمدید خودکار غیرفعال است)
tgt_renewal_inherit (رشته)
پیشفرض: NULL
krb5_auth_timeout (عدد صحیح)
پیشفرض: 6
krb5_validate (بولی)
پیشفرض: false (برای ارائهدهنده IPA و AD برابر true)
لطفاً توجه داشته باشید که اعتبارسنجی بلیت نخستین گام هنگام بررسی PAC است (برای جزئیات به 'pac_check' در صفحه راهنمای sssd.conf(5) مراجعه کنید). اگر اعتبارسنجی بلیت غیرفعال باشد، بررسیهای PAC نیز نادیده گرفته خواهند شد.
krb5_renewable_lifetime (رشته)
s برای ثانیه
m برای دقیقه
h برای ساعت
d برای روز.
اگر هیچ واحدی داده نشود، s فرض میشود.
نکته: ترکیب واحدها امکانپذیر نیست. برای تنظیم طول عمر قابل تمدید روی یک ساعت و نیم، به جای '1h30m' از '90m' استفاده کنید.
پیشفرض: تنظیم نشده، یعنی TGT قابل تمدید نیست
krb5_lifetime (رشته)
s برای ثانیه
m برای دقیقه
h برای ساعت
d برای روز.
اگر هیچ واحدی داده نشود، s فرض میشود.
نکته: ترکیب واحدها امکانپذیر نیست. برای تنظیم طول عمر روی یک ساعت و نیم لطفاً به جای '1h30m' از '90m' استفاده کنید.
پیشفرض: تنظیم نشده، یعنی طول عمر پیشفرض بلیت که روی KDC پیکربندی شده است.
krb5_renew_interval (رشته)
s برای ثانیه
m برای دقیقه
h برای ساعت
d برای روز.
اگر هیچ واحدی داده نشود، s فرض میشود.
نکته: ترکیب واحدها امکانپذیر نیست. برای تنظیم طول عمر قابل تمدید روی یک ساعت و نیم، به جای '1h30m' از '90m' استفاده کنید.
اگر این گزینه تنظیم نشود یا 0 باشد، تمدید خودکار غیرفعال خواهد بود.
پیشفرض: تنظیم نشده
krb5_canonicalize (بولی)
پیشفرض: false
همچنین ببینید (SEE ALSO)
نویسندگان (AUTHORS)
The SSSD upstream - https://github.com/SSSD/sssd
| 06/09/2026 | SSSD |