X0VNCSERVER(1) TigerVNC Manual X0VNCSERVER(1) نام (NAME) x0vncserver - کارگزار TigerVNC برای نمایشگرهای X خلاصه دستور (SYNOPSIS) x0vncserver [options] x0vncserver -version توضیحات (DESCRIPTION) دستور x0vncserver یک کارگزار TigerVNC است که دسترسی از راه دور به هر نمایشگر X را از طریق VNC، TigerVNC یا نمایشگرهای سازگار فراهم می‌کند. بر خلاف Xvnc(1)، این برنامه یک نمایشگر مجازی ایجاد نمی‌کند؛ بلکه تنها یک کارگزار X موجود (معمولاً همان کارگزاری که به صفحهٔ نمایش فیزیکی متصل است) را به اشتراک می‌گذارد. در صورتی که کارگزار X موجود از افزونهٔ XDamage پشتیبانی کند، از آن استفاده خواهد شد. در غیر این صورت x0vncserver به بررسی دوره‌ای (polling) صفحه نمایش برای تشخیص تغییرات روی خواهد آورد. گزینه‌ها (OPTIONS) دستور x0vncserver خط فرمان را به عنوان فهرستی از پارامترها به همراه مقادیر اختیاری تفسیر می‌کند. اجرای x0vncserver -h فهرستی از تمام پارامترهای معتبر را با توضیحاتی کوتاه نمایش می‌دهد. تمام پارامترها اختیاری هستند، اما معمولاً باید از پارامتر PasswordFile استفاده کنید (توضیحات آن را در زیر ببینید). چندین شیوه برای تعیین پارامترها در خط فرمان وجود دارد (در اینجا از «SomeParameter» به عنوان یک نام پارامتر نمونه استفاده شده است): -SomeParameter فعال‌سازی پارامتر، روشن کردن ویژگی. این شیوه را می‌توان برای پارامترهایی به کار برد که صرفاً ویژگی خاصی را فعال یا غیرفعال می‌کنند. -SomeParameter=0 غیرفعال‌سازی پارامتر، خاموش کردن ویژگی. -SomeParameter=value اختصاص مقدار value مشخص‌شده به پارامتر. خط تیرهٔ ابتدایی می‌تواند حذف شود، یا در صورت تمایل دو بار تکرار شود (مشابه گزینه‌های طولانی سبک گنو). نام پارامترها به حروف بزرگ و کوچک حساس نیست و ترتیب قرارگیری آن‌ها در خط فرمان دلخواه است. پارامترها (PARAMETERS) -AcceptKeyEvents پذیرش رویدادهای فشرده شدن و رها شدن کلیدها از سمت کلاینت‌ها. مقدار پیش‌فرض روشن (on) است. -AcceptPointerEvents پذیرش رویدادهای حرکت و دکمه‌های اشاره‌گر از کلاینت‌ها. مقدار پیش‌فرض روشن (on) است. -AcceptSetDesktopSize پذیرش درخواست‌ها برای تغییر اندازهٔ میزکار. مقدار پیش‌فرض روشن (on) است. -AlwaysShared در نظر گرفتن اتصالات ورودی همواره به صورت اشتراکی (shared)، صرف‌نظر از تنظیمی که کلاینت مشخص کرده است. مقدار پیش‌فرض خاموش (off) است. -BlacklistThreshold count تعداد دفعات مجاز تلاش برای اتصال احراز هویت‌نشده از هر میزبان پیش از قرار گرفتن آن در فهرست سیاه. مقدار پیش‌فرض 5 است. -BlacklistTimeout seconds مدت‌زمان وقفهٔ اولیه (به ثانیه) هنگام قرار گرفتن یک میزبان در فهرست سیاه. میزبان تا زمان پایان این مهلت نمی‌تواند مجدداً برای اتصال تلاش کند. مقدار پیش‌فرض 10 است. -CompareFB mode انجام مقایسهٔ پیکسلی روی بافر فریم (framebuffer) برای کاهش به‌روزرسانی‌های غیرضروری. می‌تواند 0 (خاموش)، 1 (همیشه) یا 2 (خودکار) باشد. مقدار پیش‌فرض 2 است. -desktop desktop-name هر میزکار نامی دارد که ممکن است توسط نمایشگر کلاینت نشان داده شود. مقدار پیش‌فرض آن "@" است. -DisconnectClients قطع اتصال کلاینت‌های موجود در صورتی که یک اتصال ورودی غیراشتراکی باشد. مقدار پیش‌فرض روشن (on) است. اگر DisconnectClients نادرست (false) باشد، در حالی که کلاینتی فعال است اتصال غیراشتراکی جدید رد خواهد شد. در صورت ترکیب با NeverShared، بدین معناست که در هر لحظه تنها یک کلاینت مجاز است. -display display نام نمایشگر X. در صورت عدم تعیین، مقدار پیش‌فرض آن متغیر محیطی DISPLAY خواهد بود. -FrameRate fps حداکثر تعداد به‌روزرسانی‌های ارسالی به هر کلاینت در ثانیه. اگر صفحه نمایش سریع‌تر به‌روزرسانی شود، آن تغییرات تجمیع شده و در قالب یک به‌روزرسانی واحد به کلاینت فرستاده می‌شوند. توجه داشته باشید که این گزینه فقط حداکثر نرخ را کنترل می‌کند و ممکن است در صورت محدودیت منابع، کلاینت نرخ پایین‌تری دریافت کند. مقدار پیش‌فرض 60 است. -Geometry geometry این گزینه محدودهٔ صفحه‌ای را که به کلاینت‌های VNC نشان داده خواهد شد مشخص می‌کند. قالب آن به صورت widthxheight+xoffset+yoffset است، که در آن علامت‌های «+» می‌توانند با علامت‌های «-» جایگزین شوند تا جابه‌جایی‌ها از سمت راست و/یا از پایین صفحه تعیین گردند. تعیین جابه‌جایی‌ها اختیاری است و به طور پیش‌فرض مقدار +0+0 (گوشهٔ بالا سمت چپ) در نظر گرفته می‌شود. اگر این آرگومان خالی باشد، تمام صفحه به کلاینت‌های VNC نشان داده می‌شود (حالت پیش‌فرض). -GnuTLSPriority priority رشتهٔ اولویت GnuTLS که الگوریتم‌های دست‌تکانی نشست TLS را کنترل می‌کند. برای مشاهدهٔ مقادیر ممکن به کتابچه راهنمای GnuTLS مراجعه کنید. مقدار پیش‌فرض NORMAL است. -HostsFile filename این پارامتر امکان مشخص کردن نام فایلی حاوی قوانین کنترل دسترسی IP را فراهم می‌کند. فایل باید شامل یک قانون در هر خط باشد و قالب قانون یکی از موارد زیر است: +address/prefix (پذیرش اتصال‌ها از گروه آدرس مشخص‌شده)، -address/prefix (رد اتصال‌ها) یا ?address/prefix (پرسش از کاربر محلی). نخستین قانونی که با آدرس IP مطابقت داشته باشد، اقدام لازم را تعیین خواهد کرد. قوانینی که تنها شامل علامت اقدام (+، - یا ?) باشند با هر آدرس IP تطابق می‌یابند. مقدار Prefix اختیاری است و به صورت تعداد بیت‌ها مشخص می‌شود (برای مثال /24). مقدار پیش‌فرض، پذیرش اتصال از تمامی آدرس‌های IP است. -IdleTimeout seconds تعداد ثانیه‌هایی که پس از آن یک اتصال VNC بدون فعالیت (بیکار) قطع خواهد شد. مقدار پیش‌فرض 0 است، به این معنی که اتصال‌های بیکار هرگز قطع نمی‌شوند. -ImprovedHextile استفاده از الگوریتم فشرده‌سازی بهبودیافته برای کدگذاری Hextile که به بهای مصرف کمی بیشتر زمان پردازنده (CPU)، به نسبت فشرده‌سازی بهتری دست می‌یابد. مقدار پیش‌فرض روشن (on) است. -interface IP address گوش دادن روی یک رابط شبکه مشخص. به طور پیش‌فرض x0vncserver روی تمام رابط‌های شبکه در دسترس گوش می‌دهد. -localhost تنها اجازهٔ اتصال از همان ماشین (میزبان محلی) را می‌دهد. در صورتی که از SSH استفاده می‌کنید و می‌خواهید اتصال‌های غیر SSH را از سایر میزبان‌ها مسدود کنید بسیار مفید است. -Log logname:dest:level[, ...] تنظیمات لاگ اشکال‌زدایی را پیکربندی می‌کند. مقدار dest در حال حاضر می‌تواند stderr، stdout یا syslog باشد، و level بین 0 تا 100 است که 100 به معنای پرجزئیات‌ترین خروجی است. مقدار logname معمولاً * به معنای همه است، اما اگر نام "LogWriter" آن را بدانید می‌توانید فایل منبع خاصی را هدف قرار دهید. مقدار پیش‌فرض *:stderr:30 است. -MaxConnectionTime seconds خاتمه دادن به برنامه هنگامی که یک کلاینت به مدت N ثانیه متصل بوده است. مقدار پیش‌فرض 0 است. -MaxDisconnectionTime seconds خاتمه دادن به برنامه هنگامی که هیچ کلاینتی به مدت N ثانیه متصل نبوده است. مقدار پیش‌فرض 0 است. -MaxIdleTime seconds خاتمه دادن به برنامه پس از N ثانیه عدم فعالیت کاربر. مقدار پیش‌فرض 0 است. -MaxProcessorUsage percent حداکثر درصد زمان پردازنده (CPU) که هنگام بررسی دوره‌ای صفحه نمایش مصرف می‌شود. مقدار پیش‌فرض 35 است. -NeverShared هرگز اتصالات ورودی را به صورت اشتراکی در نظر نمی‌گیرد، صرف‌نظر از تنظیمی که کلاینت مشخص کرده باشد. مقدار پیش‌فرض خاموش (off) است. -pam_service name, -PAMService name نام سرویس PAM برای احراز هویت کاربران هنگام استفاده از هر یک از انواع امنیتی "Plain". مقدار پیش‌فرض vnc است. -Password password کدگذاری دودویی مبهم‌شده از گذرواژه‌ای که کلاینت‌ها برای دسترسی به کارگزار باید ارائه دهند. استفاده از این پارامتر ناامن است، به جای آن از پارامتر PasswordFile استفاده کنید. -PasswordFile passwd-file, -rfbauth passwd-file فایل گذرواژه برای احراز هویت VNC. هیچ مقدار پیش‌فرضی وجود ندارد و باید فایل گذرواژه را صریحاً مشخص کنید. فایل گذرواژه باید با ابزار vncpasswd(1) ایجاد شود. این فایل هر بار که اتصالی برقرار می‌شود بازخوانی می‌گردد، بنابراین می‌توان آن را به صورت درجا تغییر داد. -PlainUsers user-list فهرستی از نام‌های کاربری جدا شده با کاما که مجاز به احراز هویت از طریق هر یک از انواع امنیتی "Plain" (مانند Plain، TLSPlain و غیره) هستند. مقدار * را برای مجاز ساختن هر کاربری جهت احراز هویت با استفاده از این نوع امنیتی مشخص کنید. مقدار %u را برای اجازه به کاربری که فرایند کارگزار را اجرا کرده است مشخص کنید. مقدار پیش‌فرض، رد کردن تمام کاربران است. -PollingCycle milliseconds تعداد میلی‌ثانیه‌ها در هر چرخهٔ سرکشی (polling). بازهٔ واقعی ممکن است برای برآورده ساختن تنظیم MaxProcessorUsage به صورت پویا تنظیم شود. مقدار پیش‌فرض 30 است. -Protocol3.3 استفادهٔ همیشگی از پروتکل نسخه 3.3 جهت سازگاری عقبروی با کلاینت‌های ناسازگار. مقدار پیش‌فرض خاموش (off) است. -QueryConnect از کاربر میزکار می‌خواهد تا اتصالات ورودی را صریحاً بپذیرد یا رد کند. مقدار پیش‌فرض خاموش (off) است. -QueryConnectTimeout seconds تعداد ثانیه‌های نمایش کادر گفتگوی پذیرش اتصال پیش از رد کردن آن. مقدار پیش‌فرض 10 است. -RawKeyboard ارسال مستقیم رویدادهای صفحه‌کلید و جلوگیری از نگاشت آن‌ها به چیدمان صفحه‌کلید فعلی. این عمل عملاً باعث می‌شود صفحه‌کلید به جای چیدمان تنظیم‌شده در کلاینت، بر اساس چیدمان پیکربندی‌شده روی کارگزار رفتار کند. مقدار پیش‌فرض خاموش (off) است. -AcceptCutText پذیرش به‌روزرسانی‌های کلیپ‌بورد از کلاینت‌ها. مقدار پیش‌فرض روشن (on) است. -SetPrimary تنظیم انتخاب PRIMARY علاوه بر انتخاب CLIPBOARD. مقدار پیش‌فرض روشن (on) است. -MaxCutText bytes حداکثر اندازهٔ مجاز برای یک به‌روزرسانی ورودی کلیپ‌بورد (به بایت). مقدار پیش‌فرض 262144 است. -SendCutText ارسال تغییرات کلیپ‌بورد به کلاینت‌ها. مقدار پیش‌فرض روشن (on) است. -SendPrimary ارسال انتخاب PRIMARY علاوه بر انتخاب CLIPBOARD به کلاینت‌ها. مقدار پیش‌فرض روشن (on) است. -RemapKeys mapping یک نگاشت صفحه‌کلید را تنظیم می‌کند. mapping یک رشته از نگاشت‌های نویسه‌ای جدا شده با کاما به فرم char->char، یا char<>char است، که در آن char یک نماد کلید (keysym) در مبنای شانزده است. برای مثال، جهت تعویض جای نمادهای " و @ می‌توانید مورد زیر را تعیین کنید: RemapKeys=0x22<>0x40 -RequireUsername الزام وجود نام کاربری برای انواع امنیتی RSA-AES. مقدار پیش‌فرض خاموش (off) است. -rfbport port درگاه TCP که x0vncserver روی آن برای اتصال‌ها از نمایشگرها گوش می‌دهد را مشخص می‌کند (پروتکل مورد استفاده در VNC، تحت عنوان RFB یا "remote framebuffer" شناخته می‌شود). مقدار -1 را برای غیرفعال کردن گوش دادن روی درگاه TCP مشخص کنید. درگاه پیش‌فرض در صورت اجرای مستقیم 5900 و در صورت فعال‌سازی توسط یک سوکت systemd برابر -1 است. -rfbunixmode mode حالت دسترسی (mode) سوکت دامنه یونیکس را مشخص می‌کند. مقدار پیش‌فرض 0600 است. -rfbunixpath path مسیر سوکت دامنه یونیکس را مشخص می‌کند که x0vncserver روی آن برای اتصال‌ها از سمت نمایشگرها گوش می‌دهد. حالت پیش‌فرض، عدم گوش دادن به سوکت دامنه یونیکس است. -RSAKey path مسیر کلید RSA برای انواع امنیتی RSA-AES (RA2، RA2ne، RA2_256 و RA2ne_256) در قالب PEM. -SecurityTypes sec-types مشخص کردن طرح امنیتی مورد استفاده برای اتصالات ورودی. مقادیر معتبر فهرستی جدا شده با کاما از None، VncAuth، Plain، TLSNone، TLSVnc، TLSPlain، X509None، X509Vnc، X509Plain، RA2، RA2ne، RA2_256 و RA2ne_256 هستند. مقدار پیش‌فرض TLSVnc,VncAuth است. -UseBlacklist رد موقت اتصال‌ها از یک میزبان در صورتی که احراز هویت آن مکرراً با شکست مواجه شود. مقدار پیش‌فرض روشن (on) است. -UseIPv4 استفاده از IPv4 برای اتصالات ورودی و خروجی. مقدار پیش‌فرض روشن (on) است. -UseIPv6 استفاده از IPv6 برای اتصالات ورودی و خروجی. مقدار پیش‌فرض روشن (on) است. -UseSHM استفاده از افزونهٔ MIT-SHM در صورت در دسترس بودن. استفاده از این افزونه خواندن صفحه را سرعت می‌بخشد. مقدار پیش‌فرض روشن (on) است. -X509Cert path مسیر گواهی X509 در قالب PEM برای استفاده در تمامی انواع امنیتی مبتنی بر X509 (مانند X509None، X509Vnc و غیره). -X509Key path کلید خصوصی متناظر با گواهی ارائه‌شده در X509Cert. این کلید نیز باید در قالب PEM باشد. همچنین ببینید (SEE ALSO) Xvnc(1), vncpasswd(1), https://www.tigervnc.org نویسندگان (AUTHORS) Constantin Kaplinsky و دیگران. نرم‌افزار VNC در ابتدا توسط تیم RealVNC هنگام فعالیت در شرکت Olivetti Research Ltd / AT&T Laboratories Cambridge توسعه داده شد. الحاقات TightVNC توسط Constantin Kaplinsky پیاده‌سازی شدند. از آن زمان تاکنون افراد بسیار دیگری در توسعه، آزمایش و پشتیبانی آن مشارکت داشته‌اند. این راهنما بخشی از مجموعه نرم‌افزاری TigerVNC است. TigerVNC X0VNCSERVER(1)