دسترسی از راه دور به سیستمها در مدیریت سرورها، پشتیبانی فنی و حتی استفاده روزمره رایانهها ضروری است. زمانی که دسترسی فیزیکی به یک سیستم امکانپذیر نباشد، ابزارهای کنترل از راه دور یا Remote Desktop امکان کنترل کامل آن را فراهم میکنند. در میان روشهای مختلف، پروتکل VNC یکی از شناختهشدهترین و قدیمیترین فناوریها به شمار میرود.
پروتکل VNC به کاربران اجازه میدهد تا محیط گرافیکی یک رایانه را از راه دور مشاهده کرده و آن را کنترل کنند؛ درست مانند زمانی که مقابل سیستم نشستهاند. این فناوری در مدیریت سرورها، پشتیبانی کاربران، آموزش از راه دور و حتی مدیریت زیرساختهای IT کاربرد گستردهای دارد.
در ادامه به بررسی کامل این موضوع پرداخته میشود که پروتکل VNC چیست، چگونه کار میکند، چه کاربردهایی دارد و مزایای استفاده از آن چه مواردی هستند.
پروتکل VNC چیست؟
پروتکل VNC مخفف عبارت Virtual Network Computing است. این فناوری یک سیستم دسترسی و کنترل از راه دور محسوب میشود که امکان مشاهده و کنترل محیط گرافیکی یک رایانه را از طریق شبکه فراهم میکند.

تصویر(1)
در این روش، تصویر دسکتاپ سیستم مقصد از طریق شبکه ارسال شده و در سمت کاربر نمایش داده میشود. همزمان دستورات ورودی مانند حرکت ماوس و فشردن کلیدهای کیبورد از سمت کاربر نیز به سمت سیستم مقصد منتقل میشوند. به بیان ساده، پروتکل VNC کمک می کند تا یک رایانه از فاصله دور قابل کنترل باشد.
ساختار پروتکل VNC به صورت Client-Server عمل میکند بنابراین شامل موارد زیر است:
- VNC Server که روی سیستم مقصد نصب میشود.
- VNC Client که روی سیستم کاربر اجرا میگردد.
پس از اتصال، کاربر میتواند صفحه سیستم مقصد را مشاهده کرده و آن را کنترل کند.
تاریخچه پیدایش VNC
پروتکل VNC در اواخر دهه 1990 توسط شرکت AT&T Laboratories توسعه داده شد. هدف اصلی آن ایجاد یک راهکار ساده و استاندارد برای کنترل رایانهها از طریق شبکه بود.
پس از انتشار نسخه اولیه، این فناوری به سرعت در میان مدیران سیستم و متخصصان شبکه محبوب شد. بعدها نسخههای مختلفی از VNC توسط شرکتها و پروژههای متنباز توسعه یافتند که معروفترین آنها عبارتند از:
- RealVNC
- TightVNC
- UltraVNC
- TigerVNC
امروزه این ابزارها همچنان در مدیریت سرورها و زیرساختهای شبکه مورد استفاده قرار میگیرند.
نحوه عملکرد پروتکل VNC
پروتکل VNC بر پایه فناوری RFB یا Remote Frame Buffer عمل میکند. وظیفه اصلی این پروتکل انتقال تصویر محیط گرافیکی یک سیستم به دستگاه دیگر از طریق شبکه است. بدین ترتیب کاربر میتواند صفحهنمایش رایانهای که در مکان دیگری قرار دارد را روی سیستم خود مشاهده کند. هر تغییری که در سیستم مقصد رخ دهد، تقریباً به صورت لحظهای سمت کاربر نمایش داده میشود.

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

