SSSD-LDAP(5) File Formats and Conventions SSSD-LDAP(5)

sssd-ldap - ارائه‌دهنده LDAP برای SSSD

این صفحه راهنما پیکربندی دامنه‌های LDAP را برای sssd(8) شرح می‌دهد. برای اطلاعات تفصیلی درباره ساختار دستوری، به بخش “FILE FORMAT” در صفحه راهنمای sssd.conf(5) مراجعه کنید.

می‌توان SSSD را برای استفاده از بیش از یک دامنه LDAP پیکربندی کرد.

بک‌اند LDAP از ارائه‌دهنده‌های id، auth، access و chpass پشتیبانی می‌کند. برای احراز هویت در یک سرور LDAP، استفاده از TLS/SSL یا LDAPS الزامی است. sssd از احراز هویت در بستر یک کانال رمزنگاری‌نشده پشتیبانی نمی‌کند. حتی در صورت استفاده از سرور LDAP صرفاً به عنوان ارائه‌دهنده هویت، استفاده از یک کانال رمزنگاری‌شده اکیداً توصیه می‌شود. لطفاً برای اطلاعات بیشتر درباره استفاده از LDAP به عنوان ارائه‌دهنده دسترسی، به گزینه پیکربندی “ldap_access_filter” مراجعه کنید.

تمام گزینه‌های پیکربندی مشترک که برای دامنه‌های SSSD به کار می‌روند، برای دامنه‌های LDAP نیز معتبر هستند. برای جزئیات کامل به بخش “DOMAIN SECTIONS” در صفحه راهنمای sssd.conf(5) مراجعه کنید. توجه داشته باشید که ویژگی‌های نگاشت LDAP در SSSD در صفحه راهنمای sssd-ldap-attributes(5) شرح داده شده‌اند.

ldap_uri, ldap_backup_uri (string)

فهرستی از URIهای سرورهای LDAP را مشخص می‌کند که با کاما از یکدیگر جدا شده‌اند و SSSD به ترتیب اولویت به آن‌ها متصل می‌شود. برای اطلاعات بیشتر در خصوص جایگزینی هنگام خرابی و افزونگی سرورها، به بخش “جایگزینی هنگام خرابی (FAILOVER)” مراجعه کنید. اگر هیچ‌کدام از گزینه‌ها تعیین نشده باشد، شناسایی سرویس فعال می‌شود. برای اطلاعات بیشتر، به بخش “شناسایی سرویس (SERVICE DISCOVERY)” مراجعه کنید.

قالب URI باید با ساختار تعریف‌شده در RFC 2732 مطابقت داشته باشد:

ldap[s]://<host>[:port]

برای آدرس‌های صریح IPv6، شناسه <host> باید داخل کروشه [] قرار گیرد

مثال: ldap://[fc00::126:25]:389

ldap_chpass_uri, ldap_chpass_backup_uri (string)

فهرستی از URIهای سرورهای LDAP را مشخص می‌کند که با کاما از یکدیگر جدا شده‌اند و SSSD به ترتیب اولویت جهت تغییر گذرواژه کاربر به آن‌ها متصل می‌شود. برای اطلاعات بیشتر درباره جایگزینی هنگام خرابی و افزونگی سرورها، به بخش “جایگزینی هنگام خرابی (FAILOVER)” مراجعه کنید.

جهت فعال‌سازی شناسایی سرویس، گزینه ldap_chpass_dns_service_name باید تنظیم شود.

پیش‌فرض: خالی، یعنی از ldap_uri استفاده می‌شود.

ldap_search_base (string)

پایه جستجوی (base DN) پیش‌فرض برای انجام عملیات‌های کاربر در LDAP.

از نسخه SSSD 1.7.0 به بعد، SSSD با استفاده از ساختار زیر از پایه‌های جستجوی چندگانه پشتیبانی می‌کند:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

محدوده (scope) می‌تواند یکی از مقادیر "base"، "onelevel" یا "subtree" باشد.

فیلتر باید یک فیلتر جستجوی معتبر LDAP باشد، همان‌طور که در http://www.ietf.org/rfc/rfc2254.txt مشخص شده است

مثال‌ها:

ldap_search_base = dc=example,dc=com (که معادل است با) ldap_search_base = dc=example,dc=com?subtree?

ldap_search_base = cn=host_specific,dc=example,dc=com?subtree?(host=thishost)?dc=example.com?subtree?

نکته: داشتن چندین پایه جستجو که به اشیایی با نام یکسان اشاره کنند (برای مثال گروه‌هایی با نام مشابه در دو پایه جستجوی متفاوت) پشتیبانی نمی‌شود. این موضوع باعث رفتارهای پیش‌بینی‌نشده در سیستم‌های کلاینت خواهد شد.

پیش‌فرض: در صورت عدم تنظیم، از مقدار ویژگی defaultNamingContext یا namingContexts از RootDSE سرور LDAP استفاده می‌شود. اگر defaultNamingContext وجود نداشته باشد یا مقداری خالی داشته باشد، از namingContexts استفاده می‌شود. برای اینکه این فرآیند به درستی کار کند، ویژگی namingContexts باید تنها یک مقدار شامل DN پایه جستجوی سرور LDAP داشته باشد. مقادیر چندگانه پشتیبانی نمی‌شوند.

ldap_read_rootdse (string)

نرم‌افزار SSSD برای دریافت اطلاعات مربوط به LDAP و قابلیت‌های آن، مقدار RootDSE را می‌خواند. این عمل به‌طور پیش‌فرض به شکل ناشناس انجام می‌شود. با این حال، ممکن است سرور LDAP اجازه چنین کاری را ندهد. در چنین مواردی می‌توان از این گزینه برای کنترل رفتار SSSD استفاده کرد.

مقادیر مجاز عبارتند از:

•anonymous
•authenticated
•never

به‌طور پیش‌فرض با انتخاب "anonymous"، نرم‌افزار SSSD تلاش می‌کند RootDSE را به صورت ناشناس بخواند. اگر این عملیات با شکست مواجه شود، تلاش مجدد را همراه با احراز هویت انجام می‌دهد.

پیش‌فرض: anonymous

ldap_schema (string)

نوع اسکیمای (Schema Type) مورد استفاده در سرور LDAP مقصد را مشخص می‌کند. بر اساس اسکیمای انتخاب‌شده، نام صفات پیش‌فرضِ دریافت‌شده از سرورها ممکن است تغییر کند. نحوه مدیریت برخی صفات نیز ممکن است متفاوت باشد.

در حال حاضر چهار نوع اسکیما پشتیبانی می‌شود:

•rfc2307
•rfc2307bis
•IPA
•AD

تفاوت اصلی میان این انواع اسکیما، چگونگی ذخیره عضویت در گروه‌ها درون سرور است. در rfc2307، اعضای گروه بر اساس نام در صفت memberUid فهرست می‌شوند. در rfc2307bis و IPA، اعضای گروه با DN مشخص شده و در صفت member ذخیره می‌شوند. نوع اسکیمای AD، صفات را متناسب با مقادیر Active Directory 2008r2 تنظیم می‌کند.

پیش‌فرض: rfc2307

ldap_pwmodify_mode (string)

عملیاتی را که برای ویرایش گذرواژه کاربر استفاده می‌شود مشخص می‌کند.

در حال حاضر از دو حالت پشتیبانی می‌شود:

•exop - عملیات توسعه‌یافته تغییر گذرواژه (RFC 3062)
•ldap_modify - تغییر مستقیم userPassword (توصیه نمی‌شود).
•exop_force - تلاش برای عملیات توسعه‌یافته تغییر گذرواژه (RFC 3062) حتی در صورت نماندن ورود ارفاقی (grace login). بسته به نوع و پیکربندی سرور LDAP، تغییر گذرواژه ممکن است با شکست مواجه شود زیرا اتصال احراز هویت‌شده (authenticated bind) امکان‌پذیر نیست.

نکته: ابتدا یک اتصال جدید برای بررسی گذرواژه فعلی با متصل شدن (bind) به‌عنوان کاربری که درخواست تغییر گذرواژه داده است برقرار می‌شود. در صورت موفقیت، از این اتصال برای تغییر گذرواژه استفاده می‌شود؛ بنابراین کاربر باید دسترسی نوشتن به صفت userPassword را داشته باشد.

پیش‌فرض: exop

ldap_default_bind_dn (string)

مقدار bind DN پیش‌فرض جهت استفاده برای اجرای عملیات‌های LDAP.

ldap_default_authtok_type (string)

نوع توکن احراز هویت برای bind DN پیش‌فرض.

دو سازوکاری که در حال حاضر پشتیبانی می‌شوند عبارتند از:

password

obfuscated_password

پیش‌فرض: password

برای اطلاعات بیشتر به صفحه راهنمای sss_obfuscate(8) مراجعه کنید.

ldap_default_authtok (string)

توکن احراز هویت مربوط به bind DN پیش‌فرض.

ldap_force_upper_case_realm (boolean)

برخی سرورهای دایرکتوری، مانند Active Directory، ممکن است بخش realm از UPN را با حروف کوچک ارسال کنند که می‌تواند باعث شکست در احراز هویت شود. اگر می‌خواهید از یک realm با حروف بزرگ استفاده کنید، این گزینه را روی مقداری غیر از صفر تنظیم کنید.

پیش‌فرض: false

ldap_enumeration_refresh_timeout (integer)

مشخص می‌کند که SSSD پیش از بازنشانی کش رکوردهای شمارش‌شده (enumerated) چند ثانیه باید منتظر بماند.

پیش‌فرض: 300

ldap_purge_cache_timeout (integer)

مشخص می‌کند هر چند وقت یک‌بار کش برای ورودی‌های غیرفعال (مانند گروه‌های بدون عضو و کاربرانی که هرگز وارد سیستم نشده‌اند) بررسی شود و برای صرفه‌جویی در فضا حذف شوند.

