SSSD_KRB5_LOCATOR_PL(8) SSSD Manual pages SSSD_KRB5_LOCATOR_PL(8)

sssd_krb5_locator_plugin - افزونه مکان‌یاب کربروس (Kerberos)

افزونه مکان‌یاب کربروس sssd_krb5_locator_plugin توسط libkrb5 برای یافتن KDCها جهت یک قلمرو (realm) مشخص کربروس به کار می‌رود. برنامه SSSD چنین افزونه‌ای را فراهم می‌کند تا تمام کلاینت‌های کربروس روی یک سیستم را به سمت یک KDC واحد هدایت کند. به‌طور کلی نباید تفاوتی داشته باشد که یک فرآیند کلاینت با کدام KDC ارتباط برقرار می‌کند. اما مواردی وجود دارد، برای نمونه پس از تغییر گذرواژه، که همه KDCها در وضعیت یکسانی نیستند، زیرا داده‌های جدید ابتدا باید تکثیر شوند. برای جلوگیری از شکست‌های غیرمنتظره در احراز هویت و حتی احتمال قفل شدن حساب کاربری، بهتر است تا جای ممکن با یک KDC واحد ارتباط برقرار شود.

کتابخانه libkrb5 افزونه مکان‌یاب را در زیرپوشه libkrb5 از دایرکتوری افزونه‌های کربروس جستجو خواهد کرد؛ برای جزئیات به plugin_base_dir در krb5.conf(5) مراجعه کنید. این افزونه را فقط می‌توان با حذف فایل آن غیرفعال کرد. هیچ گزینه‌ای در پیکربندی کربروس برای غیرفعال کردن آن وجود ندارد. اما متغیر محیطی SSSD_KRB5_LOCATOR_DISABLE می‌تواند برای غیرفعال کردن افزونه برای دستورات مجزا استفاده شود. به عنوان روش جایگزین، گزینه krb5_use_kdcinfo=False در SSSD می‌تواند استفاده شود تا داده‌های مورد نیاز افزونه تولید نشوند. در این حالت افزونه همچنان فراخوانی می‌شود ولی هیچ داده‌ای در اختیار فراخواننده قرار نمی‌دهد تا libkrb5 بتواند به سایر روش‌های تعریف‌شده در krb5.conf بازگردد.

این افزونه اطلاعات مربوط به KDCهای یک قلمرو مشخص را از فایلی به نام kdcinfo.REALM می‌خواند. این فایل باید شامل یک یا چند نام DNS یا نشانی IP در قالب ده‌دهی نقطه‌دار IPv4 یا قالب هگزادسیمال IPv6 باشد. یک شماره پورت اختیاری می‌تواند با دو نقطه در انتها اضافه شود؛ در این حالت طبق معمول نشانی IPv6 باید درون کروشه قرار گیرد. ورودی‌های معتبر عبارتند از:

•kdc.example.com
•kdc.example.com:321
•1.2.3.4
•5.6.7.8:99
•2001:db8:85a3::8a2e:370:7334
•[2001:db8:85a3::8a2e:370:7334]:321

بخش auth-provider مربوط به krb5 در SSSD که توسط ارائه‌دهندگان IPA و AD نیز استفاده می‌شود، نشانی KDC فعلی یا کنترل‌کننده دامنه مورد استفاده SSSD را به این فایل اضافه می‌کند.

در محیط‌هایی با KDCهای فقط‌خواندنی و خواندنی-نوشتنی، که در آن‌ها انتظار می‌رود کلاینت‌ها برای عملیات عمومی از نمونه‌های فقط‌خواندنی و تنها برای تغییرات پیکربندی مانند تغییر گذرواژه از KDC خواندنی-نوشتنی استفاده کنند، از فایل kpasswdinfo.REALM نیز برای شناسایی KDCهای خواندنی-نوشتنی استفاده می‌شود. اگر این فایل برای قلمرو مشخص‌شده وجود داشته باشد، محتوای آن توسط افزونه برای پاسخ به درخواست‌های سرور kpasswd یا kadmin یا KDC اصلی ویژه MIT Kerberos استفاده خواهد شد. اگر نشانی شامل شماره پورت باشد، پورت پیش‌فرض KDC یعنی ۸۸ برای مورد اخیر به کار گرفته می‌شود.

همه پیاده‌سازی‌های کربروس از به‌کارگیری افزونه‌ها پشتیبانی نمی‌کنند. اگر sssd_krb5_locator_plugin روی سیستم شما در دسترس نیست، باید /etc/krb5.conf را ویرایش کنید تا تنظیمات کربروس شما اعمال شود.

اگر متغیر محیطی SSSD_KRB5_LOCATOR_DEBUG روی هر مقداری تنظیم شده باشد، پیام‌های اشکال‌زدایی به stderr فرستاده خواهند شد.

اگر متغیر محیطی SSSD_KRB5_LOCATOR_DISABLE روی هر مقداری تنظیم شده باشد، افزونه غیرفعال شده و تنها مقدار KRB5_PLUGIN_NO_HANDLE را به فراخواننده برمی‌گرداند.

اگر متغیر محیطی SSSD_KRB5_LOCATOR_IGNORE_DNS_FAILURES روی هر مقداری تنظیم شده باشد، افزونه تلاش خواهد کرد تا تمام نام‌های DNS در فایل kdcinfo را تحلیل (resolve) کند. به‌طور پیش‌فرض، افزونه با اولین شکست در تحلیل DNS، بلافاصله مقدار KRB5_PLUGIN_NO_HANDLE را به فراخواننده بازمی‌گرداند.

sssd(8), sssd.conf(5), sssd-ldap(5), sssd-ldap-attributes(5), sssd-krb5(5), sssd-simple(5), sssd-ipa(5), sssd-ad(5), sssd-idp(5), sssd-sudo(5), sssd-session-recording(5), sss_cache(8), sss_debuglevel(8), sss_obfuscate(8), sss_seed(8), sssd_krb5_locator_plugin(8), sss_ssh_authorizedkeys(1), sss_ssh_knownhosts(1), sssd-ifp(5), pam_sss(8). sss_rpcidmapd(5)

پروژه بالادستی SSSD - https://github.com/SSSD/sssd

06/09/2026 SSSD