تصویر(3)
1. مدیریت سرورها از راه دور
یکی از رایجترین کاربردهای پروتکل VNC، مدیریت سرورهایی است که در دیتاسنتر یا زیرساختهای میزبانی وب قرار دارند. در چنین شرایطی دسترسی فیزیکی به سرور معمولاً امکانپذیر نیست. مدیران سیستم میتوانند با استفاده از VNC به محیط گرافیکی سرور متصل شده و تنظیمات مختلفی مانند پیکربندی نرمافزارها، بررسی خطاها یا نصب بروزرسانیها را انجام دهند.
این موضوع بهویژه در مدیریت سرورهای لینوکسی و ویندوزی اهمیت زیادی دارد و باعث میشود بسیاری از عملیات های مدیریتی بدون نیاز به حضور در محل سرور انجام گردد.
2. آموزش و ارائه دورههای عملی
در بسیاری از دورههای آموزشی مرتبط با فناوری اطلاعات، نیاز است مراحل انجام یک کار به صورت عملی نمایش داده شود. پروتکل VNC این امکان را فراهم میکند که محیط دسکتاپ یک سیستم برای کاربران یا دانشجویان ارسال گردد.
در چنین شرایطی مدرس میتواند نرمافزارها، تنظیمات سیستم یا مراحل انجام یک فرایند را به صورت تصویری توضیح دهد و کاربران نیز دقیقاً همان محیط کاری را مشاهده کنند.
3. ارائه خدمات پشتیبانی فنی
در بخش پشتیبانی فنی، دسترسی مستقیم به سیستم کاربر میتواند روند عیبیابی را بسیار سریعتر کند. با استفاده از VNC کارشناس پشتیبانی میتواند صفحه نمایش سیستم کاربر را مشاهده کرده و مشکل را به صورت دقیق بررسی نماید. این روش در بسیاری از شرکتهای فناوری اطلاعات برای رفع مشکلات نرمافزاری یا تنظیمات سیستم مورد استفاده قرار میگیرد و موجب کاهش زمان حل مشکلات میشود.
4. دسترسی به فایلها و برنامهها از راه دور
از کاربردهای مهم پروتکل VNC امکان دسترسی به فایلها و نرمافزارهای موجود روی سیستمی دیگر است. در این حالت کاربر میتواند از راه دور به سیستم موردنظر متصل شود و به فایلها، پوشهها یا برنامههای نصب شده دسترسی داشته باشد. این قابلیت برای افرادی که نیاز دارند از مکانهای مختلف به رایانه کاری خود دسترسی داشته باشند بسیار کاربردی است.
5. مدیریت همزمان چند سیستم
برخی از نرمافزارهای مبتنی بر VNC این امکان را فراهم میکنند که چندین رایانه به صورت همزمان مدیریت شوند. این ویژگی برای مدیران شبکه یا تیمهای IT که مسئول نگهداری تعداد زیادی سیستم هستند بسیار مفید خواهد بود. در چنین شرایطی امکان نظارت و کنترل چندین سیستم از یک نقطه مرکزی فراهم خواهد شد که موجب افزایش سرعت مدیریت شبکه میشود.