تنظیم این گزینه روی صفر عملیات پاک‌سازی کش را غیرفعال می‌کند. لطفاً توجه داشته باشید در صورت فعال بودن شمارش (enumeration)، وظیفه پاک‌سازی جهت شناسایی ورودی‌های حذف‌شده از سرور الزامی است و نمی‌توان آن را غیرفعال کرد. به‌طور پیش‌فرض در صورت فعال بودن enumeration، عملیات پاک‌سازی هر ۳ ساعت یک‌بار اجرا می‌شود.

این گزینه می‌تواند برای هر زیردامنه نیز تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 0 (غیرفعال)

ldap_group_nesting_level (integer)

اگر ldap_schema روی ساختاری (schema) تنظیم شده باشد که از گروه‌های تودرتو پشتیبانی می‌کند (مانند RFC2307bis)، این گزینه مشخص می‌کند SSSD تا چند سطح از تودرتویی را دنبال خواهد کرد. این گزینه تأثیری بر ساختار RFC2307 ندارد.

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

اگر ldap_group_nesting_level روی 0 تنظیم شود، هیچ گروه تودرتویی پردازش نخواهد شد. با این حال، هنگام اتصال به سرور Active Directory 2008 و جدیدتر با استفاده از “id_provider=ad” لازم است علاوه بر این با تنظیم ldap_use_tokengroups روی false، استفاده از Token-Groups غیرفعال شود تا تودرتویی گروه‌ها محدود گردد.

پیش‌فرض: 2

ldap_use_tokengroups

این گزینه استفاده از صفت Token-Groups را هنگام اجرای initgroup برای کاربران از Active Directory Server 2008 و جدیدتر فعال یا غیرفعال می‌کند.

این گزینه همچنین می‌تواند برای هر زیردامنه تعیین شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: برای AD و IPA برابر با True، در غیر این صورت False.

ldap_host_search_base (string)

اختیاری. استفاده از رشته داده‌شده به‌عنوان مبنای جستجو (search base) برای اشیاء میزبان (host).

برای اطلاعات بیشتر در مورد پیکربندی چند مبنای جستجو، به “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

ldap_subid_ranges_search_base (string)

اختیاری. استفاده از رشته داده‌شده به‌عنوان مبنای جستجو برای اشیاء مربوط به محدوده‌های تابع (subordinate ranges).

پیش‌فرض: برای IPA برابر با مقدار cn=subids,%basedn و در غیر این صورت ldap_search_base.

ldap_service_search_base (string)

یک base DN اختیاری، محدوده جستجو (scope) و فیلتر LDAP برای محدود کردن جستجوهای LDAP جهت این نوع صفت.

نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

محدوده (scope) می‌تواند یکی از مقادیر "base"، "onelevel" یا "subtree" باشد. محدوده طبق بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای دیدن مثال‌هایی از این نحو، به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین scope یا filter برای جستجوها در سرور Active Directory که ممکن است تعداد نتایج بالایی داشته باشند و افزونه Range Retrieval را فعال کنند پشتیبانی نمی‌شود.

ldap_iphost_search_base (string)

یک base DN اختیاری، محدوده جستجو (scope) و فیلتر LDAP برای محدود کردن جستجوهای LDAP جهت این نوع صفت.

نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

محدوده (scope) می‌تواند یکی از مقادیر "base"، "onelevel" یا "subtree" باشد. محدوده طبق بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای دیدن مثال‌هایی از این نحو، به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین scope یا filter برای جستجوها در سرور Active Directory که ممکن است تعداد نتایج بالایی داشته باشند و افزونه Range Retrieval را فعال کنند پشتیبانی نمی‌شود.

ldap_ipnetwork_search_base (string)

یک base DN اختیاری، محدوده جستجو (scope) و فیلتر LDAP برای محدود کردن جستجوهای LDAP جهت این نوع صفت.

نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

محدوده (scope) می‌تواند یکی از مقادیر "base"، "onelevel" یا "subtree" باشد. محدوده طبق بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای دیدن مثال‌هایی از این نحو، به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین scope یا filter برای جستجوها در سرور Active Directory که ممکن است تعداد نتایج بالایی داشته باشند و افزونه Range Retrieval را فعال کنند پشتیبانی نمی‌شود.

ldap_search_timeout (integer)

مدت زمان مهلت (به ثانیه) را برای اجرای جستجوهای LDAP پیش از لغو آن‌ها و بازگرداندن نتایج کش‌شده (و ورود به حالت آفلاین) مشخص می‌کند.

نکته: این گزینه در نسخه‌های آینده SSSD ممکن است دستخوش تغییر شود. احتمالاً در زمانی با مجموعه‌ای از مهلت‌های زمانی برای انواع جستجوهای خاص جایگزین خواهد شد.

این گزینه همچنین می‌تواند برای هر زیردامنه تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 6

ldap_enumeration_search_timeout (integer)

مدت زمان مهلت (به ثانیه) را برای اجرای جستجوهای LDAP مربوط به شمارش کاربران و گروه‌ها پیش از لغو آن‌ها و بازگرداندن نتایج کش‌شده (و ورود به حالت آفلاین) مشخص می‌کند.

پیش‌فرض: 60

ldap_network_timeout (integer)

مدت زمان مهلت (به ثانیه) را تعیین می‌کند که پس از آن poll(2)/select(2) متعاقب یک connect(2) در صورت نبود فعالیت بازمی‌گردد.

این گزینه همچنین می‌تواند برای هر زیردامنه تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 6

ldap_opt_timeout (integer)

یک مهلت زمانی (به ثانیه) تعیین می‌کند که پس از آن فراخوانی‌های همگام APIهای LDAP در صورت عدم دریافت پاسخ متوقف می‌شوند. همچنین مهلت زمانی ارتباط با KDC در هنگام اتصال SASL، مهلت زمانی عملیات اتصال LDAP، عملیات توسعه‌یافته تغییر گذرواژه و عملیات StartTLS را کنترل می‌کند.

این گزینه همچنین می‌تواند برای هر زیردامنه تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 8

ldap_connection_expire_timeout (integer)

مدت زمانی (به ثانیه) را مشخص می‌کند که طی آن اتصال به یک سرور LDAP حفظ خواهد شد. پس از این زمان، اتصال مجدداً برقرار می‌شود. در صورت استفاده همزمان با SASL/GSSAPI، مقداری که زودتر فرا برسد (این مقدار در مقابل طول عمر TGT) استفاده خواهد شد.

اگر اتصال تا زمان باقی‌مانده برابر با ldap_opt_timeout ثانیه تا انقضا بیکار باشد (هیچ عملیاتی را به‌طور فعال اجرا نکند)، اتصال زودتر بسته خواهد شد تا تضمین شود پرس‌وجوی جدیدی نیازمند باز ماندن اتصال پس از انقضای آن نخواهد بود. این امر بدان معناست که در صورت برقراری شرط ldap_connection_expire_timeout <= ldap_opt_timout اتصالات همواره بلافاصله بسته خواهند شد و هرگز مجدداً استفاده نخواهند شد.

این مهلت زمانی می‌تواند با یک مقدار تصادفی تعیین‌شده توسط ldap_connection_expire_offset تمدید شود.

این گزینه همچنین می‌تواند برای هر زیردامنه تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 900 (15 دقیقه)

ldap_connection_expire_offset (integer)

افست تصادفی بین 0 و مقدار پیکربندی‌شده به ldap_connection_expire_timeout اضافه می‌شود.

این گزینه می‌تواند به ازای هر زیردامنه نیز تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 0

ldap_connection_idle_timeout (integer)

مدت‌زمان انتظار (به ثانیه) را تعیین می‌کند که طی آن یک اتصال بیکار به سرور LDAP حفظ خواهد شد. اگر اتصال بیش از این زمان بیکار بماند، اتصال بسته خواهد شد.

می‌توانید با تنظیم مقدار روی 0 این زمان انتظار را غیرفعال کنید.

این گزینه می‌تواند به ازای هر زیردامنه نیز تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 900 (15 دقیقه)

ldap_page_size (integer)

تعداد رکوردهایی را که باید در یک درخواست واحد از LDAP واکشی شوند، مشخص می‌کند. برخی سرورهای LDAP محدودیت حداکثری برای هر درخواست اعمال می‌کنند.

پیش‌فرض: 1000

ldap_disable_paging (boolean)

کنترل صفحه‌بندی LDAP را غیرفعال می‌کند. این گزینه زمانی باید استفاده شود که سرور LDAP پشتیبانی از کنترل صفحه‌بندی LDAP را در RootDSE خود گزارش می‌دهد اما این ویژگی فعال نیست یا عملکرد درستی ندارد.

مثال: سرورهای OpenLDAP که ماژول کنترل صفحه‌بندی روی سرور نصب شده اما فعال نشده است، آن را در RootDSE گزارش می‌دهند اما قادر به استفاده از آن نیستند.

مثال: سرور 389 DS دارای باگی است که فقط می‌تواند از یک کنترل صفحه‌بندی در یک زمان روی یک اتصال واحد پشتیبانی کند. در کلاینت‌های پرمشغله، این می‌تواند منجر به رد شدن برخی درخواست‌ها شود.

پیش‌فرض: False

ldap_disable_range_retrieval (boolean)

بازیابی بازه‌ای Active Directory را غیرفعال می‌کند.

Active Directory تعداد اعضایی را که می‌توان در یک جستجوی واحد با استفاده از خط‌مشی MaxValRange بازیابی کرد، محدود می‌کند که به طور پیش‌فرض 1500 عضو است. اگر یک گروه بیش از 1500 عضو داشته باشد، پاسخ شامل یک افزونه بازه‌ایِ مخصوص AD خواهد بود. در صورت فعال بودن، این گزینه مانع از تجزیه افزونه بازه‌ای توسط SSSD می‌شود. در نتیجه، گروه‌های بزرگ به‌گونه‌ای ظاهر می‌شوند که گویی هیچ عضوی ندارند. این گزینه SSSD را قادر به خواندن بازه‌های بعدی نمی‌سازد. برای بازیابی همه اعضای یک گروه، باید مقدار MaxValRange را در Active Directory افزایش دهید.

