Tightvnc را از خط فرمان نصب کنید. کنترل از راه دور لینوکس از ویندوز. روش عفونت TightVNC

کار با مشتری VNC این مطالب برای کاربران بی تجربه طراحی شده است.

1. نصب کلاینت VNC
2. اتصال یک کلاینت VNC به یک کامپیوتر راه دور
3. قطع اتصال کلاینت VNC از کامپیوتر راه دور
4. تنظیم مشتری VNC
5. مشکلات رایج

برای کار با یک کامپیوتر از راه دور از طریق VNC، باید یک برنامه مشتری (نمایشگر VNC، مشتری VNC) را بر روی رایانه کاربر اجرا کنید. این برنامه داده های مربوط به ضربه های کلید و حرکات ماوس را که توسط کاربر انجام می شود به یک کامپیوتر از راه دور منتقل می کند و اطلاعاتی را که قرار است روی صفحه نمایش داده شود نمایش می دهد.

1. نصب کلاینت VNC
برای سیستم عامل ویندوز می توانید VNC Client UltraVNC و TightVNC را به صورت رایگان دانلود و نصب کنید.

Mac OS X از نسخه 10.5 از یک کلاینت VNC در RemoteDesktop پشتیبانی می کند. برای نسخه های قبلیمی توانید از مشتریان VNC JollysFastVNC و .

برای شاخه لینوکس دبیان (اوبونتو)، مشتری VNC از مخزن با دستور زیر نصب می شود:

Apt-get نصب vncviewer

برای شاخه RedHat (CentOS، Fedora) - با دستور:

یام vnc را نصب کنید

برای FreeBSD، سرویس گیرنده VNC (TightVNC) از بسته ها با دستور زیر نصب می شود:

Pkg_add -r tightvnc

2. اتصال یک کلاینت VNC به یک کامپیوتر راه دور
برای اتصال یک کلاینت VNC به یک کامپیوتر راه دور، باید آدرس IP یا نام DNS آن و شماره نمایش (پیش‌فرض، :0) یا شماره پورت TCP (پیش‌فرض، 5900) را مشخص کنید. اگر سرور VNC نیاز به مجوز داشته باشد، هنگام اتصال به آن، کلاینت VNC یک رمز عبور می خواهد. لطفاً توجه داشته باشید که رمز ورود به سرور VNC با هیچ حساب کاربری (حساب کاربری) در رایانه راه دور مرتبط نیست، بلکه فقط برای محدود کردن دسترسی به نمایشگر سرور VNC عمل می کند.

پس از برقراری ارتباط و باز کردن صفحه، بسته به تنظیمات سرور VNC، ممکن است مجوز کاربر مورد نیاز باشد سرور مجازییا یک جلسه کاری از قبل در حال اجرا از یک کاربر ممکن است باز شود.

از آنجایی که چندین سرور VNC می توانند همزمان روی یک کامپیوتر اجرا شوند، از این پارامتر برای جداسازی آنها استفاده می شود شماره نمایش. به عنوان مثال، یک سرور VNC ممکن است در صفحه نمایش: 0 و دیگری در صفحه نمایش: 1 در حال اجرا باشد. هر عدد نمایش مربوط به شماره پورت TCP است که سرور VNC اتصالات را می پذیرد. شماره پورت نمایشگر با افزودن شماره نمایش به شماره پورت پایه - 5900 به دست می آید. Display:0 مربوط به پورت TCP 5900، display:1 - پورت 5901 است.

3. قطع اتصال کلاینت VNC از کامپیوتر راه دور
هنگام بستن پنجره سرویس گیرنده VNC یا پس از خروج از محیط با استفاده از ابزارهای دسکتاپ، بسته به تنظیمات سرور VNC، جلسه کاری کاربر می تواند با توقف تمام برنامه های در حال استفاده بسته شود یا به کار خود ادامه دهد و هنگام اتصال به سرور VNC دوباره در دسترس باشد. از نو.
4. تنظیم مشتری VNC
حجم زیادی از اطلاعات ارسال شده به صفحه نمایش مستلزم افزایش نیاز به سرعت کانال - توان عملیاتی آن و زمان ارسال بسته است. کمبود پهنای باند منجر به تاخیرهای ناراحت کننده در هنگام ایجاد تغییرات بزرگ در اطلاعات نشان داده شده روی صفحه می شود - باز کردن پنجره های جدید، پیمایش و غیره. زمان تأخیر به ویژه هنگام نمایش عکس ها و سایر تصاویر یا عناصر رابط که تعداد زیادی رنگ و اشکال پیچیده دارند طولانی خواهد بود.