تصویر(4)
فواید استفاده از VNC
استفاده از پروتکل VNC مزایای مختلفی دارد که باعث شده این فناوری همچنان در بسیاری از زیرساختهای شبکه و مدیریت سیستمها مورد استفاده قرار گیرد. در ادامه برخی از مهمترین مزایای استفاده این ابزار بررسی میشود.
- رابط کاربری ساده و قابل درک: بیشتر نرم افزارهای مبتنی بر VNC دارای محیط کاربری سادهای هستند و کاربران میتوانند بدون پیچیدگی خاصی به سیستم مورد نظر متصل شوند. همین سادگی باعث شده حتی کاربران کمتجربه نیز بتوانند این ابزار را برای دسترسی از راه دور استفاده کنند.
- سازگاری با سیستمعاملهای مختلف: یکی از ویژگیهای مهم VNC قابلیت اجرا روی سیستمعاملهای گوناگون است. این فناوری در سیستمهایی مانند Windows، Linux و macOS قابل استفاده بوده و امکان اتصال بین دستگاههایی با سیستمعامل متفاوت را فراهم میکند.
- امنیت مناسب در ارتباطات: بسیاری از پیادهسازیهای VNC روشهای امنیتی مختلفی را برای محافظت از ارتباطات شبکه استفاده میکنند. رمز عبور، احراز هویت و در برخی موارد رمزنگاری ارتباط، از جمله روشهایی است که برای افزایش امنیت اتصال به کار گرفته میشود.
- کاهش زمان و هزینه در مدیریت سیستمها: توسط VNC بسیاری از عملیات های مدیریتی بدون نیاز به حضور فیزیکی در محل سیستم، انجام میشود. این موضوع باعث صرفهجویی در زمان و کاهش هزینههای مربوط به پشتیبانی و مدیریت زیرساخت خواهد شد.
- پشتیبانی از سختافزارهای مختلف: VNC با طیف گستردهای از سختافزارها سازگار است. این فناوری میتواند با نمایشگرهای مختلف، انواع دستگاههای ورودی مانند ماوس و صفحهکلید و حتی تجهیزات مختلف شبکه به خوبی کار کند.
- امکان دسترسی همزمان چند کاربر: در برخی از پیادهسازیهای VNC امکان اتصال چند کاربر به یک سیستم وجود دارد و دسکتاپ سیستم مقصد میتواند به صورت مشترک در اختیار چند کاربر قرار گیرد.
همچنین در برخی تنظیمات پیشرفته میتوان محیطهای گرافیکی مختلف یک سرور را روی پورتهای جداگانه اجرا کرد. این قابلیت باعث میشود دسترسی کاربران به بخشهای مشخصی از سیستم محدود گردد و مدیریت منابع سرور سادهتر انجام گیرد. به عنوان مثال میتوان برای هر محیط گرافیکی یا ماشین مجازی یک اتصال مستقل در نظر گرفت. این ویژگی علاوه بر افزایش امنیت سیستم، موجب بهبود کارایی در مدیریت سرورها نیز خواهد شد.
نکات مهم جهت استفاده از VNC
برای استفاده مؤثر و ایمن از پروتکل VNC، بهتر است برخی نکات فنی و امنیتی در نظر گرفته شوند. رعایت این موارد میتواند عملکرد بهتر و امنیت بیشتری در هنگام اتصال از راه دور فراهم کند.
- توجه به امنیت اتصال: یکی از مهمترین موارد هنگام استفاده از VNC، رعایت اصول امنیتی است. به کار بردن رمز عبور قدرتمند و تنظیم صحیح گزینههای امنیتی نرمافزار VNC میتواند از دسترسیهای غیرمجاز جلوگیری کند. همچنین توصیه میشود دسترسی به سرور تنها برای کاربران مجاز محدود گردد.
- اهمیت پهنای باند اینترنت: کیفیت عملکرد VNC تا حد زیادی به سرعت و پایداری اتصال اینترنت بستگی دارد. برای تجربهای روانتر در مشاهده محیط دسکتاپ از راه دور، استفاده از اینترنتی با پهنای باند مناسب توصیه میشود.
- احتمال تاخیر در نمایش تصویر: تحت برخی شرایط ممکن است هنگام کار با VNC تاخیری در نمایش تصویر یا پاسخدهی سیستم مشاهده شود. این موضوع معمولاً به عواملی مانند کیفیت شبکه، سرعت اینترنت و توان پردازشی سیستمهای مبدا و مقصد مرتبط است.
- تنظیم پورتهای اتصال: به طور معمول اتصال VNC از طریق پورتهای 5900 یا 5901 انجام میشود اما بسته به نوع نرمافزار یا تنظیمات سرور ممکن است پورتهای دیگری نیز مورد استفاده قرار گیرد. در صورت نیاز میتوان این پورتها را تغییر داد یا برای افزایش امنیت محدود کرد.
- استفاده از SSH برای افزایش امنیت: برای محافظت بیشتر از دادههای منتقل شده در اتصال VNC، میتوان SSH Tunnel را استفاده کرد. در این روش ارتباط، VNC از داخل یک کانال رمزنگاری شده عبور میکند که امنیت انتقال اطلاعات را افزایش میدهد. بسیاری از نرمافزارهای VNC مانند RealVNC Viewer و TigerVNC این قابلیت را پشتیبانی میکنند.
معرفی توزیع های مختلف VNC
پس از آشنایی با پروتکل VNC و نحوه عملکرد آن، یکی از پرسشهای رایج این است که چه نرمافزارهایی از این فناوری استفاده میکنند و تفاوت آنها در چیست؟ در طول سالهای گذشته نسخهها و پیادهسازیهای مختلفی از VNC توسعه داده شدهاند که هر کدام امکانات و ویژگیهای متفاوتی ارائه میدهند.

