.\" Copyright 1993, 1998 The Open Group .\" .\" Permission to use, copy, modify, distribute, and sell this software and its .\" documentation for any purpose is hereby granted without fee, provided that .\" the above copyright notice appear in all copies and that both that .\" copyright notice and this permission notice appear in supporting .\" documentation. .\" .\" The above copyright notice and this permission notice shall be included .\" in all copies or substantial portions of the Software. .\" .\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS .\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF .\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. .\" IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR .\" OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, .\" ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR .\" OTHER DEALINGS IN THE SOFTWARE. .\" .\" Except as contained in this notice, the name of The Open Group shall .\" not be used in advertising or otherwise to promote the sale, use or .\" other dealings in this Software without prior written authorization .\" from The Open Group. .\" .\" .TH XAUTH 1 2025-04-13 "xauth 1.1.5" "X Version 11" .SH "نام (NAME)" xauth \- ابزار فایل مجوز دسترسی X .SH "خلاصه دستور (SYNOPSIS)" .B xauth [ \fB\-f\fP \fIauthfile\fP ] [ \fB\-vqibn\fP ] [ \fIcommand arg ...\fP ] .SH "توضیحات (DESCRIPTION)" برنامه \fBxauth\fP برای ویرایش و نمایش اطلاعات مجوز دسترسی که در ارتباط با کارساز X استفاده می‌شود، به کار می‌رود. این برنامه معمولاً برای استخراج رکوردهای مجوز از یک ماشین و ادغام آن‌ها در ماشینی دیگر استفاده می‌شود (مانند زمان استفاده از ورود از راه دور یا اعطای دسترسی به سایر کاربران). دستورها (که در ادامه توضیح داده شده‌اند) را می‌توان به صورت تعاملی، در خط فرمان \fBxauth\fP، یا در اسکریپت‌ها وارد کرد. توجه داشته باشید که این برنامه، به جز هنگام استفاده از دستور generate، با کارساز X ارتباط برقرار \fBنمی‌کند\fP. به طور معمول \fBxauth\fP در ابتدا برای ایجاد ورودی فایل مجوز استفاده نمی‌شود؛ برنامه‌ای که کارساز X را راه‌اندازی می‌کند (اغلب \fBxdm\fP یا \fBstartx\fP) این کار را انجام می‌دهد. .SH "گزینه‌ها (OPTIONS)" گزینه‌های زیر را می‌توان با \fBxauth\fP به کار برد. آن‌ها را می‌توان به صورت جداگانه (مثلاً \fB\-q \-i\|\fP) یا به صورت ترکیبی (مثلاً \fB\-qi\|\fP) مشخص کرد. .TP 8 .B "\-f \fIauthfile\fP" این گزینه نام فایل مجوز مورد استفاده را مشخص می‌کند. به طور پیش‌فرض، \fBxauth\fP از فایل مشخص‌شده توسط متغیر محیطی \fBXAUTHORITY\fP یا فایل \fB\.Xauthority\fP در دایرکتوری خانگی کاربر استفاده خواهد کرد. .TP 8 .B \-q این گزینه نشان می‌دهد که \fBxauth\fP باید در حالت بی‌صدا اجرا شود و پیام‌های وضعیتی ناخواسته را چاپ نکند. این حالت پیش‌فرض است اگر یک دستور \fBxauth\fP در خط فرمان مشخص شده باشد یا اگر خروجی استاندارد به یک ترمینال هدایت نشده باشد. .TP 8 .B \-v این گزینه نشان می‌دهد که \fBxauth\fP باید در حالت پرگو (verbose) کار کند و پیام‌های وضعیتی حاکی از نتایج عملیات گوناگون را چاپ کند (مثلاً چه تعداد رکورد خوانده شده یا نوشته شده است). این حالت پیش‌فرض است اگر \fBxauth\fP در حال خواندن دستورها از ورودی استاندارد خود باشد و خروجی استاندارد آن به یک ترمینال هدایت شود. .TP 8 .B \-i این گزینه مشخص می‌کند که \fBxauth\fP باید هرگونه قفل فایل مجوز را نادیده بگیرد. در حالت عادی، \fBxauth\fP از خواندن یا ویرایش هر فایل مجوزی که توسط برنامه‌های دیگر (معمولاً \fBxdm\fP یا یک نمونه دیگر از \fBxauth\fP) قفل شده باشد، خودداری می‌کند. .TP 8 .B \-b این گزینه نشان می‌دهد که \fBxauth\fP باید پیش از ادامه، تلاش کند قفل‌های فایل مجوز را بشکند. از این گزینه تنها برای پاک کردن قفل‌های منسوخ و کهنه استفاده کنید. .TP 8 .B \-n این گزینه مشخص می‌کند که \fBxauth\fP نباید برای تحلیل نام میزبان‌ها تلاشی کند، بلکه باید همواره نشانی میزبان را دقیقاً همان‌طور که در فایل مجوز ذخیره شده است چاپ کند. .TP 8 .BR \-V ", " \--version این گزینه شماره نسخه فایل اجرایی xauth را نشان می‌دهد. .SH "دستورها (COMMANDS)" دستورهای زیر را می‌توان برای دستکاری فایل‌های مجوز به کار برد: .TP 8 .B "add \fIdisplayname protocolname hexkey" یک ورودی مجوز برای نمایشگر مشخص‌شده با استفاده از پروتکل و داده‌های کلیدِ داده‌شده به فایل مجوز اضافه می‌شود. داده‌ها به صورت یک رشته با طول زوج از ارقام هگزادسیمال مشخص می‌شوند که هر جفت نشان‌دهنده یک بایت (octet) است. نخستین رقم هر جفت نشان‌دهنده ۴ بیت باارزش‌تر بایت، و دومین رقم جفت نشان‌دهنده ۴ بیت کم‌ارزش‌تر آن است. به عنوان مثال، یک hexkey با ۳۲ نویسه یک مقدار ۱۲۸ بیتی را نشان می‌دهد. نام پروتکلی که تنها از یک نقطه تک تشکیل شده باشد به عنوان شکل اختصاری \fBMIT-MAGIC-COOKIE-1\fP تلقی می‌شود. .IP "" 8 هشدار: این شیوه استفاده ناامن تلقی می‌شود زیرا magic cookie محرمانه در تاریخچه دستورها و به عنوان مثال در خروجی \fBps\fP نمایش داده خواهد شد. در عوض باید از دستور "merge" (همان‌گونه که در ادامه توضیح داده شده است) استفاده شود. به هشدار آن دستور نیز توجه فرمایید. .TP 8 .B "generate \fIdisplayname protocolname\fP \fR[\fPtrusted|untrusted\fR]\fP" .B \fR[\fPtimeout \fIseconds\fP\fR]\fP \fR[\fPgroup \fIgroup-id\fP\fR]\fP \fR[\fBdata \fIhexdata\fR] .IP "" 8 این دستور مشابه add است. تفاوت اصلی در این است که به جای الزام کاربر به ارائه داده‌های کلید، به کارساز مشخص‌شده در \fIdisplayname\fP متصل می‌شود و از افزونه SECURITY به منظور دریافت داده‌های کلید جهت ذخیره در فایل مجوز استفاده می‌کند. اگر اتصال به کارساز برقرار نشود یا کارساز از افزونه SECURITY پشتیبانی نکند، دستور با شکست مواجه می‌شود. در غیر این صورت، یک ورودی مجوز برای نمایشگر مورد نظر با استفاده از پروتکل داده‌شده به فایل مجوز اضافه می‌شود. نام پروتکلی که تنها از یک نقطه تشکیل شده باشد به عنوان شکل اختصاری \fBMIT-MAGIC-COOKIE-1\fP تلقی می‌شود. .IP "" 8 اگر از گزینه \fBtrusted\fP استفاده شود، کلاینت‌هایی که با این مجوز متصل می‌شوند طبق معمول دسترسی کامل به نمایشگر خواهند داشت. اگر از \fBuntrusted\fP استفاده شود، کلاینت‌هایی که با استفاده از این مجوز متصل می‌شوند غیرقابل‌اعتماد تلقی شده و از سرقت یا دستکاری داده‌های متعلق به کلاینت‌های قابل‌اعتماد بازداشته می‌شوند. برای جزئیات کامل محدودیت‌های اعمال‌شده بر کلاینت‌های غیرقابل‌اعتماد، مشخصات افزونه SECURITY را ببینید. مقدار پیش‌فرض \fBuntrusted\fP است. .IP "" 8 گزینه \fBtimeout\fP مشخص می‌کند که این مجوز تا چند ثانیه معتبر خواهد بود. اگر مجوز برای مدتی طولانی‌تر از این بازه زمانی بلااستفاده بماند (هیچ کلاینتی با آن متصل نشده باشد)، کارساز مجوز را پاک‌سازی می‌کند، و تلاش‌های بعدی برای اتصال با استفاده از آن ناموفق خواهند بود. توجه داشته باشید که پاک‌سازی انجام‌شده توسط کارساز، ورودی مجوز را از فایل مجوز حذف \fBنمی‌کند\fP. مقدار مهلت زمانی پیش‌فرض ۶۰ ثانیه است. .IP "" 8 گزینه \fBgroup\fP گروه برنامه‌ای (application group) را مشخص می‌کند که کلاینت‌های متصل با این مجوز باید به آن تعلق داشته باشند. برای جزئیات بیشتر به مشخصات افزونه application group مراجعه کنید. حالت پیش‌فرض عدم تعلق به هیچ گروه برنامه‌ای است. .IP "" 8 گزینه \fBdata\fP داده‌هایی را مشخص می‌کند که کارساز باید از آن‌ها برای تولید مجوز استفاده کند. توجه داشته باشید که این داده، همان داده‌ای \fBنیست\fP که در فایل مجوز نوشته می‌شود. تفسیر این داده‌ها به پروتکل مجوز بستگی دارد. \fIhexdata\fP دارای همان قالبی است که برای \fIhexkey\fP در دستور add توضیح داده شد. حالت پیش‌فرض عدم ارسال هرگونه داده است. .TP 8 .RB [ n ] "extract \fIfilename displayname..." ورودی‌های مجوز برای هر یک از نمایشگرهای مشخص‌شده در فایل تعیین‌شده نوشته می‌شوند. اگر از دستور \fBnextract\fP استفاده شود، ورودی‌ها در قالبی عددی و مناسب برای انتقال غیردودویی (مانند رایانامه امن) نوشته می‌شوند. ورودی‌های استخراج‌شده را می‌توان دوباره با استفاده از دستورهای \fBmerge\fP و \fBnmerge\fP بازخوانی کرد. اگر نام فایل تنها شامل یک خط تیره یکتا (\-) باشد، ورودی‌ها در خروجی استاندارد نوشته خواهند شد. .TP 8 .RB [ n ] "list \fR[\fIdisplayname\fP...]" ورودی‌های مجوز برای هر یک از نمایشگرهای مشخص‌شده (یا همه نمایشگرها در صورتی که نامی از نمایشگری برده نشود) در خروجی استاندارد چاپ می‌شوند. اگر از دستور \fBnlist\fP استفاده شود، ورودی‌ها در قالب عددی مورد استفاده توسط دستور \fBnextract\fP نمایش داده می‌شوند؛ در غیر این صورت، در قالبی متنی نشان داده می‌شوند. داده‌های کلید همواره در قالب هگزادسیمال ارائه‌شده در توضیحات دستور \fBadd\fP نمایش داده می‌شوند. .TP 8 .RB [ n ] "merge \fR[\fIfilename\fP...]" ورودی‌های مجوز از فایل‌های مشخص‌شده خوانده شده و در پایگاه‌داده مجوزها ادغام می‌شوند، و جایگزین هر ورودی منطبقِ موجود می‌گردند. اگر از دستور \fBnmerge\fP استفاده شود، قالب عددی ذکرشده در توضیحات دستور \fBextract\fP به کار می‌رود. اگر نام فایل فقط یک خط تیره باشد، چنانچه ورودی استاندارد پیش‌تر خوانده نشده باشد، از آن خوانده خواهد شد. .IP "" 8 هشدار: در رابطه با حالت خط تیره تنها احتیاط کنید، زیرا بسته به زنجیره دستورها (برای نمونه، ترکیبی با استفاده از \fBsudo\fP)، کلید محرمانه ممکن است در تاریخچه دستورها و به عنوان مثال در خروجی \fBps\fP در معرض دید دیگران قرار گیرد. .TP 8 .B "remove \fIdisplayname\fR..." ورودی‌های مجوز منطبق با نمایشگرهای مشخص‌شده از فایل مجوز حذف می‌شوند. .TP 8 .B "source \fIfilename" فایل مشخص‌شده به عنوان اسکریپتی حاوی دستورهای \fBxauth\fP برای اجرا تلقی می‌شود. خطوط خالی و خطوطی که با علامت شارپ (#) شروع می‌شوند نادیده گرفته می‌شوند. از یک خط تیره می‌توان برای مشخص کردن ورودی استاندارد استفاده کرد، در صورتی که از قبل خوانده نشده باشد. .TP 8 .B "info" اطلاعاتی شامل شرح فایل مجوز، ایجاد شدن یا نشدن هرگونه تغییر، و محلی که دستورهای \fBxauth\fP از آنجا خوانده می‌شوند، در خروجی استاندارد چاپ می‌شود. .TP 8 .B "exit" اگر تغییری ایجاد شده باشد، فایل مجوز (در صورت مجاز بودن) در دیسک نوشته می‌شود و برنامه خارج می‌گردد. رسیدن به انتهای فایل (EOF) به عنوان دستور ضمنی \fBexit\fP تلقی می‌شود. .TP 8 .B "quit" برنامه با نادیده گرفتن هرگونه تغییر خارج می‌شود. این عمل را می‌توان با فشردن نویسه وقفه (interrupt character) نیز انجام داد. .TP 8 .B "version" این دستور شماره نسخه فایل اجرایی xauth را نشان می‌دهد. .TP 8 .B "help [\fIstring\fP]" توضیحات تمام دستورهایی که با رشته داده‌شده آغاز می‌شوند (یا تمام دستورها در صورت ارائه نشدن رشته) در خروجی استاندارد چاپ می‌شود. .TP 8 .B "?" فهرست کوتاهی از دستورهای معتبر در خروجی استاندارد چاپ می‌شود. .SH "نام‌های نمایشگر (DISPLAY NAMES)" نام‌های نمایشگر برای دستورهای \fBadd\fP، \fB[n]extract\fP، \fB[n]list\fP، \fB[n]merge\fP و \fBremove\fP از همان قالب متغیر محیطی \fBDISPLAY\fP و آرگومان متداول خط فرمان \fB\-display\fP استفاده می‌کنند. اطلاعات خاص نمایشگر (مانند شماره صفحه نمایش) غیرضروری است و نادیده گرفته خواهد شد. اتصال‌های روی یک ماشین یکسان (مانند سوکت‌های میزبان محلی، حافظه اشتراکی، و نام میزبان پروتکل اینترنت \fBlocalhost\fP) به عنوان \fIhostname\fP/unix:\fIdisplaynumber\fP در نظر گرفته می‌شوند تا ورودی‌های محلی ماشین‌های گوناگون بتوانند در یک فایل مجوز ذخیره شوند. .SH "مثال‌ها (EXAMPLES)" رایج‌ترین کاربرد \fBxauth\fP، استخراج ورودی مربوط به نمایشگر فعلی، کپی آن در ماشینی دیگر، و ادغام آن در فایل مجوز کاربر در ماشین راه دور است: .sp .nf % xauth extract \- $DISPLAY | ssh otherhost xauth merge \- .fi .PP دستور زیر با کارساز :0 به منظور ایجاد یک مجوز با استفاده از پروتکل \fBMIT-MAGIC-COOKIE-1\fP ارتباط برقرار می‌کند. کلاینت‌هایی که با این مجوز متصل شوند، غیرقابل‌اعتماد خواهند بود. .nf % xauth generate :0 . .fi .SH "محیط (ENVIRONMENT)" برنامه \fBxauth\fP از متغیرهای محیطی زیر استفاده می‌کند: .TP 8 .B XAUTHORITY برای به‌دست آوردن نام فایل مجوزی که در صورت عدم استفاده از گزینه \fB\-f\fP باید به کار رود. .TP 8 .B HOME برای به‌دست آوردن دایرکتوری خانگی کاربر در صورتی که XAUTHORITY تعریف نشده باشد. .SH "فایل‌ها (FILES)" .TP 8 .I $HOME/.Xauthority فایل مجوز پیش‌فرض در صورتی که XAUTHORITY تعریف نشده باشد. .SH "همچنین ببینید (SEE ALSO)" .BR X (7), .BR Xsecurity (7), .BR xhost (1), .BR Xserver (1), .BR xdm (1), .BR startx (1), .BR Xau (3). .SH "گزارش باگ‌ها (BUGS)" کاربرانی که دارای شبکه‌های ناامن هستند باید توجه داشته باشند که برای کپی کردن ورودی‌های مجوز بین ماشین‌ها از سازوکارهای انتقال رمزگذاری‌شده فایل استفاده نمایند. به همین ترتیب، پروتکل \fBMIT-MAGIC-COOKIE-1\fP در محیط‌های ناامن چندان مفید نیست. سامانه‌هایی که به امنیت بیشتری نیاز دارند ممکن است لازم باشد از سازوکارهای احراز هویت رمزگذاری‌شده مانند Kerberos استفاده کنند. .PP در حال حاضر فاصله‌ها در نام پروتکل مجاز نیستند. می‌توان برای موارد واقعاً غیرمتعارف امکان نقل‌قول (quoting) را اضافه کرد. .SH "نویسندگان (AUTHORS)" Jim Fulton, MIT X Consortium