پارامتر اصلی که بر میزان داده های ارسالی تأثیر می گذارد، الگوریتم رمزگذاری گرافیک ارسالی است. برای کاهش حجم و بر این اساس، سرعت بخشیدن به کار، توصیه می شود از الگوریتم های Tight، ZLib، ZRLE استفاده کنید - در مقایسه با داده های فشرده نشده (Raw)، آنها ده ها بار فشرده سازی را ارائه می دهند و به طور قابل توجهی پردازنده را بارگیری می کنند. این الگوریتم های رمزگذاری عملکرد راحت را حتی در کانال هایی با سرعت 256-512 کیلوبیت بر ثانیه فراهم می کنند.

برای کاهش حجم اطلاعات ارسال شده از طریق شبکه، می توانید سطح فشرده سازی بالا (سطح فشرده سازی، ارزش فشرده سازی)، سطح کیفیت JPEG پایین (کیفیت JPEG) را تنظیم کنید و حالت کاهش رنگ (-bgr233، رنگ های محدود) را فعال کنید. بیشترین تأثیر آنها، با کاهش قابل توجه کیفیت تصویر، توسط حالت کاهش تعداد رنگ ها - حجم ارائه می شود. اطلاعات منتقل شدهبه ترتیب 1.5-3 بار کاهش می یابد، نمایش روی صفحه نمایش 1.5-3 بار شتاب می گیرد.

JPEG توسط الگوریتم رمزگذاری Tight برای فشرده سازی مناطقی از صفحه که حاوی عکس ها و سایر تصاویر پیچیده با تعداد زیادی رنگ هستند استفاده می شود. استفاده از Tight+JPEG میزان داده های ارسالی را 2 تا 5 برابر کاهش می دهد. سایر الگوریتم های کدگذاری JPEG پشتیبانی نمی شوند.

1. منوی کشویی "System -> Options"

حجم داده های ارسالی و سرعت نمایش در کانال 1 مگابیت بر ثانیه هنگام باز کردن منوی کشویی "System -> Parameters" است (منو با یک خط نقطه سبز در شکل مشخص شده است):

5. مشکلات رایج
نمی توان به سرور VNC متصل شد
نیاز به بررسی:
  1. آیا دسترسی به اینترنت وجود دارد؛
  2. آیا سرور مجازی به پینگ پاسخ می دهد یا خیر.
  3. آیا سرور VNC روی سرور مجازی در حال اجرا است.
  4. آیا دیوار آتشی در طول مسیر وجود دارد که دسترسی به پورت TCP سرور VNC را مسدود می کند.
  5. آیا شماره نمایش یا پورت TCP سرور VNC به درستی مشخص شده است (شماره پورت = 5900 + شماره نمایش).
عملکرد آهسته از طریق یک کانال نسبتاً سریع
اگر مشتری VNC نتواند با سرور VNC در مورد استفاده از یک الگوریتم رمزگذاری گرافیکی با فشرده سازی داده موافقت کند، الگوریتم پیش فرض انتخاب می شود - Raw که داده ها را بدون فشرده سازی منتقل می کند. همچنین، رمزگذاری بدون فشرده سازی یا با سطح فشرده سازی کم می تواند به طور خودکار توسط مشتری VNC در هنگام کار سریع انتخاب شود. شبکه محلی. این مشکلرا می توان با اعمال الگوریتم رمزگذاری با سطح فشرده سازی بالا - ZLib، ZRLE، Tight - در تنظیمات مشتری VNC ثابت کرد.

با این حال، برای برخی از ترکیبات مشتری و سرور، این راه حل ممکن است به دلیل خطا در مذاکره الگوریتم رمزگذاری مفید نباشد. به عنوان مثال، یک کلاینت TightVNC با سرور RealVNC اغلب فقط می تواند با رمزگذاری Raw کار کند. راه حل در این مورد تغییر کلاینت VNC یا سرور VNC است.

نوامبر 25, 2009 در 01:21 ب.ظ

اتصال به کامپیوتر از راه دور از طریق VNC

  • راه اندازی لینوکس

کار با مشتری VNC این مطالب برای کاربران بی تجربه طراحی شده است.

1. نصب کلاینت VNC
2. اتصال یک کلاینت VNC به یک کامپیوتر راه دور
3. قطع اتصال کلاینت VNC از کامپیوتر راه دور
4. تنظیم مشتری VNC
5. مشکلات رایج

