'\" t .\" Title: pam_xauth .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets v1.79.2 .\" Date: 01/26/2026 .\" Manual: Linux-PAM Manual .\" Source: Linux-PAM .\" Language: Persian .\" .TH "PAM_XAUTH" "8" "01/26/2026" "Linux\-PAM" "Linux\-PAM Manual" .\" ----------------------------------------------------------------- .\" * 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_xauth \- ماژول PAM برای فوروارد و مدیریت مجوزهای احراز هویت xauth .SH "خلاصه دستور (SYNOPSIS)" .HP \w'\fBpam_xauth\&.so\fR\ 'u \fBpam_xauth\&.so\fR [debug] [xauthpath=\fI/path/to/xauth\fR] [systemuser=\fIUID\fR] [targetuser=\fIUID\fR] .SH "توضیحات (DESCRIPTION)" .PP ماژول PAM با نام pam_xauth برای فوروارد کردن کلیدهای xauth (که گاهی "کوکی" نامیده می‌شوند) میان کاربران طراحی شده است\&. .PP بدون pam_xauth، هنگامی که xauth فعال است و کاربری از دستور \fBsu\fR(1) برای تصاحب امتیازات کاربر دیگری استفاده می‌کند، آن کاربر دیگر قادر به دسترسی به نمایشگر X کاربر اصلی نخواهد بود زیرا کاربر جدید کلید لازم برای دسترسی به نمایشگر را ندارد\&. pam_xauth این مشکل را با فوروارد کردن کلید از کاربری که su را اجرا می‌کند (کاربر مبدأ) به کاربری که کاربر مبدأ هویت او را تصاحب می‌کند (کاربر مقصد) در هنگام ایجاد نشست و نابود کردن کلید هنگام بسته‌شدن نشست حل می‌کند\&. .PP این بدان معناست که برای نمونه، هنگام اجرای \fBsu\fR(1) از یک نشست xterm، شما قادر خواهید بود برنامه‌های X را بدون درگیر شدن مستقیم با دستور \fBxauth\fR(1) یا پرونده‌های ~/\&.Xauthority اجرا کنید\&. .PP ماژول pam_xauth تنها در صورتی کلیدها را فوروارد می‌کند که xauth بتواند کلیدی متصل به متغیر محیطی $DISPLAY را فهرست کند\&. .PP کنترل دسترسی ابتدایی توسط پرونده ~/\&.xauth/export در پوشه خانگی کاربر فراخواننده و پرونده ~/\&.xauth/import در پوشه خانگی کاربر مقصد فراهم می‌شود\&. .PP اگر کاربری دارای پرونده ~/\&.xauth/import باشد، آن کاربر تنها کوکی‌ها را از کاربرانی دریافت خواهد کرد که در این پرونده فهرست شده‌اند\&. اگر پرونده ~/\&.xauth/import وجود نداشته باشد، کاربر کوکی‌ها را از هر کاربر دیگری خواهد پذیرفت\&. .PP اگر کاربری دارای پرونده ~/\&.xauth/export باشد، آن کاربر تنها کوکی‌ها را به کاربرانی که در این پرونده فهرست شده‌اند فوروارد خواهد کرد\&. اگر پرونده ~/\&.xauth/export وجود نداشته باشد و کاربر فراخواننده \fBroot\fR نباشد، کاربر کوکی‌ها را به هر کاربر دیگری فوروارد می‌کند\&. اگر پرونده ~/\&.xauth/export وجود نداشته باشد و کاربر فراخواننده \fBroot\fR باشد، کاربر کوکی‌ها را به دیگر کاربران فوروارد \fIنخواهد کرد\fR\&. .PP هر دو پرونده import و export از نویسه‌های عام (مانند \fI*\fR)\& پشتیبانی می‌کنند\&. هر دو پرونده می‌توانند خالی باشند که نشان‌دهنده مجاز نبودن هیچ کاربری است\&. .SH "گزینه‌ها (OPTIONS)" .PP debug .RS 4 چاپ اطلاعات اشکال‌زدایی (دیباگ)\&. .RE .PP xauthpath=/path/to/xauth .RS 4 تعیین مسیر برنامه xauth (به طور پیش‌فرض در /usr/X11R6/bin/xauth، /usr/bin/xauth یا /usr/bin/X11/xauth انتظار می‌رود)\&. .RE .PP systemuser=UID .RS 4 تعیین بالاترین UID که متعلق به یک کاربر "سیستمی" در نظر گرفته می‌شود\&. ماژول pam_xauth از فوروارد کردن گواهی‌ها به کاربرانی با UID کمتر یا مساوی این عدد، به جز root و "targetuser" (در صورت تعیین)، خودداری خواهد کرد\&. .RE .PP targetuser=UID .RS 4 تعیین یک UID مقصد خاص که از بررسی systemuser معاف است\&. .RE .SH "انواع ماژول‌های ارائه‌شده (MODULE TYPES PROVIDED)" .PP تنها نوع \fBsession\fR ارائه شده است\&. .SH "مقادیر بازگشتی (RETURN VALUES)" .PP PAM_BUF_ERR .RS 4 خطای بافر حافظه\&. .RE .PP PAM_PERM_DENIED .RS 4 مجوز توسط پرونده import/export رد شد\&. .RE .PP PAM_SESSION_ERR .RS 4 ناتوان در تعیین نام کاربری، UID یا دسترسی به پوشه خانگی کاربران\&. .RE .PP PAM_SUCCESS .RS 4 موفقیت\&. .RE .PP PAM_USER_UNKNOWN .RS 4 کاربر ناشناخته است\&. .RE .SH "مثال‌ها (EXAMPLES)" .PP خط زیر را به /etc/pam\&.d/su بیافزایید تا هنگام فراخوانی su کلیدهای xauth میان کاربران فوروارد شود: .sp .if n \{\ .RS 4 .\} .nf session optional pam_xauth\&.so .fi .if n \{\ .RE .\} .sp .SH "جزئیات پیاده‌سازی (IMPLEMENTATION DETAILS)" .PP ماژول pam_xauth \fIتنها\fR زمانی کار خواهد کرد که از یک برنامه setuid استفاده شود که در آن فراخوانی \fBgetuid\fR() شناسه کاربری که برنامه را اجرا می‌کند برگرداند، و PAM بتواند نام حسابی را که کاربر قصد تصاحب آن را دارد تامین کند\&. برنامه معمول از این نوع \fBsu\fR(1) است\&. برنامه باید هر دو تابع \fBpam_open_session\fR() و \fBpam_close_session\fR() را در حالی فراخوانی کند که ruid روی uid کاربر فراخواننده و euid روی root تنظیم شده باشد، و باید نام کاربر مقصد را به عنوان مورد PAM_USER فراهم کرده باشد\&. .PP ماژول pam_xauth دستور \fBxauth\fR(1) را به عنوان کاربر مبدأ فراخوانی می‌کند تا کلید مربوط به $DISPLAY را استخراج نماید، سپس xauth را به عنوان کاربر مقصد فراخوانی می‌کند تا کلید را در یک پایگاه‌داده موقت ادغام کند و بعداً آن پایگاه‌داده را حذف نماید\&. .PP نمی‌توان به pam_xauth دستور داد که هنگام بسته‌شدن نشست، کلیدها را حذف نکند\&. .SH "پرونده‌ها (FILES)" .PP ~/\&.xauth/import .RS 4 پرونده پیکربندی برای تعیین کاربران مجاز جهت دریافت کوکی‌های xauth\&. .RE .PP ~/\&.xauth/export .RS 4 پرونده پیکربندی برای تعیین کاربران مجاز جهت ارسال کوکی‌های xauth\&. .RE .SH "همچنین ببینید (SEE ALSO)" .PP \fBpam.conf\fR(5), \fBpam.d\fR(5), \fBpam\fR(8) .SH "نویسنده (AUTHOR)" .PP ماژول pam_xauth توسط Nalin Dahyabhai ، بر پایه نسخه اصلی توسط Michael K\&. Johnson نوشته شده است\&.