Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

การเข้าถึงคอมพิวเตอร์ผ่าน remote desktop เป็นส่วนสำคัญของชีวิตงาน Remote desktop programs ให้คุณเข้าถึงและควบคุมระบบอื่นๆ ที่ไม่ได้อยู่ในความเข้าถึงทางกายภาพ งานจากบ้าน (Work from home) ทำให้ remote computing สำคัญขึ้นอีก โดยอนุญาตให้คนจากภูมิภาคไกลทำงาน remote ด้วยคอมพิวเตอร์ของพวกเขา

คู่มือนี้แสดงวิธีติดตั้ง Virtual Network Computing (VNC) Server บน Ubuntu 20.04 LTS เพื่อให้ remote computing ทำได้บนระบบของคุณ

VNC Server คืออะไร?

แบบดั้งเดิม คอมพิวเตอร์ Linux เข้าถึงระบบอื่นผ่านเทอร์มินัลใช้ยูทิลิตี้อย่าง Secure Shell (SSH) แต่ความท้าทายกับ command line interface คือคุณไม่สามารถโต้ตอบกับ PC อื่นผ่าน GUI ได้ นี่คือที่ที่ VNC connection ช่วยได้

Virtual Network Computing Server หรือ VNC server เป็นระบบที่ให้คุณเข้าถึงและโต้ตอบกับ PC อื่นผ่านเครือข่ายโดยใช้ graphical interface แอปพลิเคชัน VNC มากมาย เช่น TightVNC, TigerVNC, RealVNC ในคู่มือนี้เราจะใช้เซิร์ฟเวอร์ x11vnc สำหรับตั้งค่า remote computing บนระบบ Ubuntu

X11vnc เป็น VNC server แบบเบา ที่ไม่สร้าง display เพิ่มสำหรับ remote desktop แทนที่จะแสดง x11 display ที่มีอยู่ (KDE, GNOME, Xfce ฯลฯ) ของระบบ Linux แบบ real-time ข้อได้เปรียบอีกอย่างของ x11vnc คือคุณใช้ VNC client หรือ viewer ใดก็ได้เพื่อเชื่อมต่อ

x11vnc server มี SSL/TLS encryption ในตัว และ 2048 bit RSA authentication รวมถึง VeNCrypt support พร้อมระบบล็อกอิน UNIX account และ password

ติดตั้ง Display Manager ที่เข้ากันได้

Ubuntu Linux ใช้ GNOME Desktop Manager (GDM) เป็น display manager ค่าเริ่มต้น รุ่นใหม่ใช้ gdm3 น่าเสียดาย GDM ไม่ทำงานดีมากกับ x11vnc server เพื่อแก้ไข ต้องติดตั้ง Light Display Manager หรือ lightdm

เปิดเทอร์มินัลด้วย Ctrl + Alt + T อัปเดต software sources ด้วย apt ก่อน

sudo apt update

จากนั้นติดตั้ง lightdm:

sudo apt install lightdm

หน้าจอต่อไปนี้จะปรากฏระหว่างติดตั้ง กด Enter เพื่อดำเนินต่อ

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

ถัดไป เลือกตัวเลือก lightdm และกด Enter

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

รีบูท PC เพื่อให้การเปลี่ยนแปลง display manager 有效

sudo reboot

คุณจะสังเกตเห็นการเปลี่ยนแปลงเล็กน้อยที่หน้าจอล็อกอินหลัง reboot เนื่องจากตอนนี้คุณใช้ lightdm เป็น display manager

ติดตั้ง x11vnc Server บน Ubuntu

ติดตั้ง x11nvc server เปิดเทอร์มินัลระบบด้วย Ctrl + Alt + T รันคำสั่ง:

sudo apt install x11vnc

กำหนดค่า x11vnc Server

ตอนนี้คุณจะกำหนดค่าบริการสำหรับเริ่ม x11nvc server สร้างไฟล์ชื่อ x11nvc.service ในไดเรกทอรี /lib/systemd/system/ คู่มือนี้ใช้ Vim แต่คุณใช้ text editor Linux อื่นได้ เช่น nano

sudo vim /lib/systemd/system/x11vnc.service

คัดลอกและวางเนื้อหาด้านล่างลงในไฟล์บริการที่สร้างใหม่

[Unit]
Description=x11vnc service
After=display-manager.service
network.target syslog.target
[Service]
Type=simple
ExecStart=/usr/bin/x11vnc -forever -display :0 -auth guess -passwd randompassword
ExecStop=/usr/bin/killall x11vnc
Restart=on-failure
[Install]
WantedBy=multi-user.target

ข้อความ randompassword คือรหัสผ่านที่คุณจะใช้ล็อกอินเข้าเซิร์ฟเวอร์ แก้ไขและตั้งเป็นรหัสผ่านแข็งแกร่งที่คุณต้องการ

โดยสรุป ข้อความในไฟล์บริการระบุว่า: นี่เป็น child service ระบบควรเริ่มบริการนี้หลังจากบริการอื่นๆ เริ่มแล้วทั้งหมด หากล้มเหลว บริการควร restart เองก่อนถึง multi-user target