تصویر(5)
برخی از محبوبترین نرمافزارهای مبتنی بر Virtual Network Computing شامل RealVNC، TigerVNC، UltraVNC و TightVNC هستند. در ادامه ویژگیها و تفاوتهای هر یک بررسی میشود.
- RealVNC
RealVNC یکی از شناختهشدهترین و قدیمیترین پیادهسازیهای پروتکل VNC محسوب میشود. این نرمافزار توسط تیم اصلی توسعهدهنده VNC در اواخر دهه 1990 معرفی شد.
این نسخه از استانداردهای امنیتی پیشرفته برای محافظت ارتباطات استفاده میکند و از سیستمعاملهای مختلفی مانند Windows، Linux، macOS، Android و iOS پشتیبانی مینماید. در RealVNC امکاناتی مانند انتقال فایل، اشتراکگذاری صفحهنمایش و ارتباط بین کاربران نیز ارائه می گردد.
این نرمافزار در دو نسخه رایگان و تجاری ارائه میشود. نسخه تجاری آن امکانات مدیریتی و امنیتی پیشرفتهتری در اختیار کاربران قرار میدهد. امروزه این ابزار با نام VNC Connect یا RealVNC Connect نیز شناخته میشود.
- TigerVNC
TigerVNC یکی از نسخههای متنباز و قدرتمند VNC می باشد که با هدف افزایش امنیت و بهبود عملکرد توسعه داده شده است. در طراحی این نرمافزار تلاش شده انتقال دادهها با استفاده از روشهای رمزنگاری مناسب انجام شود، در حالی که سرعت و کارایی سیستم نیز حفظ می گردد.
یکی از مهمترین ویژگیهای TigerVNC متنباز بودن آن است. این موضوع باعث شده بسیاری از مدیران سیستم و کاربران لینوکس آن را استفاده کنند. با توجه به قابلیتهای فنی مناسب، TigerVNC از نظر امکانات در اکثر موارد قابل مقایسه با نسخه پیشرفته RealVNC است، با این تفاوت که به صورت رایگان در اختیار کاربران قرار دارد.
- UltraVNC
UltraVNC یکی دیگر از نسخههای محبوب VNC است که به دلیل انعطافپذیری بالا شناخته میشود. این نرمافزار از افزونههای مختلف پشتیبانی میکند و کاربران میتوانند قابلیتهای جدیدی به آن اضافه کنند.
UltraVNC از پروتکلهای مختلفی مانند RFB و RDP پشتیبانی میکند و حالتهای متنوعی برای اتصال در اختیار کاربران قرار میدهد. برای مثال امکان اتصال در حالت نمایش View Only (فقط خواندنی) یا کنترل کامل سیستم وجود دارد.
به دلیل رابط کاربری ساده و امکانات قابل تغییر، این نرمافزار هم برای کاربران حرفهای و هم افرادی که تجربه کمتری در مدیریت سیستم دارند گزینه مناسبی محسوب میشود.
- TightVNC
TightVNC یکی از نسخههای سبک و ساده VNC است که تمرکز اصلی آن روی سرعت و سهولت استفاده قرار دارد. این نرمافزار با هدف ارائه عملکرد سریعتر در شبکههای با پهنای باند محدود توسعه داده شده است.
از ویژگیهای مهم TightVNC میتوان راهاندازی ساده، تنظیمات آسان و دسترسی سریع به گزینههای مدیریتی را نام برد. به همین دلیل این نسخه برای کاربران تازهکار یا محیطهایی که نیاز به تنظیمات پیچیده ندارند گزینه مناسبی محسوب میشود.
این نرمافزار به طور گسترده در سیستمعامل ویندوز مورد استفاده قرار میگیرد.
جدول مقایسه نسخههای مختلف VNC:
|
RealVNC |
TigerVNC |
UltraVNC |
TightVNC |
ویژگی |
|
رایگان و تجاری |
متنباز و رایگان |
رایگان |
رایگان |
نوع لایسنس |
|
بالا |
بالا |
متوسط تا بالا |
متوسط |
سطح امنیت |
|
Windows، Linux، macOS، Android، iOS |
Linux، Windows |
بیشتر Windows |
Windows |
سیستمعاملها |
|
دارد |
محدود |
دارد |
محدود |
قابلیت انتقال فایل |
|
محدود |
محدود |
دارد |
ندارد |
پشتیبانی از افزونه |
|
استفاده حرفهای و سازمانی |
مدیران سیستم و کاربران لینوکس |
کاربران حرفهای و شبکه |
کاربران مبتدی |
مناسب برای |
|
امکانات کامل و امنیت |
امنیت و متنباز بودن |
قابلیت توسعه با پلاگین |
سرعت و سادگی |
تمرکز اصلی |
جدول(1)
مقایسه پروتکل VNC و Remote Desktop
در حوزه دسترسی از راه دور به سیستمها، دو فناوری رایج بیشتر مورد استفاده قرار میگیرند که عبارتند از پروتکل VNC و Remote Desktop یا RDP که هر دو روش امکان اتصال به یک رایانه یا سرور توسط شبکه را فراهم میکنند اما از نظر ساختار، نوع پیادهسازی و موارد استفاده تفاوتهایی دارند. شناخت این تفاوتها میتواند در انتخاب ابزار مناسب برای مدیریت سیستمها یا سرورها مفید باشد.
در ادامه ویژگیهای هر یک از این فناوریها بررسی شده است.