برای کار با یک کامپیوتر از راه دور از طریق VNC، باید یک برنامه مشتری (نمایشگر VNC، مشتری VNC) را بر روی رایانه کاربر اجرا کنید. این برنامه داده های مربوط به ضربه های کلید و حرکات ماوس را که توسط کاربر انجام می شود به یک کامپیوتر از راه دور منتقل می کند و اطلاعاتی را که قرار است روی صفحه نمایش داده شود نمایش می دهد.

1. نصب کلاینت VNC
برای سیستم عامل ویندوز می توانید VNC Client UltraVNC و TightVNC را به صورت رایگان دانلود و نصب کنید.

Mac OS X از نسخه 10.5 از یک کلاینت VNC در RemoteDesktop پشتیبانی می کند. برای نسخه های قبلی، می توانید از مشتریان VNC JollysFastVNC و .

برای شاخه لینوکس دبیان (اوبونتو)، مشتری VNC از مخزن با دستور زیر نصب می شود:

Apt-get نصب vncviewer

برای شاخه RedHat (CentOS، Fedora) - با دستور:

یام vnc را نصب کنید

برای FreeBSD، سرویس گیرنده VNC (TightVNC) از بسته ها با دستور زیر نصب می شود:

Pkg_add -r tightvnc

2. اتصال یک کلاینت VNC به یک کامپیوتر راه دور
برای اتصال یک کلاینت VNC به یک کامپیوتر راه دور، باید آدرس IP یا نام DNS آن و شماره نمایش (پیش‌فرض، :0) یا شماره پورت TCP (پیش‌فرض، 5900) را مشخص کنید. اگر سرور VNC نیاز به مجوز داشته باشد، هنگام اتصال به آن، کلاینت VNC یک رمز عبور می خواهد. لطفاً توجه داشته باشید که رمز ورود به سرور VNC با هیچ حساب کاربری (حساب کاربری) در رایانه راه دور مرتبط نیست، بلکه فقط برای محدود کردن دسترسی به نمایشگر سرور VNC عمل می کند.

پس از برقراری اتصال و باز کردن صفحه، بسته به تنظیمات سرور VNC، ممکن است مجوز کاربر در سرور مجازی مورد نیاز باشد، یا ممکن است یک جلسه کاری از قبل در حال اجرا از یک کاربر باز شود.

از آنجایی که چندین سرور VNC می توانند همزمان روی یک کامپیوتر اجرا شوند، از این پارامتر برای جداسازی آنها استفاده می شود شماره نمایش. به عنوان مثال، یک سرور VNC ممکن است در صفحه نمایش: 0 و دیگری در صفحه نمایش: 1 در حال اجرا باشد. هر عدد نمایش مربوط به شماره پورت TCP است که سرور VNC اتصالات را می پذیرد. شماره پورت نمایشگر با افزودن شماره نمایش به شماره پورت پایه - 5900 به دست می آید. Display:0 مربوط به پورت TCP 5900، display:1 - پورت 5901 است.

3. قطع اتصال کلاینت VNC از کامپیوتر راه دور
هنگام بستن پنجره سرویس گیرنده VNC یا پس از خروج از محیط با استفاده از ابزارهای دسکتاپ، بسته به تنظیمات سرور VNC، جلسه کاری کاربر می تواند با توقف تمام برنامه های در حال استفاده بسته شود یا به کار خود ادامه دهد و هنگام اتصال به سرور VNC دوباره در دسترس باشد. از نو.
4. تنظیم مشتری VNC
حجم زیادی از اطلاعات ارسال شده به صفحه نمایش مستلزم افزایش نیاز به سرعت کانال - توان عملیاتی آن و زمان ارسال بسته است. کمبود پهنای باند منجر به تاخیرهای ناراحت کننده در هنگام ایجاد تغییرات بزرگ در اطلاعات نشان داده شده روی صفحه می شود - باز کردن پنجره های جدید، پیمایش و غیره. زمان تأخیر به ویژه هنگام نمایش عکس ها و سایر تصاویر یا عناصر رابط که تعداد زیادی رنگ و اشکال پیچیده دارند طولانی خواهد بود.

