'\" t .\" Title: pam_faillock .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.79.2 .\" Date: 06/29/2025 .\" Manual: Linux-PAM Manual .\" Source: Linux-PAM .\" Language: Persian .\" .TH "PAM_FAILLOCK" "8" "2025-06-29" "Linux\-PAM" "راهنمای لینوکس PAM" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" pam_faillock \- ماژول PAM برای قفل کردن حساب‌ها پس از تلاش‌های ناموفق ورود .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBauth\ \&.\&.\&.\ pam_faillock\&.so\fR\ 'u \fBauth \&.\&.\&. pam_faillock\&.so\fR {preauth|authfail|authsucc} [conf=\fI/path/to/config\-file\fR] [dir=\fI/path/to/tally\-directory\fR] [even_deny_root] [deny=\fIn\fR] [fail_interval=\fIn\fR] [unlock_time=\fIn\fR] [root_unlock_time=\fIn\fR] [admin_group=\fIname\fR] [audit] [silent] [no_log_info] .HP \w'\fBaccount\ \&.\&.\&.\ pam_faillock\&.so\fR\ 'u \fBaccount \&.\&.\&. pam_faillock\&.so\fR [dir=\fI/path/to/tally\-directory\fR] [no_log_info] .SH "توضیحات (DESCRIPTION)" .PP این ماژول فهرستی از تلاش‌های ناموفق احراز هویت را برای هر کاربر در یک بازه زمانی مشخص نگهداری می‌کند و در صورتی که تعداد دفعات متوالی احراز هویت ناموفق بیشتر از \fIdeny\fR باشد، حساب کاربری را قفل می‌کند\&. .PP به‌طور معمول، تلاش‌های ناموفق برای احراز هویت \fIroot\fR باعث مسدود شدن حساب کاربری ریشه (root) \fBنخواهد شد\fR، تا از حملات منع خدمت (denial\-of\-service) جلوگیری شود؛ اگر به کاربران شما دسترسی شل داده نشده باشد و root تنها بتواند از طریق \fBsu\fR یا در کنسول محلی دستگاه (نه telnet/rsh و غیره) وارد شود، این رفتار ایمن است\&. .SH "گزینه‌ها (OPTIONS)" .PP {preauth|authfail|authsucc} .RS 4 این آرگومان باید متناسب با موقعیت قرارگیری این نمونه از ماژول در پشته PAM تنظیم شود\&. .sp آرگومان \fIpreauth\fR باید هنگامی استفاده شود که ماژول قبل از ماژول‌های درخواست‌کننده اطلاعات هویتی کاربر (مانند رمز عبور) فراخوانی می‌شود\&. ماژول فقط بررسی می‌کند که آیا به دلیل تعداد غیرعادی دفعات متوالی احراز هویت ناموفق اخیر، باید از دسترسی کاربر به سرویس جلوگیری شود یا خیر\&. این فراخوانی در صورت استفاده از \fIauthsucc\fR اختیاری است\&. .sp آرگومان \fIauthfail\fR باید هنگامی استفاده شود که ماژول پس از ماژول‌های تعیین‌کننده نتیجه احراز هویت و پس از شکست آن‌ها فراخوانی شود\&. ماژول شکست را در پرونده شمارش (tally) مربوط به کاربر ثبت می‌کند، مگر آنکه کاربر پیش از این به دلیل شکست‌های قبلی احراز هویت مسدود شده باشد\&. .sp آرگومان \fIauthsucc\fR باید هنگامی استفاده شود که ماژول پس از ماژول‌های تعیین‌کننده نتیجه احراز هویت و پس از موفقیت آن‌ها فراخوانی شود\&. در این حالت، ماژول رکورد شکست‌ها را در پرونده شمارش مربوط به کاربر پاک می‌کند، مگر آنکه کاربر قبلاً مسدود شده باشد؛ در غیر این صورت، خطای احراز هویت بازمی‌گرداند\&. اگر این فراخوانی انجام نشود، pam_faillock تفاوتی بین تلاش‌های ناموفق متوالی و غیرمتوالی قائل نخواهد شد\&. در چنین حالتی باید از فراخوانی \fIpreauth\fR استفاده شود\&. به دلیل پیچیدگی‌های نحوه پیکربندی پشته PAM، امکان فراخوانی \fIpam_faillock\fR به‌عنوان یک ماژول account نیز وجود دارد\&. در چنین پیکربندی‌ای، ماژول باید در مرحله \fIpreauth\fR نیز فراخوانی شود\&. .RE .PP conf=/path/to/config\-file .RS 4 استفاده از یک پرونده پیکربندی دیگر به‌جای پرونده پیش‌فرض /etc/security/faillock\&.conf\&. .RE .PP گزینه‌های مربوط به پیکربندی رفتار ماژول در صفحه راهنمای \fBfaillock.conf\fR(5) شرح داده شده‌اند\&. گزینه‌های مشخص‌شده در خط فرمان ماژول، مقادیر موجود در پرونده پیکربندی را بازنویسی (override) می‌کنند\&. .SH "انواع ماژول ارائه‌شده (MODULE TYPES PROVIDED)" .PP انواع ماژول \fBauth\fR و \fBaccount\fR ارائه شده‌اند\&. .SH "مقادیر بازگشتی (RETURN VALUES)" .PP PAM_AUTH_ERR .RS 4 یک گزینه نامعتبر مشخص شده است، ماژول قادر به بازیابی نام کاربری نبوده، هیچ پرونده شمارنده معتبری یافت نشد، یا دفعات ورود ناموفق بیش از حد مجاز بوده است\&. .RE .PP PAM_BUF_ERR .RS 4 خطای بافر حافظه\&. .RE .PP PAM_CONV_ERR .RS 4 روش گفت‌وگو (conversation) ارائه‌شده توسط برنامه در دریافت نام کاربری ناموفق بود\&. .RE .PP PAM_INCOMPLETE .RS 4 روش گفت‌وگو (conversation) ارائه‌شده توسط برنامه مقدار PAM_CONV_AGAIN را بازگرداند\&. .RE .PP PAM_SUCCESS .RS 4 همه موارد با موفقیت انجام شد\&. .RE .PP PAM_IGNORE .RS 4 کاربر در پایگاه داده passwd وجود ندارد\&. .RE .SH "نکات (NOTES)" .PP پیکربندی گزینه‌ها در خط فرمان ماژول توصیه نمی‌شود\&. به‌جای آن باید از /etc/security/faillock\&.conf استفاده شود\&. .PP پیکربندی \fIpam_faillock\fR در پشته PAM با پیکربندی ماژول \fIpam_tally2\fR متفاوت است\&. .PP پرونده‌های جداگانه حاوی رکوردهای شکست با مالکیت همان کاربر ایجاد می‌شوند\&. این موضوع به ماژول \fBpam_faillock\&.so\fR اجازه می‌دهد هنگامی که از یک محافظ صفحه نمایش (screensaver) فراخوانی می‌شود نیز به‌درستی کار کند\&. .PP توجه داشته باشید که استفاده از ماژول در حالت \fBpreauth\fR بدون تعیین گزینه \fBsilent\fR در /etc/security/faillock\&.conf یا با فیلد کنترلی \fIrequisite\fR باعث نشت اطلاعات درباره وجود یا عدم وجود حساب کاربری در سیستم می‌شود، زیرا شکست‌ها برای کاربران ناشناخته ثبت نمی‌شوند\&. پیام مربوط به قفل بودن حساب کاربری هرگز برای حساب‌های کاربری ناموجود نمایش داده نمی‌شود و به مهاجم اجازه می‌دهد استنباط کند که یک حساب خاص در سیستم وجود ندارد\&. .SH "مثال‌ها (EXAMPLES)" .PP در اینجا دو نمونه پیکربندی احتمالی برای /etc/pam\&.d/login آورده شده است\&. این تنظیمات باعث می‌شوند \fIpam_faillock\fR حساب کاربری را پس از ۴ بار ورود ناموفق متوالی در طول بازه زمانی پیش‌فرض ۱۵ دقیقه قفل کند\&. حساب root نیز قفل خواهد شد\&. حساب‌ها پس از ۲۰ دقیقه به‌طور خودکار از حالت قفل خارج می‌شوند\&. .PP در اولین مثال، ماژول فقط در فاز \fIauth\fR فراخوانی می‌شود و ماژول هیچ اطلاعاتی درباره مسدود شدن حساب توسط \fIpam_faillock\fR چاپ نمی‌کند\&. فراخوانی \fIpreauth\fR می‌تواند اضافه شود تا به کاربران اطلاع دهد که ورود آن‌ها توسط ماژول مسدود شده است و همچنین در چنین حالتی، احراز هویت را بدون درخواست رمز عبور متوقف کند\&. .PP نمونه پرونده /etc/security/faillock\&.conf: .sp .if n \{\ .RS 4 .\} .nf deny=4 unlock_time=1200 silent .fi .if n \{\ .RE .\} .PP نمونه پرونده /etc/pam\&.d/config: .sp .if n \{\ .RS 4 .\} .nf auth required pam_securetty\&.so auth required pam_env\&.so auth required pam_nologin\&.so # optionally call: auth requisite pam_faillock\&.so preauth # to display the message about account being locked auth [success=1 default=bad] pam_unix\&.so auth [default=die] pam_faillock\&.so authfail auth sufficient pam_faillock\&.so authsucc auth required pam_deny\&.so account required pam_unix\&.so password required pam_unix\&.so shadow session required pam_selinux\&.so close session required pam_loginuid\&.so session required pam_unix\&.so session required pam_selinux\&.so open .fi .if n \{\ .RE .\} .PP در مثال دوم، ماژول در هر دو فاز \fIauth\fR و \fIaccount\fR فراخوانی می‌شود و در صورتی که گزینه \fBsilent\fR در faillock\&.conf مشخص نشده باشد، قفل بودن حساب را به کاربری که در حال احراز هویت است اطلاع می‌دهد\&. .sp .if n \{\ .RS 4 .\} .nf auth required pam_securetty\&.so auth required pam_env\&.so auth required pam_nologin\&.so auth required pam_faillock\&.so preauth # optionally use requisite above if you do not want to prompt for the password # on locked accounts auth sufficient pam_unix\&.so auth [default=die] pam_faillock\&.so authfail auth required pam_deny\&.so account required pam_faillock\&.so # if you drop the above call to pam_faillock\&.so the lock will be done also # on non\-consecutive authentication failures account required pam_unix\&.so password required pam_unix\&.so shadow session required pam_selinux\&.so close session required pam_loginuid\&.so session required pam_unix\&.so session required pam_selinux\&.so open .fi .if n \{\ .RE .\} .SH "فایل‌ها (FILES)" .PP /var/run/faillock/* .RS 4 پرونده‌های ثبت شکست‌های احراز هویت برای کاربران .sp نکته: این پرونده‌ها پس از راه‌اندازی مجدد در سیستم‌هایی که پوشه /var/run/faillock در آن‌ها روی حافظه مجازی سوار (mount) شده باشد، ناپدید خواهند شد\&. برای ذخیره‌سازی پایدار، از گزینه \fIdir=\fR در پرونده /etc/security/faillock\&.conf استفاده کنید\&. .RE .PP /etc/security/faillock\&.conf .RS 4 پرونده پیکربندی برای گزینه‌های pam_faillock .RE .SH "همچنین ببینید (SEE ALSO)" .PP \fBfaillock\fR(8), \fBfaillock.conf\fR(5), \fBpam.conf\fR(5), \fBpam.d\fR(5), \fBpam\fR(8) .SH "نویسندگان (AUTHORS)" .PP برنامه pam_faillock توسط Tomas Mraz نوشته شده است\&.