تصویر(6)
پروتکل VNC
همان طور که در بخش های قبلی توضیح داده شد پروتکل VNC روشی رایج برای کنترل سیستم از راه دور است که به دلیل ساختار ساده و سازگاری بالا با سیستمعاملهای مختلف شناخته میشود. از جمله مهم ترین ویژگی های آن نیز:
- سازگاری با پلتفرمهای مختلف: یکی از مهمترین ویژگیهای VNC، عدم وابستگی به یک سیستمعامل خاص است. این فناوری میتواند برای اتصال به سیستمعاملهای مختلف مانند Windows، Linux و macOS مورد استفاده قرار گیرد.
- انعطافپذیری بالا در تنظیمات: اکثر نرمافزارهای مبتنی بر VNC تنظیمات متنوعی برای اتصال از راه دور ارائه میدهند. کاربران میتوانند نحوه اتصال، نوع دسترسی و برخی ویژگیهای مدیریتی را مطابق نیاز خود تنظیم کنند.
- قابلیت استفاده در سناریوهای مختلف: پروتکل VNC در محیطهای مختلفی مانند مدیریت سرور، آموزش آنلاین، پشتیبانی فنی و کنترل سیستمهای داخل شبکه مورد استفاده قرار میگیرد.
- نیاز به تنظیمات امنیتی مناسب: اگرچه VNC از روشهای امنیتی مختلفی پشتیبانی میکند اما برای جلوگیری از دسترسیهای غیرمجاز لازم است تنظیمات امنیتی آن به درستی پیکربندی شود.
پروتکل RDP
Remote Desktop Protocol که معمولاً با نام RDP شناخته میشود، فناوری دسترسی از راه دوری می باشد که توسط شرکت مایکروسافت توسعه داده شده است.
- طراحی شده برای محیط ویندوز: RDP به صورت پیشفرض در سیستمعاملهای ویندوز وجود دارد و به طور خاص برای کار در این محیط طراحی شده است. همین موضوع باعث میشود عملکرد آن در سیستمهای ویندوزی بسیار بهینه باشد.
- یکپارچگی با زیرساخت ویندوز: این فناوری بخشی از سیستمعامل ویندوز محسوب میشود و با بسیاری از قابلیتهای این سیستمعامل هماهنگی کامل دارد.
- امنیت بالاتر در بسیاری از پیادهسازیها: RDP از مکانیزمهای امنیتی پیشرفتهای استفاده میکند که سطح امنیت بالایی فراهم میکند. با این حال، همانند سایر ابزارهای دسترسی از راه دور، پیکربندی صحیح تنظیمات امنیتی اهمیت زیادی دارد.
- پشتیبانی از امکانات اختصاصی ویندوز: RDP قابلیتهایی مانند انتقال سریع فایل، استفاده از چاپگرهای محلی و برخی ویژگیهای اختصاصی ویندوز را ارائه میدهد که برای کاربران این سیستمعامل بسیار کاربردی است.
انتخاب میان پروتکل VNC و Remote Desktop به نوع سیستمعامل و نیاز کاربران بستگی دارد. در محیطهایی که از سیستمعاملهای مختلف استفاده میشود، VNC گزینه انعطافپذیرتری محسوب میگردد. در مقابل، برای مدیریت سیستمهای ویندوزی معمولاً RDP عملکرد سریعتر و یکپارچگی بیشتری ارائه میدهد.
راه اندازی VNC Server
مراحل راه اندازی VNC را می توان به صورت زیر بیان کرد:
- اجرای VNC Server روی سیستم مقصد
- اجرای VNC Viewer روی سیستم کاربر
- برقراری اتصال از طریق آدرس IP یا نام دامنه
- ارسال تصویر دسکتاپ سیستم مقصد به کاربر
- انتقال دستورات ماوس و کیبورد از کاربر به سرور
در نتیجه کاربر میتواند سیستم مقصد را دقیقاً همانند یک رایانه محلی مدیریت کند.

تصویر(7)
در ادامه این مقاله با روش های زیر جهت راه اندازی VNC Server آشنا خواهید شد:
- نصب VNC Server روی لینوکس
- نصب و راه اندازی VNC در سرور ویندوزی
نصب VNC Server روی سرور لینوکس
راهاندازی پروتکل VNC در لینوکس یکی از روشهای متداول برای دسترسی گرافیکی به سرورها است. توسط این فناوری میتوان محیط دسکتاپ یک سرور لینوکسی را از راه دور مشاهده و مدیریت کرد. قبل از شروع فرآیند نصب VNC Server در لینوکس بهتر است چند پیشنیاز مهم آماده باشد.
- سرور لینوکس: یک سرور لینوکسی با دسترسی مدیریتی موردنیاز است که میتواند یک سرور ابری در سرویسهایی مانند AWS، Google Cloud، Azure یا یک سرور فیزیکی درون دیتاسنتر باشد.
- دسترسی SSH به سرور: برای اجرای دستورات نصب باید از طریق SSH به سرور متصل شد. در سیستمعامل لینوکس و macOS میتوان از ترمینال استفاده کرد و در ویندوز معمولاً ابزارهایی مانند PuTTY کاربرد دارند.
- نصب محیط دسکتاپ: از آنجا که VNC محیط گرافیکی سیستم را نمایش میدهد، باید یک Desktop Environment روی سرور نصب شده باشد. برخی محیطهای گرافیکی رایج در لینوکس عبارتند از:
- GNOME
- KDE
- XFCE
معمولاً XFCE به دلیل مصرف منابع کمتر برای سرورها گزینه مناسبتری محسوب میشود.
راهاندازی VNC شامل نصب یک VNC Server در سرور و VNC Viewer روی سیستم کاربر است. این روش بهویژه در شرایطی کاربرد دارد که نیاز به کار با محیط گرافیکی سیستم وجود داشته باشد. بنابراین برای استفاده از VNC باید دو بخش اصلی نصب شود:
- VNC Server در سرور لینوکس
- VNC Client یا Viewer روی سیستم کاربر
با نصب این دو بخش، امکان اتصال از راه دور به محیط دسکتاپ سرور فراهم خواهد شد.
مراحل نصب VNC Server روی سرور لینوکس
در ادامه مراحل نصب و راهاندازی TigerVNC به عنوان یکی از رایجترین نسخههای VNC لینوکس توضیح داده شده است.