پارامتر اصلی که بر میزان داده های ارسالی تأثیر می گذارد، الگوریتم رمزگذاری گرافیک ارسالی است. برای کاهش حجم و بر این اساس، سرعت بخشیدن به کار، توصیه می شود از الگوریتم های Tight، ZLib، ZRLE استفاده کنید - در مقایسه با داده های فشرده نشده (Raw)، آنها ده ها بار فشرده سازی را ارائه می دهند و به طور قابل توجهی پردازنده را بارگیری می کنند. این الگوریتم های رمزگذاری عملکرد راحت را حتی در کانال هایی با سرعت 256-512 کیلوبیت بر ثانیه فراهم می کنند.

برای کاهش حجم اطلاعات ارسال شده از طریق شبکه، می توانید سطح فشرده سازی بالا (سطح فشرده سازی، ارزش فشرده سازی)، سطح کیفیت JPEG پایین (کیفیت JPEG) را تنظیم کنید و حالت کاهش رنگ (-bgr233، رنگ های محدود) را فعال کنید. بیشترین تأثیر آنها، با کاهش قابل توجه کیفیت تصویر، با حالت کاهش تعداد رنگ ها ارائه می شود - حجم اطلاعات ارسال شده به ترتیب 1.5-3 بار کاهش می یابد، نمایش روی صفحه نمایش 1.5 شتاب می گیرد. -3 بار

JPEG توسط الگوریتم رمزگذاری Tight برای فشرده سازی مناطقی از صفحه که حاوی عکس ها و سایر تصاویر پیچیده با تعداد زیادی رنگ هستند استفاده می شود. استفاده از Tight+JPEG میزان داده های ارسالی را 2 تا 5 برابر کاهش می دهد. سایر الگوریتم های کدگذاری JPEG پشتیبانی نمی شوند.

1. منوی کشویی "System -> Options"

حجم داده های ارسالی و سرعت نمایش در کانال 1 مگابیت بر ثانیه هنگام باز کردن منوی کشویی "System -> Parameters" است (منو با یک خط نقطه سبز در شکل مشخص شده است):

5. مشکلات رایج
نمی توان به سرور VNC متصل شد
نیاز به بررسی:
  1. آیا دسترسی به اینترنت وجود دارد؛
  2. آیا سرور مجازی به پینگ پاسخ می دهد یا خیر.
  3. آیا سرور VNC روی سرور مجازی در حال اجرا است.
  4. آیا دیوار آتشی در طول مسیر وجود دارد که دسترسی به پورت TCP سرور VNC را مسدود می کند.
  5. آیا شماره نمایش یا پورت TCP سرور VNC به درستی مشخص شده است (شماره پورت = 5900 + شماره نمایش).
عملکرد آهسته از طریق یک کانال نسبتاً سریع
اگر مشتری VNC نتواند با سرور VNC در مورد استفاده از یک الگوریتم رمزگذاری گرافیکی با فشرده سازی داده موافقت کند، الگوریتم پیش فرض انتخاب می شود - Raw که داده ها را بدون فشرده سازی منتقل می کند. همچنین، هنگام کار بر روی یک شبکه محلی سریع، رمزگذاری غیر فشرده یا کم فشرده‌سازی می‌تواند به‌طور خودکار توسط مشتری VNC انتخاب شود. این مشکل را می توان با اجباری کردن الگوریتم رمزگذاری با سطح فشرده سازی بالا - ZLib، ZRLE، Tight - در تنظیمات مشتری VNC برطرف کرد.

با این حال، برای برخی از ترکیبات مشتری و سرور، این راه حل ممکن است به دلیل خطا در مذاکره الگوریتم رمزگذاری مفید نباشد. به عنوان مثال، یک کلاینت TightVNC با سرور RealVNC اغلب فقط می تواند با رمزگذاری Raw کار کند. راه حل در این مورد تغییر کلاینت VNC یا سرور VNC است.

گاهی اوقات ما نیاز به دسترسی از راه دور به پوسته بصری لینوکس داریم، این وظیفهبه ندرت مورد نیاز است، اما اگر مورد نیاز باشد، هیچ چیز غیرممکن نیست :) برای این منظور استفاده از آن را توصیه می کنم tightvnc، چرا tightVNC؟ این نرم افزار قابلیت هر دو را دارد لینوکس، و از پنجره هااز راه دور به دسکتاپ متصل شوید، نصب آن بسیار ساده است و نیازی به رقص خاصی با تنبور ندارد :) شاید حتی بیشتر باشد بهترین نرم افزارخوب، آن را با ما به اشتراک بگذارید :)
بالاتر از هر چیز دیگری tightVNCتوانایی کار بر روی کانال های ارتباطی کم، این یک مزیت خوب برای بهینه سازی است.
بیایید به سمت نصب حرکت کنیم!

