X0VNCSERVER(1) TigerVNC Manual X0VNCSERVER(1)

x0vncserver - کارگزار TigerVNC برای نمایشگرهای X

x0vncserver [options]
x0vncserver -version

دستور x0vncserver یک کارگزار TigerVNC است که دسترسی از راه دور به هر نمایشگر X را از طریق VNC، TigerVNC یا نمایشگرهای سازگار فراهم می‌کند. بر خلاف Xvnc(1)، این برنامه یک نمایشگر مجازی ایجاد نمی‌کند؛ بلکه تنها یک کارگزار X موجود (معمولاً همان کارگزاری که به صفحهٔ نمایش فیزیکی متصل است) را به اشتراک می‌گذارد.

در صورتی که کارگزار X موجود از افزونهٔ XDamage پشتیبانی کند، از آن استفاده خواهد شد. در غیر این صورت x0vncserver به بررسی دوره‌ای (polling) صفحه نمایش برای تشخیص تغییرات روی خواهد آورد.

دستور x0vncserver خط فرمان را به عنوان فهرستی از پارامترها به همراه مقادیر اختیاری تفسیر می‌کند. اجرای x0vncserver -h فهرستی از تمام پارامترهای معتبر را با توضیحاتی کوتاه نمایش می‌دهد. تمام پارامترها اختیاری هستند، اما معمولاً باید از پارامتر PasswordFile استفاده کنید (توضیحات آن را در زیر ببینید).

چندین شیوه برای تعیین پارامترها در خط فرمان وجود دارد (در اینجا از «SomeParameter» به عنوان یک نام پارامتر نمونه استفاده شده است):

فعال‌سازی پارامتر، روشن کردن ویژگی. این شیوه را می‌توان برای پارامترهایی به کار برد که صرفاً ویژگی خاصی را فعال یا غیرفعال می‌کنند.
غیرفعال‌سازی پارامتر، خاموش کردن ویژگی.
اختصاص مقدار value مشخص‌شده به پارامتر. خط تیرهٔ ابتدایی می‌تواند حذف شود، یا در صورت تمایل دو بار تکرار شود (مشابه گزینه‌های طولانی سبک گنو).

نام پارامترها به حروف بزرگ و کوچک حساس نیست و ترتیب قرارگیری آن‌ها در خط فرمان دلخواه است.