تصویر(8)
مرحله 1: اتصال به سرور از طریق SSH
ابتدا از طریق SSH به سرور لینوکس متصل شوید. دستور زیر نمونهای از اتصال به سرور است:
ssh user@server_ip
مرحله 2: بروزرسانی پکیجهای سیستم
قبل از نصب نرمافزارهای جدید بهتر است مخازن سیستم بروزرسانی شوند.
sudo apt update && sudo apt upgrade -y
این دستور فهرست پکیجها را بروزرسانی کرده و آخرین نسخه نرمافزارها را نصب میکند.
مرحله 3: نصب محیط دسکتاپ
در صورتی که محیط گرافیکی روی سرور نصب نشده باشد باید ابتدا آن را نصب کرد. در مثال زیر محیط GNOME نصب میشود:
sudo apt install gnome-core gnome-session -y
مرحله 4: نصب VNC Server
در این آموزش از TigerVNC استفاده شده که یکی از نسخههای محبوب VNC برای لینوکس محسوب میشود.
sudo apt install tigervnc-standalone-server tigervnc-xorg-extension tigervnc-viewer -y
مرحله 5: اجرای سرویس VNC
برای راهاندازی سرور VNC میتوان از دستور زیر استفاده کرد:
vncserver -localhost no -geometry 1280x720
سپس در صورت اجرای موفق دستور، پیام "New 'server:1 (user)' desktop at :1" نمایش داده میشود که نشان دهنده نصب صحیح این سرویس روی سرور است.
نصب و راهاندازی VNC Server در سرور ویندوزی
برای دسترسی گرافیکی از راه دور به سرور ویندوز میتوان از نرمافزارهای مبتنی بر پروتکل VNC استفاده کرد. یکی از شناختهشدهترین ابزارها در این زمینه RealVNC Connect است که بهطور ویژه برای سیستمعامل ویندوز طراحی شده و محیط کاربری ساده و گرافیکی در اختیار کاربران قرار میدهد.
توسط این نرمافزار میتوان صفحه دسکتاپ سرور ویندوز را از طریق شبکه مشاهده کرد و همانند زمانی که پشت سیستم هستید آن را کنترل کنید. در ادامه مراحل نصب و راهاندازی RealVNC Connect روی ویندوز توضیح داده شده است.
مرحله اول: دانلود و نصب RealVNC
در ابتدا باید نرمافزار RealVNC Connect را از وبسایت رسمی آن دریافت و نصب کنید.
- به سایت رسمی RealVNC مراجعه نمایید.
- نسخه مناسب سیستمعامل ویندوز را دانلود کنید.
- فایل نصب را اجرا کرده و مراحل نصب را طی نمایید.
در بیشتر موارد استفاده از تنظیمات پیشفرض نصب مشکلی ایجاد نمیکند. همچنین اگر سیستم شما از معماری 64 بیتی پشتیبانی می نماید، بهتر است نسخه 64bit این نرمافزار نصب شود تا عملکرد بهتری داشته باشد.
مرحله دوم: تنظیم VNC Server در ویندوز
پس از نصب نرمافزار، باید VNC Server روی سرور ویندوز فعال و پیکربندی شود.
- نرمافزار RealVNC Server را اجرا کنید.
- وارد بخش Configure VNC Server شوید.
- برای اتصال از راه دور یک رمز عبور قوی تعریف کنید.
در این بخش امکان تغییر برخی تنظیمات دیگر نیز وجود دارد، از جمله:
- کیفیت تصویر
- میزان فشردهسازی دادهها
- تنظیمات امنیتی اتصال
تنظیم این گزینهها میتواند عملکرد اتصال VNC را در شبکههای مختلف بهینه کند.
نکات مهم هنگام استفاده از VNC در ویندوز
برای ایجاد یک اتصال پایدار و ایمن هنگام استفاده از VNC روی سرور ویندوز، بهتر است چند نکته مهم در نظر گرفته شود.
- تنظیمات فایروال: برای برقراری اتصال، پورتهای مربوط به VNC باید در فایروال ویندوز باز باشند. بهطور معمول VNC از پورتهای زیر استفاده میکند:
- 5900
- 5901
در صورت بسته بودن این پورتها، اتصال از راه دور برقرار نخواهد شد.
- استفاده از رمز عبور قوی: برای جلوگیری از دسترسیهای غیرمجاز، بهتر است برای سشن VNC یک رمز عبور قوی انتخاب شود. ترکیبی از حروف بزرگ و کوچک، اعداد و نمادها میتواند امنیت اتصال را افزایش دهد.
- افزایش امنیت با تونل SSH: در برخی محیطها برای افزایش امنیت میتوان اتصال VNC را از طریق تونل SSH برقرار کرد. در این حالت اطلاعات میان کلاینت و سرور به صورت رمزنگاری شده منتقل میشوند.
- استفاده از تنظیمات پیشرفته: نرمافزار RealVNC گزینههای پیشرفتهای برای تنظیم اتصال ارائه میدهد. برخی از این تنظیمات شامل موارد زیر هستند:
- تغییر رزولوشن صفحه نمایش
- تنظیم عمق رنگ تصویر
- کنترل میزان فشردهسازی دادهها
تنظیم صحیح این گزینهها میتواند کیفیت تصویر و سرعت اتصال را بهبود دهد.
- امکان ایجاد چند سشن همزمان: در برخی موارد میتوان چند سشن مختلف VNC روی یک سرور ایجاد کرد. هر سشن معمولاً از طریق یک پورت جداگانه در دسترس قرار میگیرد و کاربران مختلف میتوانند همزمان به سیستم متصل شوند. این قابلیت جهت مدیریت سرورها و محیطهای سازمانی بسیار کاربردی است.

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