نصب سرور tightvnc روی دستگاهی که می خواهید به آن متصل شوید:
sudo apt-get نصب سرور tightvnc
که در آخرین به روزرسانی ها ubuntu، یعنی از نسخه 14.04، هنگام اتصال به جای برده، یک اشکال کوچک با gnome وجود داشت. جدول یک صفحه خاکستری نشان می دهد، بنابراین برای اتصال باید از ماژول پوسته دیگری استفاده کنید:
sudo apt-get نصب xfce4 xfce4-goodies
تنظیم رمز عبور برای دسترسی:
vncpasswd ~/.vnc/passwd فایل passwd در ایجاد خواهد شد پوشه پنهاندر فهرست اصلی خود ... می توانید این پوشه را خودتان بسازید.vnc...

با تنظیماتی که نیاز دارید اجرا کنید:
sudo tightvncserver -geometry 1024x768 -depth 16 اجرای TightVNC با وضوح 1024x768 و عمق رنگ 16 بیت

راه اندازی استاندارد:
sudo vncserver:1
کشتن یک فرآیند پس از تکمیل:
sudo vncserver -kill:1

توجه داشته باشید:

چگونه پورت tightVNC پیش فرض را تغییر دهیم؟
برای دسترسی به دستگاه راه دور، پورت باید فوروارد شود 5901، این پورت استاندارد tightVNC است، می توانید هنگام اتصال آن را تغییر دهید، هنگام اتصال در حالت استاندارد استفاده می کنید: 1 - این پورت 5901 است، اگر می خواهید از پورت 5911 استفاده کنید، بنابراین هنگام اتصال آن خواهد بود: 11 و غیره: به عنوان مثال، شما به پورت نیاز دارید. 7829، vncserver را راه اندازی کنیدبا این قانون:
sudo vncserver:7829 5900 = 1929 را کم کنید، سپس هنگام اتصال به دستگاه از راه دوربنویسید: IP:1929 یا مانند این: IP:7829، همانطور که دوست دارید استفاده کنید، فراموش نکنید که پورت مورد نیاز خود را فوروارد کنید.
صفحه خاکستری TightVNC هنگام اتصال
اگر هنگام اتصال باگ با صفحه خاکستری داشتید و بسته را نصب کردید xfce4، سپس باید فایل را تغییر دهید xstartup:
sudo nano root/.vnc/xstartup همه چیز را در نظر بگیرید این فایلو موارد زیر را اضافه کنید:
#!bin/sh xrdb $HOME/.Xresources startxfce4 &
tightVNC هنگام تغییر طرح صفحه کلید کار نمی کند
اگر چیدمان صفحه کلید شما تغییر نمی کند، اضافه کنید:
#!bin/sh xrdb $HOME/.Xresources startxfce4 و صادرات XKL_XMODMAP_DISABLE=1 اما این غیرضروری است، این اشکال به ندرت اتفاق می افتد...
در زیر بسته های نصب را پیوست می کنم نمایشگر tightVNCو سروربرای پنجره ها 32 و 64 بیت. جک والن نحوه استفاده از TightVNC از راه دور و بالعکس را برای مدیریت بین پلتفرم توضیح می دهد.

از دیدگاه یک مدیر، یکی از مهمترین عملکردهای سیستم، امکان نگهداری از راه دور آن است. ابزارهایی برای انجام این کار تقریباً در هر سیستم عاملی موجود است، اما اگر چه باید کرد؟ مدیریت از راه دوردر یک محیط کراس پلتفرم مورد نیاز است؟ پروتکل دسکتاپ از راه دور در این مورد یک گزینه نیست. برای اتصال به ویندوز از رایانه لینوکس، بهترین گزینه استفاده از VNC (محاسبات شبکه مجازی) یا به طور خاص تر، TightVNC است.

TightVNC است راه حل رایگانبرای کار با VNC، که شامل یک نمایشگر و سرور برای ویندوز، و همچنین یک سرور برای لینوکس است. بیایید ببینیم چگونه می توان سرورها را در هر دو پلتفرم برای فعال کردن راه اندازی کرد اتصال از راه دور.

اتصال از لینوکس به ویندوز

نصب TightVNC روی ویندوز بسیار آسان است. فقط نسخه مناسب نصب کننده را از وب سایت TightVNC دانلود کنید، روی فایل دوبار کلیک کنید و دستورالعمل های جادوگر را دنبال کنید. اما پس از آن همه چیز کمی پیچیده تر است.

