PAM_SSS(8) SSSD Manual pages PAM_SSS(8)

pam_sss - ماژول PAM برای SSSD

pam_sss.so [quiet] [forward_pass] [use_first_pass] [use_authtok] [retry=N] [ignore_unknown_user] [ignore_authinfo_unavail] [domains=X] [allow_missing_name] [prompt_always] [try_cert_auth] [require_cert_auth] [allow_chauthtok_by_root]

ماژول pam_sss.so رابط PAM برای دیمن سرویس‌های امنیت سیستم (SSSD) است. خطاها و نتایج از طریق syslog(3) با امکانات LOG_AUTHPRIV ثبت می‌شوند.

quiet

عدم ثبت پیام‌های گزارش برای کاربران ناشناخته.

forward_pass

در صورت تنظیم بودن forward_pass، گذرواژه واردشده در پشته قرار می‌گیرد تا سایر ماژول‌های PAM بتوانند از آن استفاده کنند.

use_first_pass

آرگومان use_first_pass ماژول را مجبور می‌کند از گذرواژه ماژول‌های قبلی پشته استفاده کند و هرگز از کاربر درخواست گذرواژه نخواهد کرد - اگر گذرواژه‌ای در دسترس نباشد یا نامناسب باشد، دسترسی کاربر رد خواهد شد.

use_authtok

هنگام تغییر گذرواژه، ماژول را مجبور می‌کند گذرواژه جدید را برابر با گذرواژه ارائه‌شده توسط ماژول قبلی پشته قرار دهد.

retry=N

در صورت مشخص شدن، اگر احراز هویت با شکست مواجه شود، N بار دیگر از کاربر گذرواژه خواسته می‌شود. مقدار پیش‌فرض 0 است.

لطفاً توجه داشته باشید که اگر برنامه‌ای که PAM را فراخوانی می‌کند مکالمه با کاربر را خودش مدیریت کند، ممکن است این گزینه طبق انتظار کار نکند. یک نمونه معمولی sshd همراه با PasswordAuthentication است.

ignore_unknown_user

اگر این گزینه مشخص شود و کاربر وجود نداشته باشد، ماژول PAM مقدار PAM_IGNORE را برمی‌گرداند. این امر باعث می‌شود چارچوب PAM این ماژول را نادیده بگیرد.

ignore_authinfo_unavail

مشخص می‌کند که اگر ماژول PAM نتواند با دیمن SSSD ارتباط برقرار کند، مقدار PAM_IGNORE را برگرداند. این امر باعث می‌شود چارچوب PAM این ماژول را نادیده بگیرد.

domains

به مدیر سیستم امکان می‌دهد دامنه‌هایی را که یک سرویس خاص PAM مجاز به احراز هویت در برابر آن‌هاست محدود کند. قالب آن یک لیست جداشده با کاما از نام دامنه‌های SSSD است، همان‌طور که در فایل sssd.conf مشخص شده است.

نکته: اگر این گزینه برای سرویسی استفاده شود که به عنوان کاربر ریشه (root) اجرا نمی‌شود، مثلاً یک وب‌سرور، باید همراه با گزینه‌های “pam_trusted_users” و “pam_public_domains” استفاده شود. لطفاً برای اطلاعات بیشتر در مورد این دو گزینه پاسخ‌دهنده PAM، صفحه راهنمای sssd.conf(5) را ببینید.

allow_missing_name

هدف اصلی این گزینه این است که به SSSD اجازه دهد نام کاربری را بر اساس اطلاعات اضافی، مانند گواهی کارت هوشمند (Smartcard)، تعیین کند.

مورد استفاده فعلی، مدیران ورود به سیستم هستند که می‌توانند کارت‌خوان کارت هوشمند را برای رویدادهای کارت نظارت کنند. در صورت درج کارت هوشمند، مدیر ورود یک پشته PAM را فراخوانی می‌کند که شامل خطی مانند زیر است:

auth sufficient pam_sss.so allow_missing_name

در این حالت SSSD سعی می‌کند نام کاربر را بر اساس محتوای کارت هوشمند تعیین کند، آن را به pam_sss برمی‌گرداند که در نهایت آن را روی پشته PAM قرار می‌دهد.

prompt_always

همیشه از کاربر درخواست اطلاعات هویتی (credentials) شود. با این گزینه، اطلاعات هویتی درخواست‌شده توسط سایر ماژول‌های PAM (معمولاً گذرواژه) نادیده گرفته می‌شود و pam_sss دوباره اطلاعات هویتی را درخواست می‌کند. بر اساس پاسخ پیش‌احراز هویت توسط SSSD، ممکن است pam_sss درخواست گذرواژه، پین‌کد کارت هوشمند یا سایر اطلاعات هویتی را بدهد.

try_cert_auth

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

اگر هیچ کارت هوشمندی در دسترس نباشد یا احراز هویت مبتنی بر گواهی برای سرویس فعلی مجاز نباشد، مقدار PAM_AUTHINFO_UNAVAIL بازگردانده می‌شود.

require_cert_auth

الزام احراز هویت مبتنی بر گواهی، یعنی احراز هویت با کارت هوشمند یا دستگاه‌های مشابه. اگر کارت هوشمند در دسترس نباشد، از کاربر خواسته می‌شود یکی وارد کند. برنامه SSSD تا زمانی که مهلت زمانی تعریف‌شده توسط p11_wait_for_card_timeout سپری شود منتظر کارت هوشمند می‌ماند؛ لطفاً برای جزئیات sssd.conf(5) را ببینید.

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