หากใช้ Vim กด Esc แล้วพิมพ์ :wq ตามด้วย Enter เพื่อบันทึกและออกจาก Vim editor

หลังบันทึกไฟล์ ให้ reload systemd manager configuration และ unit files

systemctl daemon-reload

จากนั้นเปิดใช้งานบริการ x11vnc

systemctl enable x11vnc.service

สุดท้าย เริ่ม VNC server ด้วยคำสั่ง:

sudo systemctl start x11vnc.service

ตรวจสอบสถานะบริการ x11vnc ด้วย systemctl

systemctl status x11vnc.service

ผลลัพธ์ควรคล้ายภาพด้านล่าง

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

จากผลลัพธ์ บริการ active และ running

สิ่งสำคัญอีกอย่างคือพอร์ตที่ x11vnc server ใช้ (ในกรณีนี้ พอร์ต 5900)

เปิดพอร์ตเซิร์ฟเวอร์ใน Firewall ของคุณ

Ubuntu ใช้ firewall ufw เป็นค่าเริ่มต้น เพื่อให้ PC อื่นเข้าถึงระบบ Ubuntu ผ่านพอร์ตที่ x11vnc server ใช้ ให้รันคำสั่ง:

sudo ufw allow 5900/tcp

เชื่อมต่อจากคอมพิวเตอร์อื่น

ตอนนี้คุณเชื่อมต่อกับระบบ Ubuntu ผ่าน remote desktop connection ด้วย VNC ได้แล้ว

คุณใช้ VNC client ใดก็ได้เพื่อเชื่อมต่อกับ Ubuntu Linux PC หนึ่งใน VNC viewer ที่แนะนำคือ VNC Connect โดย RealVNC ใช้ได้กับเกือบทุกแพลตฟอร์มหลัก รวมถึง macOS, Linux, Windows, iOS, Android ฯลฯ

ดาวน์โหลด: VNC Viewer by RealVNC

หลังดาวน์โหลด VNC client ติดตั้งบนระบบและเปิดแอปพลิเคชัน

คู่มือนี้ใช้การติดตั้ง VNC Connect บน macOS แต่กระบวนการคล้ายกันสำหรับ OS อื่นๆ

ใส่ IP address ของ PC ที่ต้องการเชื่อมต่อ ตามด้วยหมายเลขพอร์ตที่ x11vnc server ใช้ แล้วกด Enter เพื่อเชื่อมต่อ

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

หมายเหตุ: ใน Ubuntu คุณได้ IP address โดยพิมพ์คำสั่ง:

ip addr

การเชื่อมต่อ VNC จะไม่ได้เข้ารหัส (unencrypted) หมายความว่าใครก็ตามที่ขavesdrop เครือข่าย เข้าถึงข้อมูลและดูได้ง่าย รหัสผ่านอย่างไรก็ตาม ถูกเข้ารหัส VNC client จะเตือนเกี่ยวกับการเชื่อมต่อที่ไม่ได้เข้ารหัส กด Continue เพื่อดำเนินต่อ

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

หน้าจอถัดไป จะขอให้ใส่รหัสผ่าน ซึ่งเป็นรหัสผ่านที่คุณตั้งในไฟล์ x11vnc.service ข้างต้น ใส่รหัสผ่านตามนั้นและกด Ok เพื่อดำเนินต่อ

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

ตอนนี้คุณสามารถเข้าถึง PC ของคุณจากอุปกรณ์อื่นได้แล้ว

วิธีติดตั้งและรัน VNC Server บน Ubuntu Linux

ปิดการล็อกหน้าจอ (Screen Locking)

ปัญหาหนึ่งที่เจอขณะใช้ x11vnc server คือ screen locking อย่างไรก็ตาม แก้ไขได้ง่ายด้วยการปิด screen lock บน PC

ไปที่ Settings > Privacy > Screen Lock ตรวจสอบให้แน่ใจว่าปิด Automatic Screen Lock และ Lock Screen on Suspend

หมายเหตุ: นี่เป็นความเสี่ยงด้านความปลอดภัยที่เป็นไปได้ จงเปิดใช้งานอีกครั้งภายหลัง

ทำงาน Remote บนเครื่อง Linux ของคุณ

โปรแกรม Remote desktop เป็นส่วนสำคัญของชีวิตหากคุณทำงาน remote แม้คุณจะมี VNC server ตั้งค่าบนระบบแล้ว คุณก็เข้าถึงระบบไม่ได้โดยไม่มี VNC client ด้วย VNC server ติดตั้งบน Linux PC คุณเข้าถึงระบบจากอุปกรณ์อื่นได้ ตลอดเวลา และจากทุกที่

ระบบปฏิบัติการไม่ใช่ข้อจำกัดใน remote computing มีแอปพลิเคชันหลายตัวสำหรับเกือบทุก OS ให้ตั้งค่า VNC server บนคอมพิวเตอร์ของคุณ