برای اینکه بتوانید به رایانه خود متصل شوید، ابتدا باید سرور TightVNC را پیکربندی و اجرا کنید. برای انجام این کار، در Start | همه برنامه ها" (شروع | همه برنامه ها) پوشه "TightVNC | TightVNC Server (Application Mode)» و در آن ابزار «TightVNC Server - Offline Configuration» را اجرا کنید. در پنجره ای که ظاهر می شود، تب "Server" را باز کنید (شکل A) و سرور TightVNC را بر اساس نیاز خود پیکربندی کنید.

شکل A: یک رمز عبور باید برای اتصالات ورودی تنظیم شود و نمی تواند خالی باشد.

حداقل باید یک رمز عبور برای اتصالات ورودی تنظیم کنید. پس از این می توانید سرور را راه اندازی کنید. برای این کار از میانبر Run TightVNC Server در همان پوشه استفاده کنید. در این حالت هیچ پنجره ای باز نمی شود - در عوض، زمینهدیمون TightVNC راه اندازی خواهد شد.

اکنون در رایانه لینوکس خود اجرا کنید درمان استاندارد Remote Desktop Connection، آدرس IP سرور VNC ویندوز را وارد کرده و متصل شوید. از شما خواسته می شود یک رمز عبور وارد کنید، پس از آن یک اتصال از راه دور برقرار می شود.

اگر نمی دانید کدام مشتری VNC را انتخاب کنید، من Vinagre را توصیه می کنم - ساده و نرم افزار راحتبرای محیط دسکتاپ گنوم

اتصال از ویندوز به لینوکس

اتصال از ویندوز به لینوکس کمی ساده تر است ( سانتی متر.). من توضیح خواهم داد که چگونه می توان یک اتصال را در رایانه در حال اجرا تنظیم کرد مدیریت اوبونتو 10.10. ابتدا باید tightvncserver را نصب کنید.

1. مرکز نرم افزار اوبونتو را راه اندازی کنید.
2. "tightvncserver" (بدون نقل قول) را در نوار جستجو وارد کنید.
3. tightvncserver را هایلایت کرده و روی دکمه Install کلیک کنید.
4. رمز عبور خود را وارد کنید حسابریشه

پس از نصب، باید سرور را پیکربندی کنید. برای این:

1. یک ترمینال را باز کنید.
2. دستور tightvncserver را اجرا کنید.
3. رمز عبور خود را وارد کنید.
4. در صورت لزوم، یک رمز عبور برای مشاهده تنظیم کنید.

اکنون می توانید با استفاده از اپلیکیشن TightVNC Viewer از ویندوز به این کامپیوتر متصل شوید. آن را از شروع | همه برنامه ها | TightVNC | TightVNC Viewer" را وارد کنید و در پنجره ای که ظاهر می شود آدرس IP رایانه لینوکس را که پورت 5901 را با فرمت "192.168.100.21:5901" نشان می دهد وارد کنید. اگر شماره پورت را مشخص نکنید، TightVNC Viewer سعی می کند به پورت 5900 متصل شود و اتصال ناموفق خواهد بود.

هنگام اتصال، باید رمز عبوری را که هنگام راه‌اندازی سرور در رایانه‌ای که لینوکس دارد تنظیم کرده‌اید، ارائه دهید. پس از تأیید موفقیت آمیز، یک اتصال برقرار خواهد شد (شکل B).


شکل B. اتصال به tightvncserver با استفاده از TightVNC Viewer به شما امکان می دهد از راه دور یک کامپیوتر لینوکس را از ویندوز مدیریت کنید.

سرانجام

راه‌های زیادی برای اتصال به رایانه از راه دور وجود دارد، اما داشتن یک راه‌حل بین پلتفرم جهانی مانند TightVNC این کار را بسیار آسان‌تر می‌کند. از چه وسیله ای برای اتصال از راه دور استفاده می کنید؟ آیا از VNC، RDP یا شخص ثالث استفاده می کنید؟ نرم افزارمانند Logmain؟ تجربه خود را در نظرات به اشتراک بگذارید!

  • آموزش

این راهنما در مورد چگونگی راه اندازی noVNC برای دسترسی از راه دوربه کامپیوترهای ویندوزی

چرا noVNC؟