پیش‌فرض: False

ldap_sasl_minssf (integer)

هنگام ارتباط با سرور LDAP با استفاده از SASL، حداقل سطح امنیتی لازم برای برقراری اتصال را مشخص می‌کند. مقادیر این گزینه توسط OpenLDAP تعریف می‌شوند.

پیش‌فرض: استفاده از پیش‌فرض سیستم (معمولاً در ldap.conf مشخص می‌شود)

ldap_sasl_maxssf (integer)

هنگام ارتباط با سرور LDAP با استفاده از SASL، حداکثر سطح امنیتی لازم برای برقراری اتصال را مشخص می‌کند. مقادیر این گزینه توسط OpenLDAP تعریف می‌شوند.

پیش‌فرض: استفاده از پیش‌فرض سیستم (معمولاً در ldap.conf مشخص می‌شود)

ldap_deref_threshold (integer)

تعداد اعضای گروهی را مشخص می‌کند که باید در حافظه موقت (cache) داخلی وجود نداشته باشند تا یک جستجوی ارجاع‌زدایی (dereference) فعال شود. اگر اعضای کمتری مفقود باشند، آن‌ها به صورت جداگانه جستجو می‌شوند.

می‌توانید جستجوهای dereference را با تنظیم این مقدار روی 0 به طور کامل خاموش کنید. لطفاً توجه داشته باشید که برخی از مسیرهای کد در SSSD، مانند ارائه‌دهنده IPA HBAC، فقط با استفاده از فراخوانی dereference پیاده‌سازی شده‌اند؛ بنابراین حتی با غیرفعال بودن صریح dereference، این بخش‌ها در صورتی که سرور پشتیبانی کند و کنترل dereference را در شیء rootDSE اعلان نماید، همچنان از dereference استفاده خواهند کرد.

یک جستجوی dereference ابزاری برای واکشی همه اعضای گروه در یک فراخوانی واحد LDAP است. سرورهای مختلف LDAP ممکن است متدهای مختلفی برای dereference پیاده‌سازی کنند. سرورهایی که در حال حاضر پشتیبانی می‌شوند عبارتند از 389/RHDS، OpenLDAP و Active Directory.

نکته: اگر هر یک از پایه‌های جستجو (search bases) یک فیلتر جستجو مشخص کند، بهبود عملکرد جستجوی dereference صرف‌نظر از این تنظیم غیرفعال خواهد شد.

پیش‌فرض: 10

ldap_ignore_unreadable_references (bool)

نادیده گرفتن مدخل‌های غیرقابل خواندن LDAP که در ویژگی member گروه به آن‌ها ارجاع داده شده است. اگر این پارامتر روی false تنظیم شود، خطایی بازگردانده می‌شود و عملیات به جای صرفاً نادیده گرفتن مدخل غیرقابل خواندن، ناموفق خواهد بود.

این پارامتر ممکن است هنگام استفاده از ارائه‌دهنده AD که در آن حساب رایانه مورد استفاده sssd برای اتصال به AD بنا به دلایل امنیتی دسترسی به یک مدخل خاص یا زیردرخت LDAP ندارد، مفید باشد.

پیش‌فرض: False

ldap_tls_reqcert (string)

مشخص می‌کند چه بررسی‌هایی روی گواهی‌های سرور در یک نشست TLS در صورت وجود انجام شود. این گزینه می‌تواند یکی از مقادیر زیر باشد:

never = کلاینت هیچ گواهی سروری را درخواست یا بررسی نخواهد کرد.

allow = گواهی سرور درخواست می‌شود. اگر هیچ گواهی ارائه نشود، نشست به صورت عادی ادامه می‌یابد. اگر یک گواهی نامعتبر ارائه شود، نادیده گرفته شده و نشست به صورت عادی ادامه می‌یابد.

try = گواهی سرور درخواست می‌شود. اگر هیچ گواهی ارائه نشود، نشست به صورت عادی ادامه می‌یابد. اگر یک گواهی نامعتبر ارائه شود، نشست فوراً خاتمه می‌یابد.

demand = گواهی سرور درخواست می‌شود. اگر هیچ گواهی ارائه نشود، یا یک گواهی نامعتبر ارائه گردد، نشست فوراً خاتمه می‌یابد.

hard = مشابه “demand”

پیش‌فرض: hard

ldap_tls_cacert (string)

فایلی را مشخص می‌کند که شامل گواهی‌های تمام مراجع صدور گواهی (CA) است که sssd به رسمیت خواهد شناخت.

پیش‌فرض: استفاده از پیش‌فرض‌های OpenLDAP، معمولاً در /etc/openldap/ldap.conf

ldap_tls_cacertdir (string)

مسیر دایرکتوری‌ای را مشخص می‌کند که شامل گواهی‌های مراجع صدور گواهی (CA) در فایل‌های مجزا و مستقل است. معمولاً نام فایل‌ها باید هشِ گواهی و به دنبال آن '.0' باشد. در صورت وجود، openssl rehash یا c_rehash می‌توانند برای ایجاد نام‌های صحیح استفاده شوند.

پیش‌فرض: استفاده از پیش‌فرض‌های OpenLDAP، معمولاً در /etc/openldap/ldap.conf

ldap_tls_cert (string)

فایلی را مشخص می‌کند که شامل گواهی برای کلید کلاینت است.

پیش‌فرض: تنظیم نشده

ldap_tls_key (string)

فایلی را مشخص می‌کند که شامل کلید کلاینت است.

پیش‌فرض: تنظیم نشده

ldap_tls_cipher_suite (string)

مجموعه رمزهای (cipher suites) قابل قبول را مشخص می‌کند. معمولاً این یک فهرست جداشده با دونقطه است. برای قالب به ldap.conf(5) مراجعه کنید.

پیش‌فرض: استفاده از پیش‌فرض‌های OpenLDAP، معمولاً در /etc/openldap/ldap.conf

ldap_id_use_start_tls (boolean)

مشخص می‌کند که اتصال id_provider باید برای محافظت از کانال از tls نیز استفاده کند. مقدار true به دلایل امنیتی اکیداً توصیه می‌شود.

پیش‌فرض: true

ldap_id_mapping (boolean)

مشخص می‌کند که SSSD باید تلاش کند شناسه‌های کاربر و گروه را از ویژگی‌های ldap_user_objectsid و ldap_group_objectsid نگاشت کند، به‌جای اینکه به ldap_user_uid_number و ldap_group_gid_number تکیه کند.

در حال حاضر این ویژگی فقط از نگاشت objectSID در ActiveDirectory پشتیبانی می‌کند.

پیش‌فرض: false

ldap_min_id, ldap_max_id (integer)

برخلاف نگاشت شناسه‌های مبتنی بر SID که در صورت تنظیم ldap_id_mapping روی true استفاده می‌شود، محدوده شناسه مجاز برای ldap_user_uid_number و ldap_group_gid_number نامحدود است. در ساختاری با زیردامنه‌ها/دامنه‌های مورد اعتماد، این موضوع ممکن است منجر به تداخل شناسه‌ها شود. برای جلوگیری از تداخل، می‌توان ldap_min_id و ldap_max_id را تنظیم کرد تا محدوده مجاز برای شناسه‌هایی که مستقیماً از سرور خوانده می‌شوند، محدود شود. سپس زیردامنه‌ها می‌توانند محدوده‌های دیگری را برای نگاشت شناسه‌ها انتخاب کنند.

پیش‌فرض: تنظیم نشده (هر دو گزینه روی 0 تنظیم شده‌اند)

ldap_sasl_mech (string)

مکانیسم SASL مورد استفاده را مشخص می‌کند. در حال حاضر فقط GSSAPI و GSS-SPNEGO آزمایش و پشتیبانی شده‌اند.

اگر بک‌اند از زیردامنه‌ها پشتیبانی کند، مقدار ldap_sasl_mech به طور خودکار به زیردامنه‌ها به ارث می‌رسد. اگر مقدار متفاوتی برای یک زیردامنه مورد نیاز باشد، می‌توان آن را با تنظیم صریح ldap_sasl_mech برای آن زیردامنه بازنویسی کرد. لطفاً برای جزئیات به TRUSTED DOMAIN SECTION در sssd.conf(5) مراجعه کنید.

پیش‌فرض: تنظیم نشده

ldap_sasl_authid (string)