تصویر(10)
یکی از ویژگیهای مهم پروتکل VNC سازگاری با سیستمعاملهای مختلف است. به همین دلیل کاربران میتوانند از دستگاههای گوناگون برای اتصال به سرور استفاده کنند. برای مثال اتصال به یک VNC Server میتواند از طریق رایانههای لینوکسی، سیستمهای ویندوزی یا حتی تلفنهای همراه انجام شود.
در ادامه این بخش، سه روش متداول برای اتصال به سرور VNC بررسی خواهد شد. در هر روش از یک نوع کلاینت متفاوت استفاده میشود تا امکان دسترسی از دستگاههای مختلف فراهم گردد:
- اتصال به VNC Server از طریق سیستمعامل لینوکس
- اتصال به VNC Server از طریق سیستمعامل ویندوز
- اتصال به VNC Server از طریق گوشی موبایل
هر یک از این روشها با استفاده از نرمافزارهای مخصوص همان پلتفرم انجام میشود و امکان مدیریت و کنترل سرور از راه دور را در اختیار کاربران قرار میدهد. در ادامه مراحل اتصال در هر یک از این محیطها به صورت جداگانه توضیح داده خواهد شد.
اتصال به VNC Server از طریق سیستمعامل لینوکس
برای برقراری ارتباط با VNC Server در سیستمعامل لینوکس ابتدا باید نرمافزار کلاینت VNC روی سیستم کاربر نصب شود. یکی از ابزارهای رایج برای این کار TigerVNC Viewer است که امکان اتصال به دسکتاپ گرافیکی سرور را فراهم میکند.
1. نصب VNC Viewer در لینوکس: در بیشتر توزیعهای لینوکسی میتوان کلاینت TigerVNC را از طریق مخازن نرمافزاری نصب کرد. برای این کار لازم است تا دستور زیر در ترمینال اجرا میشود:
sudo apt install tigervnc-viewer
2. اتصال به سرور لینوکس از طریق VNC: برای دسترسی به محیط دسکتاپ سرور، باید برنامه TigerVNC Viewer اجرا شده و آدرس سرور به همراه "شماره نمایشگر" وارد شود. این کار معمولاً با اجرای دستور زیر صورت می گیرد:
xtigervncviewer <SERVER-IP>:<DISPLAY-NUMBER>-geometry <RESOLUTION>
در این دستور موارد زیر را در نظر داشته باشید:
- SERVER-IP آدرس IP سرور لینوکس است (برای مثال 192.168.0.120)
- DISPLAY-NUMBER شماره سشن VNC است که معمولاً با :1 مشخص میشود.
- RESOLUTION رزولوشن تصویر دسکتاپ را تعیین میکند.
در نظر داشته باشید که هرچه رزولوشن تصویر بالاتر باشد، حجم داده بیشتری در شبکه منتقل میشود و در نتیجه به پهنای باند بیشتری نیاز خواهد بود.
شماتیک کلی اتصال با این روش در تصویر زیر قابل مشاهده می باشد:

تصویر(11)
اتصال به VNC Server از طریق سیستمعامل ویندوز
برای دسترسی به VNC Server در سیستمعامل ویندوز، ابتدا باید نرمافزار RealVNC Viewer یا یکی از کلاینتهای مشابه روی رایانه کاربر نصب شود. این نرمافزار امکان مشاهده و کنترل محیط دسکتاپ سیستم مقصد را از طریق شبکه فراهم میکند.
پس از نصب برنامه VNC Viewer، مراحل زیر برای اتصال به سرور انجام میشود:
- نرمافزار RealVNC Viewer را در سیستم ویندوز اجرا کنید.
- در بخش اتصال، آدرس IP سرور ویندوز یا نام دامنه آن را وارد نمایید.
- هنگام درخواست احراز هویت، رمز عبوری که هنگام تنظیم VNC Server تعیین شده است را وارد نمایید.
- در نهایت گزینه Connect را انتخاب کنید تا ارتباط با سرور برقرار شود.
پس از انجام این مراحل، محیط دسکتاپ سرور در پنجره برنامه نمایش داده میشود و امکان مدیریت سیستم از راه دور فراهم خواهد شد. شماتیک کلی اتصال با این روش در تصویر زیر قابل مشاهده می باشد:

تصویر(12)
اتصال به VNC Server از طریق گوشی موبایل
یکی از ویژگیهای مهم پروتکل VNC این است که محدود به یک سیستمعامل خاص نیست و میتوان از دستگاههای مختلف برای اتصال به سرور استفاده کرد. علاوه بر رایانههای ویندوزی و لینوکسی، امکان اتصال به VNC Server از طریق گوشیهای هوشمند نیز وجود دارد. این قابلیت به کاربران اجازه میدهد حتی از طریق موبایل، دسکتاپ یک سرور یا رایانه را از راه دور مشاهده و مدیریت کنند.
بدین منظور اپلیکیشنهای متعددی توسعه داده شدهاند که برخی از شناختهشدهترین آنها به صورت زیر هستند:
- RealVNC Viewer
- Remotix
- bVNC
- MultiVNC
- AVNC
- Remote Desktop Manager
در ادامه، مراحل اتصال به سرور VNC از طریق گوشی موبایل توضیح داده شده است.
مرحله اول: نصب برنامه VNC Viewer
ابتدا باید یک برنامه کلاینت VNC روی گوشی نصب شود. در گوشیهای اندروید به فروشگاه Google Play مراجعه کنید و در دستگاههای iPhone یا iPad وارد App Store شوید.
در بخش جستجو عبارت VNC Viewer را وارد کنید و یکی از اپلیکیشنهای معتبر مانند RealVNC Viewer را دانلود و نصب نمایید.
مرحله دوم: ایجاد یک اتصال جدید
پس از نصب برنامه، باید اطلاعات سرور VNC در اپلیکیشن وارد شود.
- برنامه VNC Viewer را در گوشی اجرا کنید.
- گزینه Add یا New Connection را انتخاب نمایید.
- اطلاعات موردنیاز برای اتصال را وارد کنید.
معمولاً اطلاعات زیر باید وارد شوند:
- نام اتصال: یک نام دلخواه برای شناسایی اتصال
- آدرس IP یا دامنه سرور: آدرس سیستمی که VNC Server روی آن نصب شده است.
- پورت اتصال: پورت مربوط به VNC که اغلب 5900 یا 5901 می باشد.
- رمز عبور: همان رمز عبوری که هنگام تنظیم VNC Server تعیین شده است.
پس از وارد کردن اطلاعات، گزینه "Save" را انتخاب کنید تا اتصال ذخیره شود.
مرحله سوم: اتصال به سرور
برای برقراری ارتباط با سرور کافی است از انتخاب اتصال ذخیرهشده آغاز نمایید.
- اتصال ایجاد شده را در لیست برنامه انتخاب کنید.
- گزینه Connect را لمس نمایید.
- در صورت درخواست، رمز عبور اتصال را وارد کنید.
پس از انجام این مراحل، محیط دسکتاپ سرور یا رایانه مقصد روی صفحه گوشی نمایش داده میشود و امکان کنترل آن از طریق موبایل فراهم خواهد شد.
جمع بندی
پروتکل VNC جهت دسترسی از راه دور به سرور بسیار شهرت دارد و امکان مشاهده و کنترل محیط گرافیکی یک سیستم را از طریق شبکه فراهم میکند.
این فناوری با استفاده از ساختار Client-Server و پروتکل RFB عمل کرده و در مدیریت سرورها، پشتیبانی کاربران، آموزش از راه دور و مدیریت شبکه کاربرد گستردهای دارد.
سازگاری با سیستمعاملهای مختلف، سادگی راهاندازی و امکان دسترسی کامل به محیط دسکتاپ، از مهمترین مزایای پروتکل VNC محسوب میشوند. با رعایت نکات امنیتی نیز میتوان از این فناوری به شکل ایمن در زیرساختهای شبکه و سرور استفاده کرد.