allow_chauthtok_by_root

به طور پیش‌فرض، زمانی که pam_sss.so توسط کاربر ریشه (root) فراخوانی می‌شود، عملیات chauthtok در PAM بلافاصله مقدار PAM_SUCCESS را برمی‌گرداند.

این گزینه این رفتار را غیرفعال می‌کند و امکان تغییر توکن‌های احراز هویت را هنگام اجرا به عنوان root فراهم می‌سازد.

تمامی انواع ماژول‌ها (account، auth، password و session) ارائه می‌شوند.

اگر پاسخ‌دهنده PAM مربوط به SSSD در حال اجرا نباشد، مثلاً اگر سوکت پاسخ‌دهنده PAM در دسترس نباشد، pam_sss هنگام فراخوانی به عنوان ماژول account مقدار PAM_USER_UNKNOWN را برمی‌گرداند تا از بروز مشکلات با کاربران منابع دیگر در طول کنترل دسترسی جلوگیری شود.

PAM_SUCCESS

عملیات PAM با موفقیت به پایان رسید.

PAM_USER_UNKNOWN

کاربر برای سرویس احراز هویت شناخته‌شده نیست یا پاسخ‌دهنده PAM مربوط به SSSD در حال اجرا نیست.

PAM_AUTH_ERR

شکست در احراز هویت. همچنین ممکن است در صورت بروز مشکل در دریافت گواهی بازگردانده شود.

PAM_PERM_DENIED

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

PAM_IGNORE

گزینه‌های ignore_unknown_user و ignore_authinfo_unavail را ببینید.

PAM_AUTHTOK_ERR

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

PAM_AUTHINFO_UNAVAIL

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

PAM_BUF_ERR

یک خطای حافظه رخ داد. همچنین ممکن است زمانی که گزینه‌های use_first_pass یا use_authtok تنظیم شده باشند اما گذرواژه‌ای از ماژول قبلی پشته یافت نشود، بازگردانده شود.

PAM_SYSTEM_ERR

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

PAM_CRED_ERR

عدم توانایی در تنظیم اطلاعات هویتی کاربر.

PAM_CRED_INSUFFICIENT

برنامه اطلاعات هویتی کافی برای احراز هویت کاربر را ندارد. به عنوان مثال، نبود پین در هنگام احراز هویت کارت هوشمند یا نبود فاکتور در احراز هویت دومرحله‌ای.

PAM_SERVICE_ERR

خطا در ماژول سرویس.

PAM_NEW_AUTHTOK_REQD

توکن احراز هویت کاربر منقضی شده است.

PAM_ACCT_EXPIRED

حساب کاربری منقضی شده است.

PAM_SESSION_ERR

عدم توانایی در واکشی قوانین IPA Desktop Profile یا اطلاعات کاربر.

PAM_CRED_UNAVAIL

عدم توانایی در بازیابی اعتبارنامه‌های کاربر کربروس (Kerberos).

PAM_NO_MODULE_DATA

هیچ روش احراز هویتی توسط Kerberos یافت نشد. این ممکن است در صورتی رخ دهد که به کاربر کارت هوشمند اختصاص یافته باشد اما افزونه pkint روی کلاینت در دسترس نباشد.

PAM_CONV_ERR

شکست در گفتگو (conversation).

PAM_AUTHTOK_LOCK_BUSY

هیچ KDC مناسبی برای تغییر گذرواژه در دسترس نیست.

PAM_ABORT

فراخوانی ناشناخته PAM.

PAM_MODULE_UNKNOWN

وظیفه یا دستور پشتیبانی‌نشده PAM.

PAM_BAD_ITEM

ماژول احراز هویت نمی‌تواند اطلاعات هویتی کارت هوشمند را مدیریت کند.

اگر بازنشانی گذرواژه توسط ریشه (root) به دلیل اینکه ارائه‌دهنده مربوطه در SSSD از بازنشانی گذرواژه پشتیبانی نمی‌کند با شکست مواجه شود، پیامی سفارشی می‌تواند نمایش داده شود. این پیام می‌تواند به عنوان مثال حاوی دستورالعمل‌هایی در مورد نحوه بازنشانی گذرواژه باشد.

پیام از فایل pam_sss_pw_reset_message.LOC خوانده می‌شود که در آن LOC بیانگر رشته محلی (locale) بازگردانده‌شده توسط setlocale(3) است. اگر فایل منطبقی وجود نداشته باشد، محتوای pam_sss_pw_reset_message.txt نمایش داده می‌شود. کاربر ریشه (root) باید مالک فایل‌ها باشد و تنها root می‌تواند مجوز خواندن و نوشتن داشته باشد در حالی که سایر کاربران باید فقط مجوز خواندن داشته باشند.

این فایل‌ها در دایرکتوری /etc/sssd/customize/DOMAIN_NAME/ جستجو می‌شوند. اگر فایل منطبقی موجود نباشد، یک پیام عمومی نمایش داده می‌شود.

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)

The SSSD upstream - https://github.com/SSSD/sssd

06/09/2026 SSSD