شناسه مجوز SASL را برای استفاده مشخص می‌کند. هنگام استفاده از GSSAPI/GSS-SPNEGO، این نشان‌دهنده پرینسیپال Kerberos است که برای احراز هویت در دایرکتوری استفاده می‌شود. این گزینه می‌تواند شامل پرینسیپال کامل (برای مثال host/myhost@EXAMPLE.COM) یا فقط نام پرینسیپال (برای مثال host/myhost) باشد. به‌طور پیش‌فرض، مقدار تنظیم نشده است و از پرینسیپال‌های زیر استفاده می‌شود:
hostname@REALM
netbiosname$@REALM
host/hostname@REALM
*$@REALM
host/*@REALM
netbiosname$@*
host/*

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

پیش‌فرض: host/hostname@REALM

ldap_sasl_realm (string)

حوزه (realm) در SASL را برای استفاده مشخص می‌کند. در صورت عدم تعیین، این گزینه به طور پیش‌فرض روی مقدار krb5_realm تنظیم می‌شود. اگر ldap_sasl_authid شامل realm نیز باشد، این گزینه نادیده گرفته می‌شود.

پیش‌فرض: مقدار krb5_realm.

ldap_sasl_canonicalize (boolean)

اگر روی true تنظیم شود، کتابخانه LDAP برای متعارف‌سازی (canonicalize) نام میزبان در طول اتصال (bind) به SASL یک جستجوی معکوس انجام می‌دهد.

پیش‌فرض: false;

ldap_krb5_keytab (string)

فایل keytab مورد استفاده هنگام استفاده از SASL/GSSAPI/GSS-SPNEGO را مشخص می‌کند.

این گزینه می‌تواند به ازای هر زیردامنه نیز تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: فایل keytab سیستم، معمولاً /etc/krb5.keytab

ldap_krb5_init_creds (boolean)

مشخص می‌کند که id_provider باید اطلاعات کاربری Kerberos (TGT) را مقداردهی اولیه کند. این اقدام تنها زمانی انجام می‌شود که SASL استفاده شود و مکانیسم انتخاب‌شده GSSAPI یا GSS-SPNEGO باشد.

پیش‌فرض: true

ldap_krb5_ticket_lifetime (integer)

طول عمر TGT را به ثانیه در صورت استفاده از GSSAPI یا GSS-SPNEGO مشخص می‌کند.

این گزینه می‌تواند به ازای هر زیردامنه نیز تنظیم شود یا از طریق subdomain_inherit به ارث برسد.

پیش‌فرض: 86400 (24 ساعت)

krb5_server, krb5_backup_server (string)

فهرست جداشده با کاما از آدرس‌های IP یا نام‌های میزبان سرورهای Kerberos را مشخص می‌کند که SSSD باید به ترتیب اولویت به آن‌ها متصل شود. برای اطلاعات بیشتر درباره جایگزینی هنگام خرابی و افزونگی سرور، بخش “FAILOVER” را ببینید. یک شماره پورت اختیاری (که پیش از آن دونقطه می‌آید) می‌تواند به آدرس‌ها یا نام‌های میزبان افزوده شود. اگر خالی باشد، شناسایی سرویس فعال است - برای اطلاعات بیشتر، به بخش “SERVICE DISCOVERY” مراجعه کنید.

هنگام استفاده از شناسایی سرویس برای سرورهای KDC یا kpasswd، ابتدا SSSD ورودی‌های DNS را جستجو می‌کند که _udp را به عنوان پروتکل مشخص کرده‌اند و اگر موردی پیدا نشد به _tcp برمی‌گردد.

این گزینه در نسخه‌های پیشین SSSD با نام “krb5_kdcip” نامیده می‌شد. در حالی که نام قدیمی در حال حاضر شناسایی می‌شود، به کاربران توصیه می‌شود که فایل‌های پیکربندی خود را به استفاده از “krb5_server” به‌جای آن مهاجرت دهند.

krb5_realm (string)

حوزه (REALM) کربروس (برای احراز هویت SASL/GSSAPI/GSS-SPNEGO) را مشخص می‌کند.

پیش‌فرض: پیش‌فرض‌های سیستم، ببینید /etc/krb5.conf

krb5_canonicalize (boolean)

مشخص می‌کند که آیا principal میزبان هنگام اتصال به سرور LDAP باید استانداردسازی (canonicalize) شود یا خیر. این ویژگی با MIT Kerberos >= 1.7 در دسترس است.

پیش‌فرض: false

krb5_use_kdcinfo (boolean)

مشخص می‌کند که آیا SSSD باید به کتابخانه‌های Kerberos دستور دهد از چه realm و کدام KDCهایی استفاده کنند یا خیر. این گزینه به‌طور پیش‌فرض فعال است؛ در صورت غیرفعال کردن آن، باید کتابخانه Kerberos را با استفاده از فایل پیکربندی krb5.conf(5) پیکربندی کنید.

برای اطلاعات بیشتر در مورد پلاگین ردیاب (locator plugin)، صفحه راهنمای sssd_krb5_locator_plugin(8) را ببینید.

پیش‌فرض: true

ldap_pwd_policy (string)

سیاست ارزیابی انقضای گذرواژه در سمت کلاینت را انتخاب می‌کند. مقادیر زیر مجاز هستند:

none - بدون ارزیابی در سمت کلاینت. این گزینه نمی‌تواند سیاست‌های گذرواژه سمت سرور را غیرفعال کند.

shadow - استفاده از مشخصه‌های به سبک shadow(5) برای ارزیابی این‌که آیا گذرواژه منقضی شده است یا خیر. لطفاً گزینه «ldap_chpass_update_last_change» را نیز ببینید.

mit_kerberos - استفاده از مشخصه‌های مورد استفاده توسط MIT Kerberos برای تعیین اینکه آیا گذرواژه منقضی شده است یا خیر. هنگام تغییر گذرواژه از chpass_provider=krb5 برای به‌روزرسانی این مشخصه‌ها استفاده کنید.

پیش‌فرض: none

نکته: اگر یک سیاست گذرواژه در سمت سرور پیکربندی شده باشد، همواره بر سیاست تنظیم‌شده با این گزینه اولویت دارد.

ldap_referrals (boolean)

مشخص می‌کند که آیا دنبال کردن خودکار ارجاعات (referral chasing) باید فعال باشد یا خیر.

لطفاً توجه داشته باشید که sssd تنها زمانی از دنبال کردن ارجاعات پشتیبانی می‌کند که با OpenLDAP نگارش 2.4.13 یا بالاتر کامپایل شده باشد.

دنبال کردن ارجاعات ممکن است در محیط‌هایی که به‌شدت از آن‌ها استفاده می‌کنند موجب افت کارایی شود؛ یک نمونه قابل توجه Microsoft Active Directory است. اگر ساختار شما واقعاً نیازی به استفاده از ارجاعات ندارد، تنظیم این گزینه روی false ممکن است بهبود چشمگیری در کارایی ایجاد کند. بنابراین در صورتی که ارائه‌دهنده LDAP در SSSD به همراه Microsoft Active Directory به عنوان بک‌اند استفاده می‌شود، تنظیم این گزینه روی false توصیه می‌شود. حتی اگر SSSD قادر باشد ارجاع را به یک AD DC دیگر دنبال کند، هیچ داده اضافی در دسترس نخواهد بود.

پیش‌فرض: true

ldap_dns_service_name (string)

نام سرویس مورد استفاده در هنگام فعال بودن شناسایی سرویس را مشخص می‌کند.

پیش‌فرض: ldap

ldap_chpass_dns_service_name (string)

نام سرویسی را مشخص می‌کند که در زمان فعال بودن شناسایی سرویس، برای یافتن سرور LDAP مجاز به تغییر گذرواژه به کار می‌رود.

پیش‌فرض: تنظیم‌نشده، یعنی شناسایی سرویس غیرفعال است

ldap_chpass_update_last_change (bool)

مشخص می‌کند که آیا مشخصه ldap_user_shadow_last_change پس از عملیات تغییر گذرواژه با تعداد روزهای سپری‌شده از مبدأ تاریخ (Epoch) به‌روزرسانی شود یا خیر.

در صورت استفاده از «ldap_pwd_policy = shadow» توصیه می‌شود این گزینه به‌صراحت تنظیم شود تا SSSD بداند که آیا سرور LDAP مشخصه shadowLastChange را پس از تغییر گذرواژه به‌طور خودکار به‌روزرسانی می‌کند یا SSSD باید آن را به‌روزرسانی کند.

پیش‌فرض: False

ldap_access_filter (string)

در صورت استفاده از access_provider = ldap و ldap_access_order = filter (پیش‌فرض)، این گزینه اجباری است. این گزینه معیار فیلتر جستجوی LDAP را مشخص می‌کند که برای اعطای دسترسی به کاربر روی این میزبان باید برقرار باشد. اگر access_provider = ldap و ldap_access_order = filter باشد و این گزینه تنظیم نشده باشد، منجر به رد دسترسی همه کاربران خواهد شد. برای تغییر این رفتار پیش‌فرض از access_provider = permit استفاده کنید. لطفاً توجه داشته باشید که این فیلتر فقط روی مدخل کاربر LDAP اعمال می‌شود و بنابراین فیلتر کردن بر اساس گروه‌های تو در تو ممکن است کار نکند (برای نمونه مشخصه memberOf در مدخل‌های AD فقط به والد‌های مستقیم اشاره دارد). اگر فیلتر کردن بر اساس گروه‌های تو در تو مورد نیاز است، لطفاً به sssd-simple(5) مراجعه کنید.

مثال:

access_provider = ldap
ldap_access_filter = (employeeType=admin)

این مثال بدین معناست که دسترسی به این میزبان به کاربرانی محدود می‌شود که مشخصه employeeType آن‌ها روی "admin" تنظیم شده باشد.

کش آفلاین برای این ویژگی محدود به این است که آیا در آخرین ورود برخط (online) کاربر مجوز دسترسی اعطا شده است یا خیر. اگر در آخرین ورود به آن‌ها دسترسی داده شده باشد، در حالت آفلاین نیز همچنان دسترسی خواهند داشت و برعکس.

پیش‌فرض: خالی

ldap_account_expire_policy (string)

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

لطفاً توجه داشته باشید که همواره توصیه می‌شود از کنترل دسترسی سمت سرور استفاده شود؛ یعنی سرور LDAP باید درخواست bind را حتی در صورت درست بودن گذرواژه، با یک کد خطای مناسب رد کند.

مقادیر زیر مجاز هستند:

shadow: استفاده از مقدار ldap_user_shadow_expire برای تعیین منقضی شدن حساب.

ad: استفاده از مقدار فیلد ۳۲ بیتی ldap_user_ad_user_account_control و اجازه دسترسی در صورتی که بیت دوم تنظیم نشده باشد. اگر مشخصه وجود نداشته باشد، دسترسی اعطا می‌شود. زمان انقضای حساب نیز بررسی می‌شود.

rhds، ipa، 389ds: استفاده از مقدار ldap_ns_account_lock برای بررسی مجاز بودن یا نبودن دسترسی.

nds: مقادیر ldap_user_nds_login_allowed_time_map، ldap_user_nds_login_disabled و ldap_user_nds_login_expiration_time برای بررسی مجاز بودن دسترسی استفاده می‌شوند. اگر هر دو مشخصه موجود نباشند، دسترسی اعطا می‌شود.

لطفاً توجه داشته باشید که گزینه پیکربندی ldap_access_order باید شامل “expire” باشد تا گزینه ldap_account_expire_policy کار کند.

پیش‌فرض: خالی

ldap_access_order (string)

فهرستی جدا شده با کاما از گزینه‌های کنترل دسترسی. مقادیر مجاز عبارتند از:

filter: استفاده از ldap_access_filter

lockout: استفاده از قفل حساب کاربری. در صورت تنظیم، این گزینه در صورتی که مشخصه ldap با نام 'pwdAccountLockedTime' موجود بوده و مقدار '000001010000Z' داشته باشد، دسترسی را رد می‌کند. لطفاً گزینه ldap_pwdlockout_dn را ببینید. لطفاً توجه داشته باشید که برای کارکرد این ویژگی باید 'access_provider = ldap' تنظیم شده باشد.

لطفاً توجه داشته باشید که این گزینه با گزینه “ppolicy” جایگزین شده است و ممکن است در انتشار آتی حذف شود.

ppolicy: استفاده از قفل حساب کاربری. در صورت تنظیم، این گزینه در صورتی که مشخصه ldap با نام 'pwdAccountLockedTime' موجود باشد و دارای مقدار '000001010000Z' باشد یا هر زمانی در گذشته را نشان دهد، دسترسی را رد می‌کند. مقدار مشخصه 'pwdAccountLockedTime' باید با 'Z' پایان یابد که نشان‌دهنده منطقه زمانی UTC است. سایر مناطق زمانی در حال حاضر پشتیبانی نمی‌شوند و هنگام تلاش کاربران برای ورود به سیستم منجر به "access-denied" خواهند شد. لطفاً گزینه ldap_pwdlockout_dn را ببینید. لطفاً توجه داشته باشید که برای کارکرد این ویژگی باید 'access_provider = ldap' تنظیم شده باشد.

expire: استفاده از ldap_account_expire_policy

pwd_expire_policy_reject, pwd_expire_policy_warn, pwd_expire_policy_renew: این گزینه‌ها زمانی مفید هستند که کاربران تمایل داشته باشند از در شرف انقضا بودن گذرواژه مطلع شوند و احراز هویت بر اساس روشی غیر از گذرواژه انجام شود - برای نمونه کلیدهای SSH.

تفاوت بین این گزینه‌ها در اقدامی است که در صورت انقضای گذرواژه کاربر انجام می‌شود:

•pwd_expire_policy_reject - ورود کاربر به سیستم رد می‌شود،
•pwd_expire_policy_warn - کاربر همچنان قادر به ورود به سیستم است،
•pwd_expire_policy_renew - بلافاصله از کاربر خواسته می‌شود گذرواژه خود را تغییر دهد.

لطفاً توجه داشته باشید که برای کارکرد این ویژگی باید 'access_provider = ldap' تنظیم شده باشد. همچنین 'ldap_pwd_policy' باید روی shadow یا mit_kerberos تنظیم شده باشد؛ این گزینه‌ها با سیاست‌های گذرواژه سمت سرور کار نمی‌کنند.

authorized_service: استفاده از مشخصه authorizedService برای تعیین دسترسی

host: استفاده از مشخصه host برای تعیین دسترسی

rhost: استفاده از مشخصه rhost برای تعیین امکان دسترسی میزبان راه دور

لطفاً توجه داشته باشید، فیلد rhost در pam توسط برنامه تنظیم می‌شود؛ بهتر است قبل از فعال کردن این گزینه کنترل دسترسی، بررسی کنید که برنامه چه مقداری به pam ارسال می‌کند

پیش‌فرض: filter

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

ldap_pwdlockout_dn (string)

این گزینه DN مدخل سیاست گذرواژه در سرور LDAP را مشخص می‌کند. لطفاً توجه داشته باشید که در صورت فعال بودن بررسی قفل حساب، نبود این گزینه در sssd.conf منجر به رد دسترسی خواهد شد زیرا مشخصه‌های ppolicy در سرور LDAP نمی‌توانند به‌درستی بررسی شوند.

مثال: cn=ppolicy,ou=policies,dc=example,dc=com

پیش‌فرض: cn=ppolicy,ou=policies,$ldap_search_base

ldap_deref (string)

نحوه ارجاع‌زدایی نام‌های مستعار (alias dereferencing) را هنگام انجام جستجو مشخص می‌کند. گزینه‌های زیر مجاز هستند:

never: نام‌های مستعار هرگز ارجاع‌زدایی نمی‌شوند.

searching: نام‌های مستعار در زیرمجموعه‌های شیء پایه ارجاع‌زدایی می‌شوند، اما در تعیین مکان شیء پایه جستجو ارجاع‌زدایی نمی‌شوند.

finding: نام‌های مستعار فقط هنگام تعیین مکان شیء پایه جستجو ارجاع‌زدایی می‌شوند.

always: نام‌های مستعار هم در جستجو و هم در مکان‌یابی شیء پایه جستجو ارجاع‌زدایی می‌شوند.

پیش‌فرض: خالی (توسط کتابخانه‌های کلاینت LDAP به عنوان never در نظر گرفته می‌شود)

ldap_rfc2307_fallback_to_local_users (boolean)

امکان حفظ کاربران محلی به عنوان اعضای یک گروه LDAP را برای سرورهایی که از طرحواره RFC2307 استفاده می‌کنند، فراهم می‌سازد.

در برخی محیط‌ها که از طرحواره RFC2307 استفاده می‌شود، کاربران محلی با اضافه کردن نام‌هایشان به مشخصه memberUid به عضویت گروه‌های LDAP درمی‌آیند. با این کار یکپارچگی درونی دامنه به خطر می‌افتد، بنابراین SSSD معمولاً به محض اینکه nsswitch تلاش کند اطلاعات مربوط به کاربر را از طریق فراخوانی‌های getpw*() یا initgroups() واکشی کند، کاربران «ناپدیدشده» را از عضویت‌های گروه ذخیره‌شده در کش حذف می‌کند.

این گزینه به بررسی این که آیا به کاربران محلی ارجاع داده شده است یا خیر بازگشت می‌کند و آن‌ها را در کش نگه می‌دارد تا فراخوانی‌های بعدی initgroups() کاربران محلی را با گروه‌های LDAP اضافی تکمیل کنند.

پیش‌فرض: false

wildcard_limit (integer)

حد بالایی را برای تعداد مدخل‌هایی که در طول جستجوی نویسه عام (wildcard lookup) دریافت می‌شوند مشخص می‌کند.

در حال حاضر، تنها پاسخ‌دهنده InfoPipe از جستجوهای نویسه عام پشتیبانی می‌کند.

پیش‌فرض: 1000 (اغلب به اندازه یک صفحه)

ldap_library_debug_level (integer)

اشکال‌زدایی libldap را با سطح داده‌شده فعال می‌کند. پیام‌های اشکال‌زدایی libldap مستقل از debug_level عمومی نوشته خواهند شد.

‏OpenLDAP از یک بیت‌مپ برای فعال‌سازی اشکال‌زدایی مؤلفه‌های خاص استفاده می‌کند؛ مقدار -1 خروجی کامل اشکال‌زدایی را فعال می‌کند.

پیش‌فرض: 0 (اشکال‌زدایی libldap غیرفعال است)

ldap_use_ppolicy (boolean)

درخواست و اتکا به کنترل‌های سیاست گذرواژه سمت سرور را فعال می‌کند. غیرفعال کردن این گزینه امکان تعامل با سرویس‌هایی را فراهم می‌سازد که پسوند نامعتبر ppolicy را ارسال می‌کنند.

پیش‌فرض: true

ldap_ppolicy_pwd_change_threshold (integer)

هنگامی که کنترل‌های سیاست گذرواژه سمت سرور فعال باشند و تعداد ورودهای ارفاقی (grace logins) باقی‌مانده که پس از احراز هویت توسط سرور برگردانده می‌شوند به آستانه برسد یا کمتر از آن شود، تغییر گذرواژه را اجباری می‌کند. توجه داشته باشید که حداقل مقدار مفید ۲ است، زیرا تغییر گذرواژه ۲ ورود ارفاقی دیگر را مصرف می‌کند: یکی برای بررسی گذرواژه فعلی و دومی برای انجام تغییر گذرواژه.

پیش‌فرض: 0

دستورالعمل‌های تفصیلی برای پیکربندی sudo_provider در صفحه راهنمای sssd-sudo(5) آمده است.

ldap_sudo_full_refresh_interval (integer)

مدت زمانی به ثانیه که SSSD پیش از اجرای یک نوسازی کامل قواعد sudo (که تمام قواعد ذخیره‌شده روی سرور را دریافت می‌کند) منتظر می‌ماند.

مقدار باید بزرگ‌تر از ldap_sudo_smart_refresh_interval باشد.

می‌توانید با تنظیم این گزینه روی 0، نوسازی کامل را غیرفعال کنید. با این حال، باید حداقل یکی از نوسازی‌های هوشمند یا کامل فعال باشد.

پیش‌فرض: 21600 (۶ ساعت)

ldap_sudo_smart_refresh_interval (integer)

مدت زمانی به ثانیه که SSSD باید پیش از اجرای یک نوسازی هوشمند قواعد sudo (که تمام قواعد دارای USN بالاتر از بیشترین مقدار USN سرور که در حال حاضر توسط SSSD شناخته شده است را دریافت می‌کند) منتظر بماند.

اگر مشخصه‌های USN توسط سرور پشتیبانی نشوند، مشخصه modifyTimestamp به جای آن استفاده می‌شود.

نکته: بیشترین مقدار USN را می‌توان از طریق سه وظیفه به‌روزرسانی کرد: ۱) با نوسازی کامل و هوشمند sudo (در صورت یافتن قواعد به‌روزرسانی‌شده)، ۲) با شمارش کاربران و گروه‌ها (در صورت فعال بودن و یافتن کاربران یا گروه‌های به‌روزرسانی‌شده) و ۳) با اتصال مجدد به سرور (به‌طور پیش‌فرض هر ۱۵ دقیقه، ldap_connection_expire_timeout را ببینید).

می‌توانید با تنظیم این گزینه روی 0، نوسازی هوشمند را غیرفعال کنید. با این حال، باید حداقل یکی از نوسازی‌های هوشمند یا کامل فعال باشد.

پیش‌فرض: 900 (۱۵ دقیقه)

ldap_sudo_random_offset (integer)

انحراف تصادفی بین 0 و مقدار پیکربندی‌شده که هر بار با زمان‌بندی وظیفه دوره‌ای، به دوره‌های نوسازی هوشمند و کامل اضافه می‌شود. این مقدار به ثانیه است.

توجه داشته باشید که این انحراف تصادفی در اولین شروع SSSD نیز اعمال می‌شود که نخستین نوسازی قواعد sudo را به تاخیر می‌اندازد. این کار مدت زمانی را که قواعد sudo برای استفاده در دسترس نیستند طولانی‌تر می‌کند.

می‌توانید با تنظیم مقدار روی 0 این انحراف را غیرفعال کنید.

پیش‌فرض: 0 (غیرفعال)

ldap_sudo_use_host_filter (boolean)

اگر true باشد، SSSD تنها قواعدی را دریافت می‌کند که برای این ماشین قابل اعمال هستند (با استفاده از نشانی‌های میزبان/شبکه IPv4 یا IPv6 و نام‌های میزبان).

پیش‌فرض: true

ldap_sudo_hostnames (string)

فهرستی جداشده با فاصله از نام‌های میزبان یا نام‌های دامنه کاملاً مشخص (FQDN) که باید برای فیلتر کردن قواعد استفاده شوند.

اگر این گزینه خالی باشد، SSSD تلاش می‌کند نام میزبان و نام دامنه کاملاً مشخص را به‌طور خودکار شناسایی کند.

اگر ldap_sudo_use_host_filter برابر false باشد، این گزینه هیچ تاثیری ندارد.

پیش‌فرض: مشخص نشده است

ldap_sudo_ip (string)

فهرستی جداشده با فاصله از نشانی‌های میزبان/شبکه IPv4 یا IPv6 که باید برای فیلتر کردن قواعد استفاده شوند.

اگر این گزینه خالی باشد، SSSD تلاش می‌کند نشانی‌ها را به‌طور خودکار شناسایی کند.

اگر ldap_sudo_use_host_filter برابر false باشد، این گزینه هیچ تاثیری ندارد.

پیش‌فرض: مشخص نشده است

ldap_sudo_include_netgroups (boolean)

اگر true باشد، SSSD هر قاعده‌ای را که شامل یک netgroup در مشخصه sudoHost باشد دریافت می‌کند.

اگر ldap_sudo_use_host_filter برابر false باشد، این گزینه هیچ تاثیری ندارد.

پیش‌فرض: true

ldap_sudo_include_regexp (boolean)

اگر true باشد، SSSD هر قاعده‌ای را که شامل یک نویسه عام (wildcard) در مشخصه sudoHost باشد دریافت می‌کند.

اگر ldap_sudo_use_host_filter برابر false باشد، این گزینه هیچ تاثیری ندارد.


نکته
استفاده از نویسه عام (wildcard) عملیاتی است که ارزیابی آن در سمت سرور LDAP بسیار پرهزینه است!
پیش‌فرض: false

این صفحه راهنما تنها نگاشت نام مشخصه‌ها را شرح می‌دهد. برای توضیح تفصیلی معناشناسی مشخصه‌های مربوط به sudo، به sudoers.ldap(5) مراجعه کنید.

برخی از مقادیر پیش‌فرض برای پارامترهای زیر وابسته به شِمای LDAP هستند.

ldap_autofs_map_master_name (string)

نام نقشه اصلی automount در LDAP.

پیش‌فرض: auto.master

ldap_autofs_map_object_class (string)

کلاس شیء یک مدخل نقشه automount در LDAP.

پیش‌فرض: nisMap (rfc2307, autofs_provider=ad)، در غیر این صورت automountMap

ldap_autofs_map_name (string)

نام یک مدخل نقشه automount در LDAP.

پیش‌فرض: nisMapName (rfc2307, autofs_provider=ad)، در غیر این صورت automountMapName

ldap_autofs_entry_object_class (string)

کلاس شیء یک مدخل automount در LDAP. این مدخل معمولاً متناظر با یک نقطه اتصال (mount point) است.

پیش‌فرض: nisObject (rfc2307, autofs_provider=ad)، در غیر این صورت automount

ldap_autofs_entry_key (string)

کلید یک مدخل automount در LDAP. این مدخل معمولاً متناظر با یک نقطه اتصال است.

پیش‌فرض: cn (rfc2307, autofs_provider=ad)، در غیر این صورت automountKey

ldap_autofs_entry_value (string)

مقدار یک مدخل automount در LDAP. این مدخل معمولاً متناظر با یک نقطه اتصال است.

پیش‌فرض: nisMapEntry (rfc2307, autofs_provider=ad)، در غیر این صورت automountInformation

لطفاً توجه داشته باشید که automounter نقشه اصلی را فقط هنگام راه‌اندازی می‌خواند، بنابراین اگر هرگونه تغییر مرتبط با autofs در sssd.conf ایجاد شود، معمولاً لازم است پس از راه‌اندازی مجدد SSSD، دیمن automounter را نیز مجدداً راه‌اندازی کنید.

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

ldap_netgroup_search_base (string)

یک DN پایه، دامنه جستجو (scope) و فیلتر LDAP اختیاری برای محدود کردن جستجوهای LDAP برای این نوع مشخصه.

قالب نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

دامنه می‌تواند یکی از موارد “base”، “onelevel” یا “subtree” باشد. دامنه همان‌طور که در بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 مشخص شده عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای نمونه‌هایی از این نحو، لطفاً به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین دامنه یا فیلتر برای جستجوها در یک سرور Active Directory که ممکن است نتایج زیادی به همراه داشته باشد و قابلیت Range Retrieval را در پاسخ فعال کند، پشتیبانی نمی‌شود.

ldap_user_search_base (string)

یک DN پایه، دامنه جستجو (scope) و فیلتر LDAP اختیاری برای محدود کردن جستجوهای LDAP برای این نوع مشخصه.

قالب نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

دامنه می‌تواند یکی از موارد “base”، “onelevel” یا “subtree” باشد. دامنه همان‌طور که در بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 مشخص شده عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای نمونه‌هایی از این نحو، لطفاً به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین دامنه یا فیلتر برای جستجوها در یک سرور Active Directory که ممکن است نتایج زیادی به همراه داشته باشد و قابلیت Range Retrieval را در پاسخ فعال کند، پشتیبانی نمی‌شود.

ldap_group_search_base (string)

یک DN پایه، دامنه جستجو (scope) و فیلتر LDAP اختیاری برای محدود کردن جستجوهای LDAP برای این نوع مشخصه.

قالب نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

دامنه می‌تواند یکی از موارد “base”، “onelevel” یا “subtree” باشد. دامنه همان‌طور که در بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 مشخص شده عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای نمونه‌هایی از این نحو، لطفاً به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین دامنه یا فیلتر برای جستجوها در یک سرور Active Directory که ممکن است نتایج زیادی به همراه داشته باشد و قابلیت Range Retrieval را در پاسخ فعال کند، پشتیبانی نمی‌شود.


نکته

اگر گزینه “ldap_use_tokengroups” فعال باشد، جستجوها در Active Directory محدود نخواهند شد و همه عضویت‌های گروه، حتی بدون نگاشت GID بازگردانده می‌شوند. توصیه می‌شود در صورتی که نام گروه‌ها به درستی نمایش داده نمی‌شوند، این قابلیت را غیرفعال کنید.

ldap_sudo_search_base (string)

یک DN پایه، دامنه جستجو (scope) و فیلتر LDAP اختیاری برای محدود کردن جستجوهای LDAP برای این نوع مشخصه.

قالب نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

دامنه می‌تواند یکی از موارد “base”، “onelevel” یا “subtree” باشد. دامنه همان‌طور که در بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 مشخص شده عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای نمونه‌هایی از این نحو، لطفاً به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین دامنه یا فیلتر برای جستجوها در یک سرور Active Directory که ممکن است نتایج زیادی به همراه داشته باشد و قابلیت Range Retrieval را در پاسخ فعال کند، پشتیبانی نمی‌شود.

ldap_autofs_search_base (string)

یک DN پایه، دامنه جستجو (scope) و فیلتر LDAP اختیاری برای محدود کردن جستجوهای LDAP برای این نوع مشخصه.

قالب نحو:

search_base[?scope?[filter][?search_base?scope?[filter]]*]

دامنه می‌تواند یکی از موارد “base”، “onelevel” یا “subtree” باشد. دامنه همان‌طور که در بخش 4.5.1.2 از http://tools.ietf.org/html/rfc4511 مشخص شده عمل می‌کند.

فیلتر باید یک فیلتر جستجوی معتبر LDAP طبق مشخصات http://www.ietf.org/rfc/rfc2254.txt باشد.

برای نمونه‌هایی از این نحو، لطفاً به بخش مثال‌های “ldap_search_base” مراجعه کنید.

پیش‌فرض: مقدار ldap_search_base

لطفاً توجه داشته باشید که تعیین دامنه یا فیلتر برای جستجوها در یک سرور Active Directory که ممکن است نتایج زیادی به همراه داشته باشد و قابلیت Range Retrieval را در پاسخ فعال کند، پشتیبانی نمی‌شود.

قابلیت جایگزینی هنگام خرابی به بک‌اندها اجازه می‌دهد تا در صورت خرابی سرور فعلی، به‌طور خودکار به سرور دیگری سوییچ کنند.

فهرست سرورها به‌صورت فهرستی جداشده با ویرگول مشخص می‌شود؛ هر تعداد فاصله در اطراف ویرگول مجاز است. سرورها به ترتیب اولویت فهرست می‌شوند. فهرست می‌تواند شامل هر تعداد سرور باشد.

برای هر گزینهٔ پیکربندی مجهز به قابلیت جایگزینی هنگام خرابی، دو متغیر وجود دارد: primary و backup. ایده این است که سرورهای فهرست اصلی (primary) ترجیح داده می‌شوند و سرورهای پشتیبان (backup) تنها در صورتی جستجو می‌شوند که هیچ سرور اصلی‌ای در دسترس نباشد. اگر یک سرور پشتیبان انتخاب شود، مهلت زمانی ۳۱ ثانیه‌ای تنظیم می‌شود. پس از این مهلت زمانی، SSSD به‌طور دوره‌ای تلاش می‌کند تا دوباره به یکی از سرورهای اصلی متصل شود. در صورت موفقیت، سرور فعال فعلی (پشتیبان) جایگزین خواهد شد.

سازوکار جایگزینی هنگام خرابی میان یک ماشین و یک سرویس تمایز قائل می‌شود. بک‌اند ابتدا تلاش می‌کند تا نام میزبان ماشین موردنظر را ارزیابی (resolve) کند؛ اگر این تلاش ناموفق باشد، ماشین آفلاین تلقی می‌شود. هیچ تلاش دیگری برای اتصال به این ماشین برای هر سرویس دیگری صورت نخواهد گرفت. اگر ارزیابی موفقیت‌آمیز باشد، بک‌اند تلاش می‌کند به سرویسی روی این ماشین متصل شود. اگر تلاش برای اتصال به سرویس شکست بخورد، تنها آن سرویس خاص آفلاین در نظر گرفته می‌شود و بک‌اند به‌طور خودکار به سرویس بعدی سوییچ می‌کند. ماشین همچنان آنلاین تلقی شده و ممکن است برای سرویس دیگری دوباره امتحان شود.

تلاش‌های بعدی برای اتصال به ماشین‌ها یا سرویس‌هایی که به‌عنوان آفلاین علامت‌گذاری شده‌اند، پس از یک بازه زمانی مشخص انجام می‌شود؛ این مقدار در حال حاضر روی ۳۰ ثانیه کدگذاری ثابت (hard-coded) شده است.

اگر ماشین دیگری برای امتحان وجود نداشته باشد، کل بک‌اند به حالت آفلاین تغییر وضعیت می‌دهد و سپس هر ۳۰ ثانیه یک بار برای اتصال مجدد تلاش می‌کند.

ارزیابی یک سرور جهت اتصال می‌تواند به سادگی اجرای یک پرس‌وجوی DNS تکی باشد یا شامل چندین مرحله شود، مانند یافتن سایت (site) صحیح یا آزمودن چندین نام میزبان در صورتی که برخی از سرورهای پیکربندی‌شده در دسترس نباشند. سناریوهای پیچیده‌تر ممکن است مدتی طول بکشند و SSSD باید میان دادن زمان کافی برای اتمام فرایند ارزیابی و از سوی دیگر، تلاش نکردن بیش از حد طولانی پیش از رفتن به حالت آفلاین، تعادل برقرار کند. اگر گزارش‌های رفع اشکال در SSSD نشان می‌دهند که ارزیابی سرور پیش از برقراری ارتباط با یک سرور زنده به پایان مهلت زمانی می‌رسد، می‌توانید تغییر مهلت‌های زمانی را در نظر بگیرید.

این بخش متغیرهای تنظیمی موجود را فهرست می‌کند. لطفاً به توضیحات آن‌ها در صفحهٔ راهنمای sssd.conf(5) مراجعه کنید.

dns_resolver_server_timeout

زمان به میلی‌ثانیه که مشخص می‌کند SSSD پیش از رفتن سراغ سرور بعدی، چقدر با یک سرور DNS مشخص گفتگو کند.

پیش‌فرض: 1000

dns_resolver_op_timeout

زمان به ثانیه که مشخص می‌کند SSSD پیش از امتحان نام میزبان یا دامنهٔ شناسایی بعدی، چه مدت برای ارزیابی یک پرس‌وجوی DNS منفرد (مانند ارزیابی نام میزبان یا یک رکورد SRV) تلاش کند.

پیش‌فرض: 3

dns_resolver_timeout

مدت زمانی که SSSD تلاش می‌کند یک سرویس جایگزینی هنگام خرابی را ارزیابی کند. این ارزیابی سرویس در درون خود ممکن است شامل چندین مرحله باشد، مانند ارزیابی پرس‌وجوهای DNS SRV یا مکان‌یابی سایت.

پیش‌فرض: 6

برای ارائه‌دهندگان مبتنی بر LDAP، عملیات ارزیابی به‌عنوان بخشی از عملیات اتصال LDAP انجام می‌شود. بنابراین، مهلت زمانی “ldap_opt_timeout” نیز باید روی مقداری بزرگ‌تر از “dns_resolver_timeout” تنظیم شود، که آن هم به نوبه خود باید روی مقداری بزرگ‌تر از “dns_resolver_op_timeout” تنظیم گردد، که آن هم باید از “dns_resolver_server_timeout” بزرگ‌تر باشد.

قابلیت شناسایی سرویس به بک‌اندها اجازه می‌دهد تا با استفاده از یک پرس‌وجوی ویژهٔ DNS به‌طور خودکار سرورهای مناسب را برای اتصال پیدا کنند. این قابلیت برای سرورهای پشتیبان پشتیبانی نمی‌شود.

اگر سروری مشخص نشده باشد، بک‌اند به‌طور خودکار از شناسایی سرویس برای یافتن سرور استفاده می‌کند. به‌طور اختیاری، کاربر می‌تواند با قرار دادن کلمهٔ کلیدی ویژهٔ “_srv_” در فهرست سرورها، از هر دو روش آدرس‌های سرور ثابت و شناسایی سرویس استفاده کند. ترتیب اولویت حفظ می‌شود. این ویژگی برای مواردی مفید است که مثلاً کاربر ترجیح می‌دهد تا جای ممکن از شناسایی سرویس استفاده کند و در صورتی که هیچ سروری از طریق DNS کشف نشد، به یک سرور خاص رجوع کند.

لطفاً برای جزئیات بیشتر به پارامتر “dns_discovery_domain” در صفحهٔ راهنمای sssd.conf(5) مراجعه کنید.

پرس‌وجوها معمولاً _tcp را به‌عنوان پروتکل تعیین می‌کنند. موارد استثنا در توضیحات گزینهٔ مربوطه مستند شده است.

برای اطلاعات بیشتر دربارهٔ سازوکار شناسایی سرویس، به RFC 2782 مراجعه کنید.

قابلیت نگاشت شناسه به SSSD اجازه می‌دهد تا بدون نیاز به گسترش صفات کاربری توسط مدیران سیستم جهت پشتیبانی از صفات POSIX برای شناسه‌های کاربر و گروه، به‌عنوان کلاینت Active Directory عمل کند.

نکته: هنگامی که ID-mapping فعال است، صفات uidNumber و gidNumber نادیده گرفته می‌شوند. این کار برای جلوگیری از احتمال تداخل بین مقادیر تخصیص‌یافته به‌طور خودکار و مقادیر دستی است. اگر نیاز به استفاده از مقادیر تخصیص‌یافته به صورت دستی دارید، تمام مقادیر باید به‌صورت دستی اختصاص یابند.

لطفاً توجه داشته باشید که تغییر گزینه‌های پیکربندی مربوط به نگاشت شناسه باعث تغییر شناسه‌های کاربر و گروه خواهد شد. در حال حاضر، SSSD از تغییر شناسه‌ها پشتیبانی نمی‌کند، بنابراین پایگاه‌دادهٔ SSSD باید حذف شود. از آنجا که گذرواژه‌های ذخیره‌شده در حافظهٔ موقت (کَش) نیز در پایگاه‌داده نگهداری می‌شوند، حذف پایگاه‌داده تنها زمانی باید انجام شود که سرورهای احراز هویت در دسترس باشند، در غیر این صورت ممکن است دسترسی کاربران قفل شود. به منظور ذخیرهٔ گذرواژه در کَش، باید یک احراز هویت انجام گیرد. استفاده از sss_cache(8) برای حذف پایگاه‌داده کافی نیست، بلکه این فرایند شامل موارد زیر است:

•اطمینان از در دسترس بودن سرورهای راه دور
•متوقف کردن سرویس SSSD
•حذف پایگاه‌داده
•شروع به کار سرویس SSSD

علاوه بر این، از آنجا که تغییر شناسه‌ها ممکن است نیازمند تطبیق سایر ویژگی‌های سیستم مانند مالکیت فایل و دایرکتوری باشد، توصیه می‌شود از قبل برنامه‌ریزی کرده و پیکربندی نگاشت شناسه را به‌طور کامل آزمایش کنید.

سامانهٔ Active Directory یک objectSID برای هر شیء کاربر و گروه در دایرکتوری فراهم می‌کند. این objectSID را می‌توان به مؤلفه‌هایی تجزیه کرد که هویت دامنهٔ Active Directory و شناسهٔ نسبی (RID) شیء کاربر یا گروه را نشان می‌دهند.

الگوریتم ID-mapping در SSSD دامنه‌ای از UIDهای موجود را گرفته و آن را به بخش‌های مؤلفه‌ای هم‌اندازه - موسوم به «اسلایس» (slices) - تقسیم می‌کند. هر اسلایس نشان‌دهندهٔ فضای در دسترس برای یک دامنهٔ Active Directory است.

هنگامی که یک مدخل کاربر یا گروه برای یک دامنهٔ خاص برای نخستین بار مشاهده می‌شود، SSSD یکی از اسلایس‌های در دسترس را به آن دامنه اختصاص می‌دهد. به منظور تکرارپذیر بودن این تخصیص اسلایس در ماشین‌های کلاینت مختلف، اسلایس بر اساس الگوریتم زیر انتخاب می‌شود:

رشتهٔ SID به الگوریتم murmurhash3 فرستاده می‌شود تا به یک مقدار درهم‌سازی‌شدهٔ ۳۲ بیتی تبدیل گردد. سپس باقیماندهٔ تقسیم این مقدار بر تعداد کل اسلایس‌های موجود محاسبه می‌شود تا اسلایس مورد نظر انتخاب گردد.

نکته: احتمال وقوع تصادم در درهم‌سازی و باقیماندهٔ تقسیم بعدی وجود دارد. در این وضعیت‌ها، اسلایسِ موجود بعدی انتخاب خواهد شد، اما ممکن است بازتولید همان مجموعه اسلایس دقیق روی سایر ماشین‌ها امکان‌پذیر نباشد (زیرا ترتیبی که دیده می‌شوند اسلایس آن‌ها را مشخص می‌کند). در این شرایط، توصیه می‌شود که یا از صفات صریح POSIX در Active Directory استفاده شود (غیرفعال کردن ID-mapping) یا یک دامنهٔ پیش‌فرض پیکربندی شود تا تضمین گردد حداقل یکی همیشه سازگار است. برای جزئیات به “پیکربندی” مراجعه کنید.

حداقل پیکربندی (در بخش “[domain/DOMAINNAME]”:

ldap_id_mapping = True
ldap_schema = ad

پیکربندی پیش‌فرض منجر به پیکربندی ۱۰٬۰۰۰ اسلایس می‌شود که هرکدام قادر به نگهداری تا ۲۰۰٬۰۰۰ شناسه هستند، که از ۲۰۰٬۰۰۰ شروع شده و تا ۲٬۰۰۰٬۲۰۰٬۰۰۰ ادامه می‌یابد. این مقدار باید برای اکثر محیط‌ها کافی باشد.

پیکربندی پیشرفته

ldap_idmap_range_min (عدد صحیح)

کران پایین (شامل خود مقدار) محدودهٔ شناسه‌های POSIX را مشخص می‌کند که برای نگاشت SIDهای کاربر و گروه Active Directory استفاده می‌شود. این نخستین شناسهٔ POSIX است که می‌تواند برای نگاشت استفاده شود.

نکته: این گزینه با “min_id” متفاوت است، از این جهت که “min_id” برای فیلتر کردن خروجی درخواست‌ها به این دامنه عمل می‌کند، در حالی که این گزینه محدودهٔ تخصیص شناسه را کنترل می‌کند. این تمایزی ظریف است، اما توصیهٔ عمومی این است که “min_id” کوچک‌تر یا مساوی با “ldap_idmap_range_min” باشد.

پیش‌فرض: 200000

ldap_idmap_range_max (عدد صحیح)

کران بالا (بدون احتساب خود مقدار) محدودهٔ شناسه‌های POSIX را مشخص می‌کند که برای نگاشت SIDهای کاربر و گروه Active Directory استفاده می‌شود. این نخستین شناسهٔ POSIX است که دیگر نمی‌تواند برای نگاشت استفاده شود؛ یعنی یک واحد بزرگ‌تر از آخرین شناسه‌ای است که می‌تواند برای نگاشت به کار رود.

نکته: این گزینه با “max_id” متفاوت است، از این جهت که “max_id” برای فیلتر کردن خروجی درخواست‌ها به این دامنه عمل می‌کند، در حالی که این گزینه محدودهٔ تخصیص شناسه را کنترل می‌کند. این تمایزی ظریف است، اما توصیهٔ عمومی این است که “max_id” بزرگ‌تر یا مساوی با “ldap_idmap_range_max” باشد.

پیش‌فرض: 2000200000

ldap_idmap_range_size (عدد صحیح)

تعداد شناسه‌های موجود برای هر اسلایس را مشخص می‌کند. اگر اندازهٔ محدوده به‌طور مساوی بر مقادیر حداقل و حداکثر بخش‌پذیر نباشد، تا حد ممکن اسلایس‌های کامل ایجاد خواهد کرد.

نکته: مقدار این گزینه باید دست‌کم به اندازهٔ بالاترین RID کاربری در نظر گرفته شده برای استفاده در سرور Active Directory باشد. جستجوی کاربر و ورود به سیستم برای هر کاربری که RID او بزرگ‌تر از این مقدار باشد، شکست خواهد خورد.

برای نمونه، اگر آخرین کاربر اضافه‌شده در Active Directory دارای objectSid=S-1-5-21-2153326666-2176343378-3404031434-1107 باشد، “ldap_idmap_range_size” باید دست‌کم 1108 باشد، چرا که اندازهٔ محدوده برابر با بیشینهٔ RID منهای کمینهٔ RID به‌علاوهٔ یک است (برای مثال: 1108 = 1107 - 0 + 1).

برنامه‌ریزی از پیش برای توسعهٔ آینده مهم است، چرا که تغییر این مقدار منجر به تغییر همهٔ نگاشت‌های شناسه در سیستم خواهد شد و باعث می‌شود شناسه‌های محلی کاربران با شناسه‌های پیشین آن‌ها متفاوت گردد.

پیش‌فرض: 200000

ldap_idmap_default_domain_sid (رشته)

شناسهٔ SID دامنه را برای دامنهٔ پیش‌فرض تعیین می‌کند. این کار تضمین می‌کند که این دامنه همیشه به اسلایس صفر در نقشهٔ شناسه اختصاص یابد و الگوریتم murmurhash توضیح داده شده در بالا دور زده شود.

پیش‌فرض: تنظیم‌نشده

ldap_idmap_default_domain (رشته)

نام دامنهٔ پیش‌فرض را تعیین می‌کند.

پیش‌فرض: تنظیم‌نشده

ldap_idmap_autorid_compat (بولی)

رفتار الگوریتم ID-mapping را تغییر می‌دهد تا شباهت بیشتری به الگوریتم “idmap_autorid” در winbind پیدا کند.

هنگامی که این گزینه پیکربندی شود، تخصیص دامنه‌ها از اسلایس صفر آغاز شده و با هر دامنهٔ اضافی، به‌صورت یکنواخت افزایش می‌یابد.

نکته: این الگوریتم غیرقطعی (non-deterministic) است (به ترتیبی که کاربران و گروه‌ها درخواست می‌شوند بستگی دارد). اگر این حالت برای سازگاری با ماشین‌های اجراکنندهٔ winbind مورد نیاز است، توصیه می‌شود از گزینهٔ “ldap_idmap_default_domain_sid” نیز استفاده کنید تا تضمین شود دست‌کم یک دامنه به‌طور پیوسته به اسلایس صفر تخصیص می‌یابد.

پیش‌فرض: False

ldap_idmap_helper_table_size (عدد صحیح)

حداکثر تعداد اسلایس‌های ثانویه که هنگام انجام نگاشت از شناسهٔ UNIX به SID بررسی می‌شود.

نکته: هنگامی که SID به شناسهٔ UNIX نگاشت می‌شود و بخش RID مربوط به SID خارج از محدودهٔ اسلایس‌های ثانویهٔ تولیدشده تاکنون باشد، ممکن است اسلایس‌های ثانویهٔ اضافی تولید شوند. اگر مقدار ldap_idmap_helper_table_size برابر با 0 باشد، هیچ اسلایس ثانویهٔ اضافی‌ای تولید نمی‌شود.

پیش‌فرض: 10

SSSD از جستجوی نام‌های Well-Known SIDها (یعنی SIDهایی با معانی خاص و ثابت) پشتیبانی می‌کند. از آنجا که کاربران و گروه‌های عمومی مرتبط با این Well-Known SIDها معادلی در محیط Linux/UNIX ندارند، هیچ شناسه POSIX ID برای این اشیاء در دسترس نیست.

فضای نام SID در مراجع (authorities) سازماندهی شده است که می‌توان آن‌ها را به عنوان دامنه‌های متفاوتی در نظر گرفت. مراجع مربوط به Well-Known SIDها عبارتند از:

•Null Authority
•World Authority
•Local Authority
•Creator Authority
•Mandatory Label Authority
•Authentication Authority
•NT Authority
•Built-in

نسخه با حروف بزرگ (capitalized) این نام‌ها هنگام بازگرداندن نام کاملاً مشخص (fully qualified name) یک Well-Known SID به عنوان نام دامنه استفاده می‌شود.

از آنجا که برخی ابزارها امکان اصلاح اطلاعات کنترل دسترسی مبتنی بر SID را به جای استفاده مستقیم از SID با استفاده از نام فراهم می‌کنند، SSSD از جستجوی SID از طریق نام نیز پشتیبانی می‌کند. برای جلوگیری از تداخل، فقط از نام‌های کاملاً مشخص می‌توان برای جستجوی Well-Known SIDها استفاده کرد. در نتیجه نام‌های دامنه “NULL AUTHORITY”، “WORLD AUTHORITY”، “LOCAL AUTHORITY”، “CREATOR AUTHORITY”، “MANDATORY LABEL AUTHORITY”، “AUTHENTICATION AUTHORITY”، “NT AUTHORITY” و “BUILTIN” نباید به عنوان نام دامنه در sssd.conf استفاده شوند.

مثال زیر فرض می‌کند که SSSD به درستی پیکربندی شده و LDAP به عنوان یکی از دامنه‌ها در بخش [domains] تنظیم شده است.

[domain/LDAP]
id_provider = ldap
auth_provider = ldap
ldap_uri = ldap://ldap.mydomain.org
ldap_search_base = dc=mydomain,dc=org
ldap_tls_reqcert = demand
cache_credentials = true

مثال زیر فرض می‌کند که SSSD به درستی پیکربندی شده و از ldap_access_order=lockout استفاده می‌کند.

[domain/LDAP]
id_provider = ldap
auth_provider = ldap
access_provider = ldap
ldap_access_order = lockout
ldap_pwdlockout_dn = cn=ppolicy,ou=policies,dc=mydomain,dc=org
ldap_uri = ldap://ldap.mydomain.org
ldap_search_base = dc=mydomain,dc=org
ldap_tls_reqcert = demand
cache_credentials = true

توضیحات برخی از گزینه‌های پیکربندی در این صفحه راهنما بر اساس صفحه راهنمای ldap.conf(5) از توزیع OpenLDAP 2.4 است.

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