Virtual Network Computing یا VNC یک سیستم اتصال است که به شما امکان می دهد از صفحه کلید و ماوس خود برای تعامل با یک محیط دسکتاپ گرافیکی روی یک سرور مجازی از راه دور استفاده کنید. این امر باعث می شود مدیریت فایل ها ، نرم افزارها و تنظیمات روی یک سرور مجازی از راه دور برای کاربرانی که هنوز از خط فرمان راحت نیستند ، آسان شود.
در این راهنما ، سرور مجازی VNC را روی یک سرور مجازی Debian 10 تنظیم می کنید و از طریق یک تونل SSH با ایمنی به آن وصل می شوید. شما از TightVNC ، یک بسته کنترل از راه دور سریع و سبک استفاده می کنید. این انتخاب اطمینان حاصل خواهد کرد که اتصال VNC ما حتی در اتصالات اینترنت کندتر هموار و پایدار خواهد بود.
پیش نیازها
برای تکمیل این آموزش ، به موارد زیر نیاز دارید:
⦁ یک سرور مجازی Debian 10 که طبق راهنمای تنظیم اولیه سرور مجازی Debian 10 نصب شده، و شامل یک کاربر غیر ریشه با دسترسی sudo و فایروال باشد.
⦁ یک کامپیوتر محلی با یک کلاینت VNC نصب شده که اتصالات VNC را از طریق تونل های SSH پشتیبانی می کند.
o در ویندوز ، می توانید از TightVNC ،RealVNC یا UltraVNC استفاده کنید.
o در macOS ، می توانید از برنامه Screen Sharing داخلی استفاده کنید ، یا می توانید از یک برنامه بین پلتفرمی مانند RealVNC استفاده نمایید.
o در لینوکس ، می توانید گزینه های بسیاری از جمله vinagre ، krdc ، RealVNC یا TightVNC را انتخاب کنید.
مرحله 1 – نصب محیط دسکتاپ و سرور مجازی VNC
به طور پیش فرض ، سرور مجازی Debian 10 با یک محیط دسکتاپ گرافیکی یا سرور مجازی VNC نصب شده همراه نیست ، بنابراین ما با نصب آن ها شروع خواهیم کرد. به طور خاص ، بسته ها را برای جدیدترین محیط دسکتاپ Xfce و بسته TightVNC موجود در مخزن رسمی Debian نصب خواهیم کرد.
در سرور مجازی خود لیست بسته های خود را به روز کنید:
⦁ $ sudo apt update
⦁
اکنون محیط دسکتاپ Xfce را روی سرور مجازی خود نصب کنید:
⦁ $ sudo apt install xfce4 xfce4-goodies
⦁
در حین نصب از شما خواسته می شود طرح صفحه کلید خود را از لیست گزینه های ممکن انتخاب کنید. موردی را انتخاب کنید که برای زبان شما مناسب باشد و Enter را فشار دهید. نصب ادامه خواهد یافت.
پس از اتمام نصب ، سرور مجازی TightVNC را نصب کنید:
⦁ $ sudo apt install tightvncserver
⦁
برای تکمیل پیکربندی اولیه سرور مجازی VNC پس از نصب ، از دستور vncserver برای تنظیم گذرواژه ایمن و ایجاد فایل های پیکربندی اولیه استفاده کنید:
⦁ $ vncserver
⦁
از شما خواسته می شود یک رمز ورود را برای دسترسی از راه دور به دستگاه خود وارد کرده و تأیید کنید:
Output
You will require a password to access your desktops.
Password:
Verify:
رمز عبور باید بین شش تا هشت کاراکتر باشد. گذرواژههای بیش از 8 کاراکتر به صورت خودکار کوتاه خواهند شد.
پس از تأیید گذرواژه ، می توانید یک گذرواژه view-only ایجاد کنید. کاربرانی که با این رمز ورود به سیستم وارد می شوند ، قادر به کنترل نمونه VNC با ماوس یا صفحه کلید خود نخواهند بود. اگر می خواهید چیزی را با استفاده از سرور مجازی VNC خود به دیگران نشان دهید ، این گزینه مفید است ، اما ضروری نیست.
سپس این فرآیند فایلهای پیکربندی پیش فرض لازم و اطلاعات اتصال را برای سرور مجازی ایجاد می کند:
Output
Would you like to enter a view-only password (y/n)? n
xauth: file /home/sammy/.Xauthority does not exist
New ‘X’ desktop is your_hostname:1
Creating default startup script /home/sammy/.vnc/xstartup
Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log
اکنون بگذارید سرور مجازی VNC را پیکربندی کنیم.
مرحله 2 – پیکربندی سرور مجازی VNC
سرور مجازی VNC باید بداند که در هنگام راه اندازی چه دستوراتی را اجرا می کند. به طور خاص ، VNC باید بداند که به کدام دسکتاپ گرافیکی وصل شود.
این دستورات در یک فایل پیکربندی به نام xstartup در پوشه .vnc تحت دیرکتوری هوم شما قرار دارند. اسکریپت راه اندازی زمانی ایجاد شد که شما در مرحله قبل دستور vncserver را اجرا کردید ، اما ما برای راه اندازی دسکتاپ Xfce ، اسکریپت خودمان را ایجاد خواهیم کرد.
هنگامی که VNC برای اولین بار تنظیم شد ، یک نمونه سرور مجازی پیش فرض را در پورت 5901 راه اندازی می کند. این پورت به عنوان پورت نمایشگر نامیده می شود و توسط VNC به عنوان :1 ارجاع داده می شود. VNC می تواند چندین نمونه در پورت های نمایشگر دیگر مانند: :2 و :3 و غیره راه اندازی کند.
از آنجا که می خواهیم نحوه پیکربندی سرور مجازی VNC را تغییر دهیم ، ابتدا نمونه سرور مجازی VNC را که با استفاده از پورت 5901 در حال اجرا است با دستور زیر متوقف کنید:
⦁ $ vncserver -kill :1
⦁
خروجی باید به این شکل باشد ، اگرچه یک PID متفاوت را مشاهده خواهید کرد:
Output
Killing Xtightvnc process ID 17648
قبل از تغییر فایل xstartup ، از فایل اصلی نسخه پشتیبان تهیه کنید:
⦁ $ mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
⦁
اکنون یک فایل xstartup جدید ایجاد کرده و آن را در ویرایشگر متن خود باز کنید:
⦁ $ nano ~/.vnc/xstartup
⦁
هر زمان که سرور مجازی VNC را شروع یا مجدداً راه اندازی کنید، دستورات موجود در این فایل بطور خودکار اجرا میشوند. برای شروع محیط دسکتاپ خود در صورتی که از قبل شروع نشده است ، به VNC احتیاج داریم. این دستورات را به فایل اضافه کنید:
~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
اولین دستورالعمل موجود در فایل ، xrdb $ HOME / .Xresource ، به چارچوب رابط کاربری گرافیکی VNC میگوید که فایل .Xresource را بخواند. .Xresource جایی است که یک کاربر می تواند تنظیمات خاصی برای دسکتاپ گرافیکی ، مانند رنگ ترمینال ، تم های مکان نما و ارائه فونت ، تغییراتی ایجاد کند. دستور دوم به سرور مجازی می گوید که Xfce را راه اندازی کند ، در این قسمت تمام نرم افزارهای گرافیکی مورد نیاز خود را برای مدیریت راحت سرور مجازی خود پیدا خواهید کرد.
برای اطمینان از اینکه سرور مجازی VNC قادر به استفاده صحیح از این فایل راه اندازی جدید خواهد بود ، باید آن را عملیاتی کنیم.
⦁ $ sudo chmod +x ~/.vnc/xstartup
⦁
اکنون ، سرور مجازی VNC را مجدداً راه اندازی کنید.
⦁ $ vncserver
⦁
خروجی مشابه این را مشاهده خواهید کرد:
Output
New ‘X’ desktop is your_hostname:1
Starting applications specified in /home/sammy/.vnc/xstartup
Log file is /home/sammy/.vnc/your_hostname:1.log
با پیکربندی موجود ، بیایید از دستگاه محلی خود به سرور مجازی وصل شویم.
مرحله 3 – اتصال ایمن به دسکتاپ VNC
VNC در هنگام اتصال از پروتکل های ایمن استفاده نمی کند. ما برای اتصال ایمن به سرور مجازی خود از یک تونل SSH استفاده خواهیم کرد و سپس به کلاینت VNC میگوییم که به جای برقراری ارتباط مستقیم از آن تونل استفاده کند.
یک اتصال SSH را در رایانه محلی خود ایجاد کنید که به طور ایمن به اتصال محلی برای VNC منتقل می شود. شما می توانید این کار را از طریق ترمینال در لینوکس یا با دستور زیر در macOS انجام دهید:
⦁ $ ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip
⦁
سوئیچ -L اتصالات پورت را مشخص می کند. در این حالت ما پورت 5901 اتصال از راه دور را به پورت 5901 در دستگاه محلی شما وصل می کنیم. سوئیچ -C امکان فشرده سازی را فراهم می سازد ، در حالی که سوئیچ -N به ssh می گوید که ما نمی خواهیم یک دستور از راه دور را اجرا کنیم. سوئیچ -l نام ورود از راه دور را مشخص می کند.
به یاد داشته باشید که sammy و your_server_ip را با نام کاربری غیر ریشه و آدرس IP سرور مجازی خود جایگزین کنید.
اگر از یک سرویس دهنده گرافیکی SSH استفاده می کنید ، مانند PuTTY ، از your_server_ip به عنوان IP اتصال استفاده کنید و localhost: 5901 را به عنوان پورت جدید ارسال شده در تنظیمات تونل SSH برنامه تنظیم کنید.
پس از راه اندازی تونل ، از یک سرویس دهنده VNC برای اتصال به localhost:5901 استفاده کنید. از شما خواسته می شود با استفاده از رمزعبور تنظیم شده در مرحله 1 ، تأیید اعتبار کنید.
پس از اتصال ، دسکتاپ پیش فرض Xfce را مشاهده خواهید کرد.
برای پیکربندی سریع دسکتاپ ، گزینه Use default config را انتخاب کنید.
همانطور که در اینجا مشاهده می شود ، می توانید با file manager یا از خط فرمان به فایلهای دیرکتوری هوم خود دسترسی پیدا کنید:
بر روی دستگاه محلی خود ، CTRL + C را در ترمینال خود فشار دهید تا تونل SSH را متوقف کرده و به اعلان خود بازگردید. این کار بخش VNC شما را نیز قطع می کند.
سپس بیایید سرور مجازی VNC را به عنوان یک سرویس تنظیم کنیم.
مرحله 4 – راه اندازی VNC به عنوان یک سرویس سیستمی
در مرحله بعد ، سرور مجازی VNC را به عنوان یک سرویس سیستمی تنظیم خواهیم کرد تا بتوانیم مانند هر سرویس دیگر ، آن را بنا به نیاز ، راه اندازی ، متوقف و مجدداً راه اندازی کنیم. این کار همچنین تضمین می کند که با ریبوت سرور مجازی شما VNC راه اندازی میشود.
ابتدا با استفاده از ویرایشگر متن مورد علاقه خود ، یک فایل واحد جدید با نام /etc/systemd/system/vncserver@.service ایجاد کنید:
⦁ $ sudo nano /etc/systemd/system/vncserver@.service
⦁
نماد @ در انتهای نام به ما اجازه می دهد تا آرگومانی را که می توانیم در پیکربندی سرویس استفاده کنیم ، وارد کنیم. آن را برای مشخص کردن پورت نمایشگر VNC که می خواهیم هنگام مدیریت سرویس استفاده کنیم ، به کار میگیریم.
خطوط زیر را به فایل اضافه کنید. حتماً مقدار User ، Group ، WorkingDirectory و نام کاربری را در مقدار PIDFILE را تغییر دهید تا با نام کاربری شما مطابقت داشته باشد:
/etc/systemd/system/vncserver@.service
[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=sammy
Group=sammy
WorkingDirectory=/home/sammy
PIDFile=/home/sammy/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 :%i
ExecStop=/usr/bin/vncserver -kill :%i
[Install]
WantedBy=multi-user.target
اگر VNC در حال اجرا باشد، فرمان ExecStartPre آن را متوقف می کند. دستور ExecStart ، VNC را شروع می کند و عمق رنگ را روی رنگ 24 بیتی با رزولوشن 1280×800 تنظیم می کند. برای رفع نیازهای خود می توانید این گزینه های راه اندازی را تغییر دهید.
فایل را ذخیره کنید و ببندید.
سپس ، سیستم را از فایل واحد جدید آگاه کنید.
⦁ $ sudo systemctl daemon-reload
⦁
فایل واحد را فعال کنید.
⦁ $ sudo systemctl enable vncserver@1.service
⦁
1 بعد از علامت @ نشان می دهد که کدام شماره نمایش سرویس باید روی آن ظاهر شود ، همانطور که در مرحله 2 گفته شده، در این حالت پیش فرض: 1 است.
اگر هنوز در حال اجرا است ، نمونه فعلی سرور مجازی VNC را متوقف کنید.
⦁ $ vncserver -kill :1
سپس آن را همانند هر سرویس سیستمی دیگری راه اندازی کنید.
⦁ $ sudo systemctl start vncserver@1
⦁
می توانید تأیید کنید که با این دستور شروع شده است:
⦁ $ sudo systemctl status vncserver@1
⦁
اگر به درستی شروع شده باشد ، خروجی باید به این شکل باشد:
Output
● vncserver@1.service – Start TightVNC server at startup
Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2019-10-10 17:56:17 UTC; 5s ago
Process: 935 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
Process: 940 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280×800 :1 (code=exited, status=0/SUCCESS)
Main PID: 948 (Xtightvnc)
. . .
سرور مجازی VNC شما هنگام راه اندازی مجدد دستگاه ، اکنون در دسترس خواهد بود.
دوباره تونل SSH خود را شروع کنید:
⦁ $ ssh -L 5901:127.0.0.1:5901 -C -N -l sammy your_server_ip
⦁
سپس با استفاده از نرم افزار کلاینت VNC خود به localhost: 5901 اتصال جدیدی برقرار کنید تا به دستگاه خود متصل شوید.
نتیجه
اکنون یک سرور مجازی VNC امن در سرور مجازی Debian 10 خود به روز و اجرا کرده اید. اکنون می توانید فایلها ، نرم افزارها و تنظیمات خود را با یک رابط گرافیکی آسان و کاربردی مدیریت کنید و قادر خواهید بود نرم افزارهای گرافیکی مانند مرورگرهای وب را از راه دور اجرا نمایید.
از این لینک ها زیر می توانید آمورش های بیشتری برای لینوکس پیدا کنید :
پارامترهای پیش فرض در جاوا اسکریپت – اجرای چندین نسخه PHP بر روی یک سرور Debian 10
نحوه راه اندازی یک پروژه React با برنامه React – نصب و ایمن سازی phpMyAdmin در اوبونتو 18
پیکربندی یک تایید اعتبار مجاز(CA) در CentOS 8 – تنظیم برنامه Node.js برای تولید در CentOS 7
نصب MariaDB در اوبونتو 18.04 – ایمن کردن Apache با Let’s Encrypt در Debian 10
نحوه نصب Node.js در CentOS 8 – بازنویسی URL را با mod_rewrite برای Apache در Debian 10
راه اندازی فایروال با استفاده از firewalld در CentOS 8 – نصب وب سرور Apache در Debian 10
اضافه کردن و حذف کاربران در CentOS 8 – نصب Apache Tomcat 9 در Debian 10
نصب و استفاده از PostgreSQL در CentOS 8 – راه اندازی سرور اولیه با Debian 10
نصب MariaDB در CentOS 8 – چگونه با JSX عناصر واقعی ایجاد کنیم
نصب و پیکربندی VNC در Debian 10 – استفاده از سرور از راه دور Docker
نصب و ایمن سازی Grafana در اوبونتو 18 – نحوه نصب Git در CentOS 8
نصب Git در Debian 10 – نصب و پیکربندی Zabbix برای ردیابی ایمن سرورهای
نحوه نصب Node.js در Debian 10 – نصب وب سرور Apache در CentOS 7
نحوه نصب Webmin در Debian 10 – نصب و پیکربندی Zabbix برای ردیابی ایمن سرور
نصب وردپرس با بانک اطلاعاتی در اوبونتو – ساخت و استقرار سرور GraphQL با Node.js و MongoDB
نصب پایتون 3 و تنظیم نویسی محلی macOS – نصب و ایمن سازی phpMyAdmin با Nginx در سرور
نصب Nagios 4 و نظارت بر سرور اوبونتو 18 – نصب Python 3 و تنظیم یک محیط برنامه نویسی
نحوه نصب R بر روی Debian 10 – راه اندازی سرور Prisma روی اوبونتو 18.04
نصب و پیکربندی Laravel با LEMP در اوبونتو 18 – نصب و پیکربندی pgAdmin 4 در Server Mode
نصب Python 3 و تنظیم برنامه نویسی CentOS 8 – نصب Jitsi Meet در Ubuntu 18.04
کلمات کلیدی خرید سرور
خرید vps – خرید سرور مجازی – خرید سرور – سرور هلند – فروش vps – سرور مجازی آمریکا – خریدvps – سرور مجازی هلند – فروش سرور مجازی – سرور آمریکا – vps – سرور مجازی انگلیس – سرور مجازی آلمان – سرور مجازی کانادا – خرید vps آمریکا – خرید وی پی اس – سرور – خرید سرور مجازی هلند – vps خرید – سرور مجازی فرانسه – سرور مجازی هلند – خرید vps آمریکا – خرید سرور مجازی ارزان هلند – vps – خرید vps هلند – خرید سرور مجازی آمریکا – خرید vps فرانسه – تست vps – سرور مجازی تست – سرور مجازی ویندوز – ارزانترین vps – خرید وی پی اس – vps ارزان –
https://vpsgol.net/product/vps-germany/
https://vpsgol.net/product/vps-usa/
https://vpsgol.net/product/vps-france/
https://vpsgol.net/product/vps-canada/
https://vpsgol.net/product/vps-poland/
https://vpsgol.net/product/vps-netherlands/
https://vpsgol.net/product/vps-england/