PAM_ACCESS(8) Linux-PAM Manual PAM_ACCESS(8)

pam_access - ماژول PAM برای کنترل دسترسی ورود بر اساس جدول ورود به سیستم

pam_access.so [debug] [noaudit] [nodefgroup] [nodns] [quiet_log] [accessfile=file] [fieldsep=sep] [listsep=sep]

ماژول PAM با نام pam_access عمدتاً برای مدیریت دسترسی است. این ماژول کنترل دسترسی ورود به سبک logdaemon را بر اساس نام‌های کاربری ورود، نام‌های میزبان یا دامنه، آدرس‌های اینترنتی یا شماره‌های شبکه، یا بر اساس نام‌های خطوط پایانه، مقادیر $DISPLAY در X یا نام‌های سرویس PAM در صورت ورودهای غیرشبکه‌ای فراهم می‌کند.

به‌طور پیش‌فرض قوانین مدیریت دسترسی از فایل پیکربندی /etc/security/access.conf خوانده می‌شوند، در صورتی که فایل دیگری را مشخص نکرده باشید. سپس فایل‌های *.conf به‌صورت جداگانه از دایرکتوری /etc/security/access.d/ خوانده می‌شوند. فایل‌ها یکی پس از دیگری بر اساس ترتیب محلی سیستم (locale) پردازش می‌شوند. اثر این فایل‌های جداگانه همانند الحاق همه فایل‌ها به یکدیگر به ترتیب خواندن است. این بدان معناست که به محض تطابق یک الگو در یک فایل، فایل‌های بعدی پردازش نخواهند شد. اگر یک فایل پیکربندی صریحاً با گزینه accessfile مشخص شود، فایل‌های موجود در دایرکتوری فوق بررسی نمی‌شوند.

اگر Linux PAM با پشتیبانی از حسابرسی (audit) کامپایل شده باشد، این ماژول هنگام رد دسترسی بر اساس مبدأ (میزبان، tty و غیره) آن را گزارش خواهد داد.

accessfile=/path/to/access.conf

مشخص کردن یک فایل پیکربندی جایگزین با ساختار access.conf جهت لغو پیش‌فرض. این ویژگی می‌تواند زمانی مفید باشد که سرویس‌های مختلف به فهرست‌های دسترسی متفاوتی نیاز دارند.

debug

اطلاعات اشکال‌زدایی زیادی با syslog(3) چاپ می‌شود.

noaudit

ورودها از میزبان‌ها و ttyهای غیرمجاز را به زیرسیستم حسابرسی گزارش ندهد.

nodefgroup

توکن‌های کاربری که درون پرانتز قرار نگرفته‌اند با پایگاه‌داده گروه‌ها مطابقت داده نخواهند شد. پیش‌فرض سازگار با گذشته این است که تطبیق با پایگاه‌داده گروه‌ها حتی برای توکن‌هایی که درون پرانتز نیستند نیز بررسی شود.

nodns

تلاشی برای حل نام توکن‌ها به عنوان نام میزبان صورت نگیرد و تنها آدرس‌های IPv4 و IPv6 بازشناسی شوند. این بدان معناست که برای مجاز کردن ورود از یک میزبان از راه دور، آدرس‌های IP باید در access.conf مشخص شوند.

quiet_log

موارد رد دسترسی را در syslog(3) ثبت (log) نکند.

fieldsep=separators

این گزینه نویسه جداکننده فیلد را که pam_access هنگام پردازش فایل پیکربندی دسترسی تشخیص می‌دهد، تغییر می‌دهد. برای مثال: fieldsep=| باعث می‌شود نویسه پیش‌فرض `:' به عنوان بخشی از مقدار فیلد در نظر گرفته شود و `|' تبدیل به جداکننده فیلد شود. این کار می‌تواند در سامانه‌ای که قصد دارد از pam_access برای برنامه‌های تحت X استفاده کند کاربردی باشد، زیرا مقدار قلم PAM_TTY معمولاً به فرم "hostname:0" است که حاوی نویسه `:' در مقدار خود می‌باشد. اما نباید به این گزینه نیازی داشته باشید.

listsep=separators

این گزینه نویسه جداکننده فهرست را که pam_access هنگام پردازش فایل پیکربندی دسترسی تشخیص می‌دهد، تغییر می‌دهد. برای مثال: listsep=, باعث می‌شود نویسه‌های پیش‌فرض ` ' (فاصله) و `\t' (تب) به عنوان بخشی از مقدار عنصر فهرست تلقی شوند و `,' تبدیل به تنها جداکننده عناصر فهرست گردد. این کار در سامانه‌ای که اطلاعات گروه را از یک دامنه Windows دریافت می‌کند که گروه‌های پیش‌فرض توکار آن مانند "Domain Users" یا "Domain Admins" شامل فاصله هستند، می‌تواند مفید باشد.

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

PAM_SUCCESS

دسترسی اعطا شد.

PAM_PERM_DENIED

دسترسی اعطا نشد.

PAM_IGNORE

تابع pam_setcred فراخوانی شد که هیچ کاری انجام نمی‌دهد.

PAM_ABORT

همه داده‌ها یا گزینه‌های مربوطه دریافت نشدند.

PAM_USER_UNKNOWN

کاربر برای سیستم ناشناخته است.

/etc/security/access.conf

فایل پیکربندی پیش‌فرض

access.conf(5)، pam.d(5)، pam(7).

طرح کنترل دسترسی ورود به سبک logdaemon توسط Wietse Venema طراحی و پیاده‌سازی شده است. ماژول PAM با نام pam_access توسط Alexei Nogin <alexei@nogin.dnttm.ru> توسعه یافته است. پشتیبانی از IPv6 و قابلیت network(address) / netmask توسط Mike Becher <mike.becher@lrz-muenchen.de> توسعه داده و ارائه شده است.

06/29/2025 Linux-PAM