نحوه نصب و کانفیگ VNC در اوبونتو ۲۰٫۰۴

نحوه نصب و کانفیگ VNC در اوبونتو ۲۰٫۰۴

سعیده مهاجری

VNC یا (Virtual Network Computing) یک سیستم اشتراک گرافیکی دسک تاپ است که به شما امکان می دهد از صفحه کلید و ماوس خود برای کنترل از راه دور رایانه دیگری استفاده کنید. این یک گزینه اپن سورس برای پروتکل دسک تاپ از راه دور مایکروسافت (RDP) است.در این مقاله نحوه نصب و کانفیگ VNC در اوبونتو ۲۰٫۰۴ توضیح خواهیم داد. ما همچنین به شما نحوه اتصال ایمن از طریق یک  SSH tunnel به سرور VNC را به شما نشان خواهیم داد.

نصب Desktop Environment :

سرورهای اوبونتو از command line مدیریت می شوند و به طور پیش فرض desktop environments ندارند. اگر نسخه دسک تاپ اوبونتو را اجرا می کنید ، از این مرحله صرف نظر کنید.desktop environments مختلفی در اوبونتو موجود است. یکی از گزینه های نصب Gnome است که desktop environment در اوبونتو ۲۰٫۰۴ است. گزینه دیگر نصب Xfce است. این یک desktop environment سریع ، پایدار و سبک وزن است ، که آن را برای استفاده در سرور از راه دورایده آل می کند.در این آموزش، Xfce را نصب خواهیم کرد. دستورات زیر را به عنوان کاربر با sudo privileges وارد کنید:

sudo apt updatesudo apt install xfce4 xfce4-goodies

بنا به سیستم شما ، دانلود و نصب  Xfce ممکن است مدتی طول بکشد.

نصب سرور VNC :

چندین سرور VNC مختلف در اوبونتو وجود دارد ، مانند TightVNC ، TigerVNC و x11vnc. هر سرور VNC از لحاظ سرعت و امنیت نقاط قوت و ضعف مختلفی دارد.TigerVNC را نصب خواهید کرد. این یک سرور VNC با کارایی بالا و فعال است. برای نصب دستور زیر را اجرا کنید:

sudo apt install tigervnc-standalone-server

کانفیگ دسترسی VNC :

پس از نصب سرور VNC ، مرحله بعدی ایجاد تنظیمات اولیه کاربر و تنظیم رمز عبور است.رمز عبور کاربر را با استفاده از دستور vncpasswd تنظیم کنید. هنگام اجرای دستور زیر از sudo استفاده نکنید:

vncpasswd

از شما خواسته می شود گذرواژه را وارد و تأیید کنید و اینکه از شما سوال میشود آیا آن را به عنوان گذرواژه فقط برای مشاهده تنظیم میکنید. اگر یک گذرواژه فقط برای مشاهده تنظیم کنید ، کاربر قادر به تعامل با نمونه VNC با ماوس و صفحه کلید نخواهد بود.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n

فایل رمز عبور در فهرست ~ / .vnc ذخیره می شود که در صورت عدم وجود ایجاد می شود.در مرحله بعدی ، باید TigerVNC را برای استفاده از Xfce کانفیگ کنید. برای انجام این کار ، دستور زیر را اجرا کنید:

nano ~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 

ذخیره کنید و فایل را ببندید. دستورات بالا هر زمان که سرور TigerVNC را شروع یا راه اندازی مجدد می کنید ، به طور خودکار اجرا می شوند.فایل ~ / .vnc / xstartup باید execute permissions داشته باشد. برای تنظیم permissions فایل ، از دستور chmod استفاده کنید:

chmod u+x ~/.vnc/xstartup

اگر می خواهید گزینه های اضافی را به سرور VNC منتقل کنید ، فایلی به نام config ایجاد کنید و در هر line یک گزینه اضافه کنید. به عنوان مثال:

geometry=1920x1080
dpi=96

اکنون می توانید سرور VNC را با استفاده از دستور vncserver شروع کنید:

vncserver
New 'server2.linuxize.com:1 (linuxize)' desktop at :1 on machine server2.linuxize.com

Starting applications specified in /home/linuxize/.vnc/xstartup
Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd :1 to connect to the VNC server

به شماره ۱ بعد از نام میزبان در خروجی بالا توجه کنید. این نشان دهنده تعداد درگاه نمایشگر است که سرور vnc در آن در حال اجرا است. در این مثال ، سرور روی پورت TCP 5901 (5900 + 1) در حال اجرا است. اگر یک نمونه دوم با vncserver ایجاد کنید ، در پورت رایگان بعدی یعنی۲ اجرا می شود ، به این معنی که سرور روی پورت ۵۹۰۲ (۵۹۰۰ + ۲) در حال اجرا است.آنچه مهم است و باید به یاد داشته باشید این است که هنگام کار با سرورهای VNC ،: X یک درگاه نمایشگر است که به ۵۹۰۰ + X اشاره دارد.با اجرای دستور زیر می توانید لیستی از تمام VNC sessions که در حال اجرا هستند را دریافت کنید:

vncserver -list
TigerVNC server sessions:

X DISPLAY #	RFB PORT #	PROCESS ID
:۱		      ۵۹۰۱		    ۵۷۱۰

قبل از ادامه مرحله بعدی ، نمونه VNC را با استفاده از دستور vncserver با گزینه -kill و شماره سرور به عنوان آرگومان متوقف کنید. در این مثال ، سرور در پورت ۵۹۰۱ در حال اجرا است (: ۱) ، بنابراین آن را با دستورات زیر متوقف کنید:

vncserver -kill :1
Killing Xtigervnc process ID 5710... success!

 ایجاد یک فایل Systemd unit :

به جای شروع دستی VNC session ، یک فایل systemd system ایجاد کنید تا در صورت لزوم سرویس VNC را شروع ، متوقف و دوباره راه اندازی کنید.ویرایشگر متن خود را باز کرده و کانفیگ زیر را در آن کپی و پیست کنید. مطمئن شوید که نام کاربری را که در line 7 تغییر داده اید با نام کاربری شما مطابقت داشته باشد.

sudo nano /etc/systemd/system/vncserver@.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple
User=linuxize
PAMName=login
PIDFile=/home/%u/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver :%i -geometry 1440x900 -alwaysshared -fg
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

ذخیره کنید و فایل را ببندید.با اجرای دستور زیر ، systemd مطلع میشود که یک فایل unit جدید ایجاد شده است:

sudo systemctl daemon-reload

برای شروع ، سرویس را فعال کنید:

sudo systemctl enable vncserver@1.service

عدد ۱ بعد از علامت @ پورت نمایشی را مشخص می کند که سرویس VNC روی آن اجرا می شود. این بدان معناست که سرور VNC همانطور که در بخش قبل بحث کردیم ، درگاه ۵۹۰۱ را پذیرش خواهد کرد .سرویس VNC را با اجرای دستور زیر شروع کنید:

sudo systemctl start vncserver@1.service

تأیید کنید که سرویس با موفقیت شروع شده است:

sudo systemctl status vncserver@1.service
vncserver@1.service - Remote desktop service (VNC)
     Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2021-03-26 20:00:59 UTC; 3s ago

اتصال به سرور VNC :

VNC یک پروتکل رمزگذاری شده نیست و می تواند مورد packet sniffing قرار گیرد. روش توصیه شده ایجاد یک SSH tunnel و انتقال ایمن ترافیک از دستگاه local خود در پورت ۵۹۰۱ به سرور موجود در همان پورت است.

SSH Tunneling را در Linux و macOS تنظیم کنید :

اگر Linux ، macOS یا هر سیستم عامل دیگر مبتنی بر Unix را روی دستگاه خود اجرا کنید ، می توانید به راحتی با دستور زیر یک SSH tunnel ایجاد کنید:

ssh -L 5901:127.0.0.1:5901 -N -f -l vagrant 192.168.33.10

از شما خواسته می شود رمز ورود کاربر را وارد کنید.نام کاربری و server_ip_address را با نام کاربری و آدرس IP سرور خود جایگزین کنید.

SSH Tunneling را روی ویندوز تنظیم کنید :

اگر ویندوز را اجرا می کنید ، می توانید SSH Tunneling را با استفاده از سرویس گیرنده PuTTY SSH تنظیم کنید.Putty را باز کرده و آدرس IP سرور خود را در قسمت نام میزبان یا آدرس IP وارد کنید.

نحوه نصب و کانفیگ VNC در اوبونتو 20.04

در زیر منوی اتصال ، SSH را گسترش دهید ، و Tunnel را انتخاب کنید. پورت سرور VNC (5901) را در قسمت Source Port وارد کرده و server_ip_address: 5901 را در قسمت Destination وارد کرده و مانند تصویر زیر بر روی دکمه Add کلیک کنید:

نحوه نصب و کانفیگ VNC در اوبونتو 20.04

برای ذخیره تنظیمات به صفحه Session برگردید ، بنابراین نیازی نیست هر بار آنها را وارد کنید. در سرور راه دور ، Session ذخیره شده را انتخاب کرده و بر روی دکمه Open کلیک کنید.

اتصال با استفاده از Vncviewer :

اکنون که SSH tunnel ایجاد شد ، زمان آن فرا رسیده است که Vncviewer خود را باز کرده و به VNC Server در localhost: 5901 متصل شوید.برای Google Chrome می توانید از هر نمایشگر VNC مانند TigerVNC ، TightVNC ، RealVNC ، UltraVNC ، Vinagre و VNC Viewer استفاده کنید.از TigerVNC استفاده کنید . viewer را باز کنید ، localhost: 5901 را وارد کنید و روی دکمه اتصال کلیک کنید.

نحوه نصب و کانفیگ VNC در اوبونتو 20.04

پس از ورود ، رمز ورود کاربر خود را وارد کنید ، و باید میز کار پیش فرض Xfce را مشاهده کنید. مانند شکل زیر خواهد بود:

نحوه نصب و کانفیگ VNC در اوبونتو 20.04

با استفاده از صفحه کلید و ماوس می توانید تعامل با دسک تاپ XFCE از راه دور را از طریق دستگاه local خود شروع کنید.

جمع بندی :

ما به شما نحوه نصب و کانفیگ سرور VNC را در Ubuntu 20.04 نشان دادیم.برای کانفیگ سرور VNC خود برای شروع نمایش بیش از یک کاربر ، کانفیگ اولیه را ایجاد کرده و رمز عبور را با استفاده از دستور vncpasswd تنظیم کنید. همچنین باید با استفاده از یک درگاه دیگر ، یک فایل جدید ایجاد کنید.

امیدواریم مطالب مورد پسند بوده باشد.

ما را در شتابان هاست همراهی کنید.

برچسب ها: دستورات لینوکس