پذیرش رویدادهای فشرده شدن و رها شدن کلیدها از سمت کلاینت‌ها. مقدار پیش‌فرض روشن (on) است.
پذیرش رویدادهای حرکت و دکمه‌های اشاره‌گر از کلاینت‌ها. مقدار پیش‌فرض روشن (on) است.
پذیرش درخواست‌ها برای تغییر اندازهٔ میزکار. مقدار پیش‌فرض روشن (on) است.
در نظر گرفتن اتصالات ورودی همواره به صورت اشتراکی (shared)، صرف‌نظر از تنظیمی که کلاینت مشخص کرده است. مقدار پیش‌فرض خاموش (off) است.
تعداد دفعات مجاز تلاش برای اتصال احراز هویت‌نشده از هر میزبان پیش از قرار گرفتن آن در فهرست سیاه. مقدار پیش‌فرض 5 است.
مدت‌زمان وقفهٔ اولیه (به ثانیه) هنگام قرار گرفتن یک میزبان در فهرست سیاه. میزبان تا زمان پایان این مهلت نمی‌تواند مجدداً برای اتصال تلاش کند. مقدار پیش‌فرض 10 است.
انجام مقایسهٔ پیکسلی روی بافر فریم (framebuffer) برای کاهش به‌روزرسانی‌های غیرضروری. می‌تواند 0 (خاموش)، 1 (همیشه) یا 2 (خودکار) باشد. مقدار پیش‌فرض 2 است.
هر میزکار نامی دارد که ممکن است توسط نمایشگر کلاینت نشان داده شود. مقدار پیش‌فرض آن "<user>@<hostname>" است.
قطع اتصال کلاینت‌های موجود در صورتی که یک اتصال ورودی غیراشتراکی باشد. مقدار پیش‌فرض روشن (on) است. اگر DisconnectClients نادرست (false) باشد، در حالی که کلاینتی فعال است اتصال غیراشتراکی جدید رد خواهد شد. در صورت ترکیب با NeverShared، بدین معناست که در هر لحظه تنها یک کلاینت مجاز است.
نام نمایشگر X. در صورت عدم تعیین، مقدار پیش‌فرض آن متغیر محیطی DISPLAY خواهد بود.
حداکثر تعداد به‌روزرسانی‌های ارسالی به هر کلاینت در ثانیه. اگر صفحه نمایش سریع‌تر به‌روزرسانی شود، آن تغییرات تجمیع شده و در قالب یک به‌روزرسانی واحد به کلاینت فرستاده می‌شوند. توجه داشته باشید که این گزینه فقط حداکثر نرخ را کنترل می‌کند و ممکن است در صورت محدودیت منابع، کلاینت نرخ پایین‌تری دریافت کند. مقدار پیش‌فرض 60 است.
این گزینه محدودهٔ صفحه‌ای را که به کلاینت‌های VNC نشان داده خواهد شد مشخص می‌کند. قالب آن به صورت widthxheight+xoffset+yoffset است، که در آن علامت‌های «+» می‌توانند با علامت‌های «-» جایگزین شوند تا جابه‌جایی‌ها از سمت راست و/یا از پایین صفحه تعیین گردند. تعیین جابه‌جایی‌ها اختیاری است و به طور پیش‌فرض مقدار +0+0 (گوشهٔ بالا سمت چپ) در نظر گرفته می‌شود. اگر این آرگومان خالی باشد، تمام صفحه به کلاینت‌های VNC نشان داده می‌شود (حالت پیش‌فرض).
رشتهٔ اولویت GnuTLS که الگوریتم‌های دست‌تکانی نشست TLS را کنترل می‌کند. برای مشاهدهٔ مقادیر ممکن به کتابچه راهنمای GnuTLS مراجعه کنید. مقدار پیش‌فرض NORMAL است.
این پارامتر امکان مشخص کردن نام فایلی حاوی قوانین کنترل دسترسی IP را فراهم می‌کند. فایل باید شامل یک قانون در هر خط باشد و قالب قانون یکی از موارد زیر است: +address/prefix (پذیرش اتصال‌ها از گروه آدرس مشخص‌شده)، -address/prefix (رد اتصال‌ها) یا ?address/prefix (پرسش از کاربر محلی). نخستین قانونی که با آدرس IP مطابقت داشته باشد، اقدام لازم را تعیین خواهد کرد. قوانینی که تنها شامل علامت اقدام (+، - یا ?) باشند با هر آدرس IP تطابق می‌یابند. مقدار Prefix اختیاری است و به صورت تعداد بیت‌ها مشخص می‌شود (برای مثال /24). مقدار پیش‌فرض، پذیرش اتصال از تمامی آدرس‌های IP است.
تعداد ثانیه‌هایی که پس از آن یک اتصال VNC بدون فعالیت (بیکار) قطع خواهد شد. مقدار پیش‌فرض 0 است، به این معنی که اتصال‌های بیکار هرگز قطع نمی‌شوند.
استفاده از الگوریتم فشرده‌سازی بهبودیافته برای کدگذاری Hextile که به بهای مصرف کمی بیشتر زمان پردازنده (CPU)، به نسبت فشرده‌سازی بهتری دست می‌یابد. مقدار پیش‌فرض روشن (on) است.
گوش دادن روی یک رابط شبکه مشخص. به طور پیش‌فرض x0vncserver روی تمام رابط‌های شبکه در دسترس گوش می‌دهد.
تنها اجازهٔ اتصال از همان ماشین (میزبان محلی) را می‌دهد. در صورتی که از SSH استفاده می‌کنید و می‌خواهید اتصال‌های غیر SSH را از سایر میزبان‌ها مسدود کنید بسیار مفید است.
تنظیمات لاگ اشکال‌زدایی را پیکربندی می‌کند. مقدار dest در حال حاضر می‌تواند stderr، stdout یا syslog باشد، و level بین 0 تا 100 است که 100 به معنای پرجزئیات‌ترین خروجی است. مقدار logname معمولاً * به معنای همه است، اما اگر نام "LogWriter" آن را بدانید می‌توانید فایل منبع خاصی را هدف قرار دهید. مقدار پیش‌فرض *:stderr:30 است.
خاتمه دادن به برنامه هنگامی که یک کلاینت به مدت N ثانیه متصل بوده است. مقدار پیش‌فرض 0 است.
خاتمه دادن به برنامه هنگامی که هیچ کلاینتی به مدت N ثانیه متصل نبوده است. مقدار پیش‌فرض 0 است.
خاتمه دادن به برنامه پس از N ثانیه عدم فعالیت کاربر. مقدار پیش‌فرض 0 است.
حداکثر درصد زمان پردازنده (CPU) که هنگام بررسی دوره‌ای صفحه نمایش مصرف می‌شود. مقدار پیش‌فرض 35 است.
هرگز اتصالات ورودی را به صورت اشتراکی در نظر نمی‌گیرد، صرف‌نظر از تنظیمی که کلاینت مشخص کرده باشد. مقدار پیش‌فرض خاموش (off) است.
نام سرویس PAM برای احراز هویت کاربران هنگام استفاده از هر یک از انواع امنیتی "Plain". مقدار پیش‌فرض vnc است.
کدگذاری دودویی مبهم‌شده از گذرواژه‌ای که کلاینت‌ها برای دسترسی به کارگزار باید ارائه دهند. استفاده از این پارامتر ناامن است، به جای آن از پارامتر PasswordFile استفاده کنید.
فایل گذرواژه برای احراز هویت VNC. هیچ مقدار پیش‌فرضی وجود ندارد و باید فایل گذرواژه را صریحاً مشخص کنید. فایل گذرواژه باید با ابزار vncpasswd(1) ایجاد شود. این فایل هر بار که اتصالی برقرار می‌شود بازخوانی می‌گردد، بنابراین می‌توان آن را به صورت درجا تغییر داد.
فهرستی از نام‌های کاربری جدا شده با کاما که مجاز به احراز هویت از طریق هر یک از انواع امنیتی "Plain" (مانند Plain، TLSPlain و غیره) هستند. مقدار * را برای مجاز ساختن هر کاربری جهت احراز هویت با استفاده از این نوع امنیتی مشخص کنید. مقدار %u را برای اجازه به کاربری که فرایند کارگزار را اجرا کرده است مشخص کنید. مقدار پیش‌فرض، رد کردن تمام کاربران است.
تعداد میلی‌ثانیه‌ها در هر چرخهٔ سرکشی (polling). بازهٔ واقعی ممکن است برای برآورده ساختن تنظیم MaxProcessorUsage به صورت پویا تنظیم شود. مقدار پیش‌فرض 30 است.
استفادهٔ همیشگی از پروتکل نسخه 3.3 جهت سازگاری عقبروی با کلاینت‌های ناسازگار. مقدار پیش‌فرض خاموش (off) است.
از کاربر میزکار می‌خواهد تا اتصالات ورودی را صریحاً بپذیرد یا رد کند. مقدار پیش‌فرض خاموش (off) است.
تعداد ثانیه‌های نمایش کادر گفتگوی پذیرش اتصال پیش از رد کردن آن. مقدار پیش‌فرض 10 است.
ارسال مستقیم رویدادهای صفحه‌کلید و جلوگیری از نگاشت آن‌ها به چیدمان صفحه‌کلید فعلی. این عمل عملاً باعث می‌شود صفحه‌کلید به جای چیدمان تنظیم‌شده در کلاینت، بر اساس چیدمان پیکربندی‌شده روی کارگزار رفتار کند. مقدار پیش‌فرض خاموش (off) است.
پذیرش به‌روزرسانی‌های کلیپ‌بورد از کلاینت‌ها. مقدار پیش‌فرض روشن (on) است.
تنظیم انتخاب PRIMARY علاوه بر انتخاب CLIPBOARD. مقدار پیش‌فرض روشن (on) است.
حداکثر اندازهٔ مجاز برای یک به‌روزرسانی ورودی کلیپ‌بورد (به بایت). مقدار پیش‌فرض 262144 است.
ارسال تغییرات کلیپ‌بورد به کلاینت‌ها. مقدار پیش‌فرض روشن (on) است.
ارسال انتخاب PRIMARY علاوه بر انتخاب CLIPBOARD به کلاینت‌ها. مقدار پیش‌فرض روشن (on) است.
یک نگاشت صفحه‌کلید را تنظیم می‌کند. mapping یک رشته از نگاشت‌های نویسه‌ای جدا شده با کاما به فرم char->char، یا char<>char است، که در آن char یک نماد کلید (keysym) در مبنای شانزده است. برای مثال، جهت تعویض جای نمادهای " و @ می‌توانید مورد زیر را تعیین کنید:
RemapKeys=0x22<>0x40
الزام وجود نام کاربری برای انواع امنیتی RSA-AES. مقدار پیش‌فرض خاموش (off) است.
درگاه TCP که x0vncserver روی آن برای اتصال‌ها از نمایشگرها گوش می‌دهد را مشخص می‌کند (پروتکل مورد استفاده در VNC، تحت عنوان RFB یا "remote framebuffer" شناخته می‌شود). مقدار -1 را برای غیرفعال کردن گوش دادن روی درگاه TCP مشخص کنید. درگاه پیش‌فرض در صورت اجرای مستقیم 5900 و در صورت فعال‌سازی توسط یک سوکت systemd برابر -1 است.
حالت دسترسی (mode) سوکت دامنه یونیکس را مشخص می‌کند. مقدار پیش‌فرض 0600 است.
مسیر سوکت دامنه یونیکس را مشخص می‌کند که x0vncserver روی آن برای اتصال‌ها از سمت نمایشگرها گوش می‌دهد. حالت پیش‌فرض، عدم گوش دادن به سوکت دامنه یونیکس است.
مسیر کلید RSA برای انواع امنیتی RSA-AES (RA2، RA2ne، RA2_256 و RA2ne_256) در قالب PEM.
مشخص کردن طرح امنیتی مورد استفاده برای اتصالات ورودی. مقادیر معتبر فهرستی جدا شده با کاما از None، VncAuth، Plain، TLSNone، TLSVnc، TLSPlain، X509None، X509Vnc، X509Plain، RA2، RA2ne، RA2_256 و RA2ne_256 هستند. مقدار پیش‌فرض TLSVnc,VncAuth است.
رد موقت اتصال‌ها از یک میزبان در صورتی که احراز هویت آن مکرراً با شکست مواجه شود. مقدار پیش‌فرض روشن (on) است.
استفاده از IPv4 برای اتصالات ورودی و خروجی. مقدار پیش‌فرض روشن (on) است.
استفاده از IPv6 برای اتصالات ورودی و خروجی. مقدار پیش‌فرض روشن (on) است.
استفاده از افزونهٔ MIT-SHM در صورت در دسترس بودن. استفاده از این افزونه خواندن صفحه را سرعت می‌بخشد. مقدار پیش‌فرض روشن (on) است.
مسیر گواهی X509 در قالب PEM برای استفاده در تمامی انواع امنیتی مبتنی بر X509 (مانند X509None، X509Vnc و غیره).
کلید خصوصی متناظر با گواهی ارائه‌شده در X509Cert. این کلید نیز باید در قالب PEM باشد.

Xvnc(1), vncpasswd(1),
https://www.tigervnc.org

Constantin Kaplinsky و دیگران.

نرم‌افزار VNC در ابتدا توسط تیم RealVNC هنگام فعالیت در شرکت Olivetti Research Ltd / AT&T Laboratories Cambridge توسعه داده شد. الحاقات TightVNC توسط Constantin Kaplinsky پیاده‌سازی شدند. از آن زمان تاکنون افراد بسیار دیگری در توسعه، آزمایش و پشتیبانی آن مشارکت داشته‌اند. این راهنما بخشی از مجموعه نرم‌افزاری TigerVNC است.

TigerVNC