- ویندوز یک ابزار "بومی" برای دسترسی از راه دور دارد - اتصال از راه دور دسکتاپ. اما در همه نسخه های ویندوز موجود نیست - به عنوان مثال، در نسخه Home نیست.
- همچنین بسیاری از سرورها و کلاینت های VNC برای هر کدام وجود دارد نسخه های ویندوز. اما برای استفاده از آنها باید یک کلاینت VNC نصب کنید. و مواردی وجود دارد که نمی توانید چیزی را نصب کنید (حقوق محدود) یا نامطلوب است تا ردی از رایانه شخص دیگری باقی نماند.
- همچنین Chrome Remote Desktop وجود دارد که فقط به یک افزونه مرورگر در سمت مشتری نیاز دارد. اما من موردی داشتم که پروتکل کروم توسط یک سازمان مسدود شده بود (همه چیز در آنجا مسدود شده بود) و noVNC از HTTP معمولی استفاده می کند و بنابراین کار می کند.

تا آنجا که من می دانم، noVNC تنها ابزاری است که به شما امکان می دهد بدون نصب هیچ کلاینت به یک کامپیوتر راه دور متصل شوید - فقط از یک مرورگر استفاده می شود.
SPICE نیز وجود دارد، اما من سروری برای آن در ویندوز پیدا نکردم.

در نتیجه این راهنما، ما می توانیم به سادگی پیوند را در مرورگر باز کنیم، رمز عبور را وارد کرده و از سیستم راه دور استفاده کنیم.

یک پیش نیاز، ارسال پورت یا IP سفید کامپیوتر راه دور است. شما همچنین می توانید از تکرار کننده VNC استفاده کنید. اما این از حوصله این مقاله خارج است.

طرح کلی

ابتدا یک سرور VNC معمولی را روی پورت 5900 نصب می کنیم.

سپس noVNC و WebSockify را روی پورت 5901 نصب می کنیم.

هدف این است که چیزی شبیه به این باشد:


اکنون خط فرمان را با حقوق مدیر اجرا کنید:


WebSockify را راه اندازی کنید:

C:\> cd c:\noVNC\websockify c:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master هشدار: ماژول "منبع" وجود ندارد، پشتیبانی از WebSocket غیرفعال است. تنظیمات سرور: - Listen on:5901 - سرور سیاست امنیتی Flash - سرور وب. ریشه وب: c:\noVNC\noVNC-master - بدون پشتیبانی از SSL/TLS (بدون فایل گواهی) - پروکسی از:5901 تا 127.0.0.1:5900
اولین پارامتر بالا پورتی است که noVNC به آن گوش می دهد: 5901 . این پورت باید در اختیار مشتریان قرار گیرد.

پارامتر دوم IP و پورتی است که سرور VNC در آن قرار دارد: 127.0.0.1:5900

پارامتر سوم --وببه noVNC دستور می دهد تا محتویات دایرکتوری را ارائه دهد c:\noVNC\noVNC-masterاز طریق HTTP(ها). به طور پیش فرض، noVNC فقط یک وب سوکت VNC را ارائه می دهد، اما این گزینه به شما امکان می دهد یک سرور HTTP در همان پورت داشته باشید.

در دایرکتوری c:\noVNC\noVNC-masterنام فایل را تغییر دهید vnc.html V index.htmlبه طوری که به صورت پیش فرض داده می شود.

اکنون مشتری noVNC باید در پورت 5901 در دسترس باشد:


همچنین سعی کنید صفحه noVNC را از رایانه/گوشی هوشمند دیگری باز کنید تا مطمئن شوید که از خارج قابل دسترسی است. اگر نه، پس بررسی کنید:

چی داری دیوار آتش ویندوزمسدود نمی کند اتصالات خارجیبه این بندر،
- که روتر شما درخواست ها را به درستی به این پورت ارسال می کند کامپیوتر مناسب; در صورت لزوم، "پورت فوروارد" را در گوگل جستجو کنید.

وصل می شویم (Connect)، رمز VNC را وارد می کنیم و دسکتاپ کامپیوتر راه دور را می بینیم!

اگر مشکلی پیش آمد، خطاها باید در کنسول ما ظاهر شوند.

شما می توانید سرور noVNC را با فشار دادن Ctrl-C در کنسول متوقف کنید. پیکربندی شرح داده شده در بالا روی HTTP (و روی WS) کار می کند.

افزودن SSL با گواهی خود امضا شده

افزودن SSL اختیاری است. شما می توانید یک گواهی خود امضا شده مانند این ایجاد کنید:

Openssl req -new -x509 -days 365 -nodes -out self.pem -keyout self.pem
برای ویندوز openssl می توانید .

در نتیجه، فایل self.pem را دریافت می کنیم که هنگام شروع noVNC باید به آن اشاره کرد:

C:\noVNC\websockify> websockify.exe 5901 127.0.0.1:5900 --web c:\noVNC\noVNC-master --cert=c:\noVNC\self.pem
اکنون HTTPS و WSS (WebSocket Secure) کار می کنند. برای WSS، باید Encrypt را در تنظیمات مشخص کنید. جالب اینجاست که noVNC از پورت یکسانی برای HTTP و HTTPS استفاده می‌کند - می‌داند چگونه بین درخواست‌ها تمایز قائل شود و به درستی پاسخ دهد.

از آنجایی که گواهی به صورت خودامضا است، مرورگر باید این گواهی را بپذیرد.

بیایید رمزگذاری کنیم

من دستورالعملی در مورد نحوه پیکربندی سیستم ندارم تا Let's Encrypt به طور خودکار یک گواهی خاص برای سیستم ما ایجاد کند. برای این کار باید noVNC روی پورت 80 اجرا شود، که البته ممکن است، اما ممکن است ناخوشایند باشد، و روش ادغام certbot به طوری که این فایل ها در دایرکتوری مورد نظر منتشر شوند. به نظر من این امکان پذیر است اما این کار را نکردم. اگر آن را تمام کردید در نظرات به اشتراک بگذارید.

در مورد من، من قبلاً یک سرور خانگی با NGINX و یک نام DDNS دارم که به گونه‌ای پیکربندی شده است که به طور خودکار گواهی از Lets Encrypt دریافت کند.

شما می توانید چیزی مشابه را برای خودتان اجرا کنید. دستورالعمل هایی در مورد راه اندازی Let's Encrypt برای لینوکس و ویندوز وجود دارد.

بنابراین برای noVNCمن فقط از موارد موجود استفاده می کنم پم-فایل های تولید شده برای nginx.

Let's Encrypt فایل های زیر را ایجاد می کند:

Cert.pem: گواهی دامنه شما chain.pem: گواهی زنجیره ای Let's Encrypt fullchain.pem: cert.pem و chain.pem ترکیبی privkey.pem: کلید خصوصی گواهی شما
در اوبونتو آنها را می توان در این مسیر پیدا کرد: /etc/letsencrypt/live/your_domain_name

نیاز به کپی (ادغام) fullchain.pemو privkey.pemبه یک فایل، برای مثال اجازه دهید آن را فراخوانی کنیم encrypt.pemو این فایلی است که برای آن استفاده خواهیم کرد noVNC.

البته این فقط در صورتی کار می کند که nginxسرور و noVNC- در یک دامنه پورت ها ممکن است متفاوت باشند.

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

noVNC را به عنوان یک سرویس ویندوز اضافه کنید

بایگانی فشرده را دانلود کنید و فایل ها را از آنجا باز کنید تا در همان پوشه فایل قرار گیرند websockify.exe، یعنی در مورد ما در c:\noVNC\websockify.

هنگامی که راه اندازی شد، این سرویس از پارامترهای فایل استفاده می کند noVNCConfig.ini. این یک نمونه از تنظیمات من است:

5901 127.0.0.1:5900 --web C:\noVNC\noVNC-master --cert=c:\noVNC\encrypt.pem
در کنسولی که با امتیازات مدیر راه اندازی شده است، یک سرویس جدید ایجاد کنید:

ایجاد "noVNC Websocket Server" binPath= "c:\noVNC\websockify\noVNC Websocket Service.exe" DisplayName= "noVNC Websocket Server"
اگر نیاز به حذف یک سرویس دارید، این کار را به صورت زیر انجام دهید:

Sc حذف "noVNC Websocket Server"
سرویس ها را باز کنید (کنترل پنل → ابزارهای اداری → خدمات) و سرور noVNC Websocket را راه اندازی کنید. همچنین می توانید سرویس را طوری پیکربندی کنید که هر بار با ویندوز شروع شود:

مشکلات شناخته شده

چیدمان صفحه کلید

من متوجه شدم که چیدمان صفحه کلید روسی به روشی نسبتاً غیرمعمول کار می کند:
اگر مشتری زبان روسی را انتخاب کرده باشد، پس کامپیوتر از راه دورضربه های کلید به هیچ وجه منتقل نمی شوند.دسکتاپ از راه دور برچسب ها را اضافه کنید