آموزش نصب و کانفیگ VNC server در اوبونتو 20.04 Ubuntu
Virtual Network Computing (VNC) یک سیستم اشتراک گرافیکی دسک تاپ است که به شما امکان می دهد از صفحه کلید و ماوس خود به صورت ریموت استفاده کنید. این یک گزینه منبع باز برای پروتکل مایکروسافت (RDP) است.
در این مقاله آموزش نصب و کانفیگ VNC server در اوبونتو 20.04 توضیح داده شده است. ما همچنین نحوه اتصال ایمن از طریق یک تونل SSH به سرور VNC را به شما نشان خواهیم داد.
نصب محیط دسکتاپ
سرورهای اوبونتو از خط فرمان مدیریت می شوند و به طور پیش فرض محیط دسکتاپ ندارند. اگر نسخه دسکتاپ اوبونتو را اجرا می کنید ، از این مرحله صرف نظر کنید.
محیط های دسک تاپ مختلفی در مخازن اوبونتو موجود است. یک گزینه نصب Gnome است که محیط پیش فرض دسک تاپ در اوبونتو 20.04 است. گزینه دیگر نصب Xfce است . این یک محیط دسک تاپ سریع ، پایدار و سبک وزن است ، که آن را برای استفاده در سرور از راه دور ایده آل می کند.
در این آموزش ، Xfce را نصب خواهیم کرد. دستورات زیر را به عنوان کاربر با امتیازات sudo وارد کنید :
sudo apt update
sudo apt install xfce4 xfce4-goodies
بسته به سیستم شما ، بارگیری و نصب بسته های Xfce ممکن است مدتی طول بکشد.
یک راز بزرگ درمورد 90 % هاستینگ های ایرانی، اورسل کردن بیش از حد است که باعث افت کیفیت سرورها میشود.
وان سرور با ارائه دسترسی های مختلف این امکان را به شما خواهد داد که تمامی منابع سرورتان را مدیریت و بررسی کنید و همچنین با ارائه گارانتی 100% برگشت وجه ریسک خرید شما را به %0 کاهش میدهد.
آموزش نصب VNC server
چندین سرور VNC مختلف در مخازن اوبونتو وجود دارد ، مانند TightVNC ، TigerVNC و x11vnc . هر سرور VNC از لحاظ سرعت و امنیت نقاط قوت و ضعف مختلفی دارد.
ما TigerVNC را نصب خواهیم کرد. این یک VNC server با کارایی بالا و فعال است. برای نصب بسته دستور زیر را تایپ کنید:
sudo apt install tigervnc-standalone-server
آموزش کانفیگ VNC
پس از نصب VNC server ، مرحله بعدی ایجاد تنظیمات اولیه کاربر و تنظیم رمز عبور است.
رمز عبور کاربر را با استفاده از دستور 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
همچنین باید مجوزهای اجرا را داشته باشد. از دستور chmod
برای تنظیم مجوزهای پرونده استفاده کنید:
chmod u+x ~/.vnc/xstartup
اگر می خواهید گزینه های اضافی را به سرور VNC منتقل کنید ، یک پرونده با نام config
ایجاد کنید و در هر خط یک گزینه اضافه کنید. به عنوان مثال: ~/.vnc/config
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.
توجه داشته باشید که :1
پس از hostname در خروجی بالا. این نشان دهنده تعداد پورت نمایشگر است که سرور vnc در آن در حال اجرا است. در این مثال ، سرور روی پورت TCP 5901
(1 + 5900) در حال اجرا است . اگر یک نمونه دوم vncserver
ایجاد کنید ، در پورت آزاد بعدی اجرا می شود :2
، یعنی این سرور روی پورت 5902
(5900 + 2) اجرا می شود .
آنچه مهم است به یاد داشته باشید این است که هنگام کار با سرورهای وی ان سی ، :X
یک درگاه نمایشگر است که به آن اشاره دارد
با تایپ کردن دستور زیر می توانید لیستی از تمام جلسات VNC که در حال اجرا هستند را دریافت کنید:
vncserver -list
TigerVNC server sessions:
X DISPLAY # RFB PORT # PROCESS ID
:1 5901 5710
قبل از ادامه مرحله بعدی ، نمونه VNC را با استفاده از دستور vncserver
با یک گزینه -kill
و شماره سرور به عنوان آرگومان متوقف کنید . در این مثال ، سرور در پورت 5901 ( :1
) در حال اجرا است ، بنابراین ما آن را با این کار متوقف خواهیم کرد:
vncserver -kill :1
Killing Xtigervnc process ID 5710... success!
ایجاد یک فایل واحد Systemd
به جای شروع دستی جلسه VNC ، بیایید یک فایل systemd system ایجاد کنیم تا در صورت لزوم سرویس VNC را شروع ، متوقف و دوباره راه اندازی کنید.
ویرایشگر متن خود را باز کرده و پیکربندی زیر را در آن کپی و پیست کنید. مطمئن شوید که نام کاربری را در خط 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 اطلاع دهید که یک پرونده واحد جدید ایجاد شده است:
sudo systemctl daemon-reload
برای شروع سرویس ، سرویس را فعال کنید:
sudo systemctl enable vncserver@1.service
عدد 1
بعد از علامت @
پورت نمایشگر را نشان می دهد که سرویس VNC روی آن اجرا می شود. این بدان معناست که سرور VNC 5901
همانطور که در بخش قبلی بحث کردیم ، روی پورت 1 خواهد داد .
سرویس 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 server
VNC یک پروتکل رمزگذاری شده نیست. روش توصیه شده ایجاد یک تونل SSH و انتقال ایمن ترافیک از دستگاه محلی خود در پورت 5901 به سرور موجود در همان پورت است.
SSH Tunneling را در Linux و macOS تنظیم کنید
اگر از سیستم عامل Linux ، macOS یا هر سیستم عامل دیگر مبتنی بر Unix استفاده کنید ، می توانید به راحتی با دستور زیر یک تونل SSH ایجاد کنید:
ssh -L 5901:127.0.0.1:5901 -N -f -l vagrant 192.168.33.10
از شما خواسته می شود رمزعبور کاربر را وارد کنید.
حتماً username
وserver_ip_address
را جایگزین کنید با نام کاربری و آدرس IP سرور خود.
SSH Tunneling را روی ویندوز تنظیم کنید
اگر ویندوز را اجرا می کنید ، می توانید SSH Tunneling را با استفاده از سرویس گیرنده PuTTY SSH تنظیم کنید .
Putty را باز کنید و آدرس IP سرور خود را در قسمت وارد کنید Host name or IP address
.
در زیر فهرست Connection
، باکس SSH
را باز کنید ، و Tunnels
را انتخاب کنید . پورت سرور VNC را وارد کنید ( 5901
) در Source Port
و در Destination
وارد کنید server_ip_address:5901
و روی Add
کلیک کنید همانطور که در تصویر زیر نشان داده شده:
برای ذخیره تنظیمات به صفحه Session
برگردید ، بنابراین نیازی نیست هر بار آنها را وارد کنید. به سرور راه دور ، جلسه ذخیره شده را انتخاب کنید و روی دکمه Open
کلیک کنید.
اتصال با استفاده از Vncviewer
اکنون که تونل SSH ایجاد شد ، زمان آن فرا رسیده است که Vncviewer خود را باز کرده و به سرور VNC در localhost:5901
متصل شوید. .
برای Google Chrome می توانید از هر نمایشگر VNC مانند TigerVNC ، TightVNC ، RealVNC ، UltraVNC ، Vinagre و VNC Viewer استفاده کنید .
ما از TigerVNC استفاده خواهیم کرد. viewer را باز کنید ، localhost:5901
بزنید و روی Connect
کلیک کنید.
پس از ورود رمز ورود کاربر خود را وارد کنید ، و باید میز کار پیش فرض Xfce را مشاهده کنید. چیزی شبیه به این خواهد بود:
با استفاده از صفحه کلید و ماوس می توانید تعامل با دسک تاپ XFCE از راه دور را از طریق دستگاه محلی خود شروع کنید.
نتیجه
ما به شما آموزش نصب و کانفیگ VNC server در اوبونتو 20.04 را نشان داده ایم.
برای پیکربندی سرور VNC برای بیش از یک کاربر ، پیکربندی اولیه را ایجاد کرده و رمز عبور را با استفاده از دستور vncpasswd
تنظیم کنید. همچنین باید با استفاده از یک پورت دیگر ، یک پرونده سرویس جدید ایجاد کنید.
لطفا جهت بهبهود کیفیت آموزش های ارسالی، نظرات خود را از طریق کامنت و درج ستاره ارسال کنید
اولین نفر باشید که نظر ارسال میکنید