VNC Connect has instant support
สารบัญ:
- ข้อกำหนดเบื้องต้น
- การติดตั้ง Xfce Desktop Environment
- การติดตั้งเซิร์ฟเวอร์ VNC
- การกำหนดค่าเซิร์ฟเวอร์ VNC
- การสร้างไฟล์หน่วย Systemd
- กำลังเชื่อมต่อกับเซิร์ฟเวอร์ VNC
- ตั้งค่า SSH Tunneling บน Linux และ macOS
- ตั้งค่า SSH Tunneling บน Windows
- ข้อสรุป
ในบทช่วยสอนนี้เราจะแนะนำคุณเกี่ยวกับขั้นตอนการติดตั้งและกำหนดค่าเซิร์ฟเวอร์ VNC บนระบบ CentOS 7 นอกจากนี้เราจะแสดงวิธีการเชื่อมต่อกับเซิร์ฟเวอร์ VNC อย่างปลอดภัยผ่านอุโมงค์ SSH
Virtual Network Computing (VNC) เป็นระบบแชร์เดสก์ท็อปกราฟิกที่ให้คุณใช้แป้นพิมพ์และเมาส์เพื่อควบคุมคอมพิวเตอร์เครื่องอื่นจากระยะไกล
ข้อกำหนดเบื้องต้น
ก่อนทำการสอนต่อให้แน่ใจว่าคุณได้เข้าสู่ระบบในฐานะผู้ใช้ที่มีสิทธิ์ sudo เราจะถือว่าคุณเข้าสู่ระบบในฐานะผู้ใช้ชื่อ
linuxize
การติดตั้ง Xfce Desktop Environment
การติดตั้งเซิร์ฟเวอร์ CentOS มักไม่ได้ติดตั้งสภาพแวดล้อมเดสก์ท็อปดังนั้นเราจะเริ่มด้วยการติดตั้งสภาพแวดล้อมเดสก์ท็อปที่มีน้ำหนักเบา
ในคู่มือนี้เราจะทำการติดตั้ง Xfce มันเป็นทรัพยากรระบบที่รวดเร็วเสถียรและต่ำซึ่งเหมาะสำหรับการใช้งานบนเซิร์ฟเวอร์ระยะไกล
แพ็คเกจ Xfce มีอยู่ในที่เก็บ EPEL หากคุณไม่ได้เปิดใช้งานที่เก็บ EPEL บนเซิร์ฟเวอร์คุณสามารถทำได้โดยพิมพ์:
sudo yum install epel-release
เมื่อเพิ่มที่เก็บแล้วให้ติดตั้ง Xfce บน CentOS ของคุณด้วย:
sudo yum groupinstall xfce
ขึ้นอยู่กับระบบของคุณการดาวน์โหลดและติดตั้งแพ็คเกจ Xfce และการอ้างอิงอาจใช้เวลาสักครู่
การติดตั้งเซิร์ฟเวอร์ VNC
เราจะใช้ TigerVNC เป็นเซิร์ฟเวอร์ VNC ที่เราเลือก TigerVNC เป็นเซิร์ฟเวอร์ VNC แบบโอเพ่นซอร์สประสิทธิภาพสูงที่ได้รับการบำรุงรักษา
พิมพ์คำสั่งต่อไปนี้เพื่อติดตั้ง TigerVNC บนเซิร์ฟเวอร์ CentOS ของคุณ:
yum install tigervnc-server
หลังจากติดตั้งเซิร์ฟเวอร์ VNC แล้วขั้นตอนต่อไปคือการเรียกใช้คำสั่ง
vncserver
ซึ่งจะสร้างการกำหนดค่าเริ่มต้นและตั้งค่ารหัสผ่าน ห้ามใช้ sudo เมื่อรันคำสั่งต่อไปนี้:
vncserver
คุณจะได้รับแจ้งให้ป้อนและยืนยันรหัสผ่านและกำหนดให้เป็นรหัสผ่านแบบดูอย่างเดียวหรือไม่ หากคุณเลือกที่จะตั้งค่ารหัสผ่านแบบดูอย่างเดียวผู้ใช้จะไม่สามารถโต้ตอบกับอินสแตนซ์ VNC ด้วยเมาส์และแป้นพิมพ์ได้
You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log
ครั้งแรกที่รันคำสั่ง
vncserver
คำสั่งจะสร้างและเก็บไฟล์รหัสผ่านในไดเรกทอรี
~/.vnc
ซึ่งจะถูกสร้างขึ้นหากไม่มีอยู่
หมายเหตุ
:1
หลังชื่อโฮสต์ในเอาต์พุตด้านบน สิ่งนี้ระบุหมายเลขพอร์ตการแสดงผลที่เซิร์ฟเวอร์ vnc กำลังทำงาน ในกรณีของเราเซิร์ฟเวอร์กำลังทำงานบนพอร์ต TCP
5901
(5900 + 1) หากคุณสร้างอินสแตนซ์ที่สองด้วย
vncserver
มันจะทำงานบนพอร์ตว่างถัดไปเช่น
:2
ซึ่งหมายความว่าเซิร์ฟเวอร์กำลังทำงานบนพอร์ต
5902
(5900 + 2)
สิ่งสำคัญที่ต้องจำคือเมื่อทำงานกับเซิร์ฟเวอร์ VNC
:X
เป็นพอร์ตจอแสดงผลที่อ้างถึง
5900+X
ก่อนดำเนินการต่อในขั้นตอนถัดไปอันดับแรกให้หยุดทำงานอินสแตนซ์ VNC โดยใช้คำสั่ง
vncserver
พร้อมตัวเลือก
-kill
และหมายเลขเซิร์ฟเวอร์เป็นอาร์กิวเมนต์ ในกรณีของเราเซิร์ฟเวอร์ทำงานในพอร์ต 5901 (
:1
) ดังนั้นเราจะหยุดด้วย:
vncserver -kill:1
การกำหนดค่าเซิร์ฟเวอร์ VNC
ตอนนี้ทั้ง Xfce และ TigerVNC ได้รับการติดตั้งบนเซิร์ฟเวอร์ CentOS ของเราขั้นตอนต่อไปคือการกำหนดค่า TigerVNC ให้ใช้ Xfce โดยให้เปิดไฟล์ต่อไปนี้:
nano ~/.vnc/xstartup
และเปลี่ยนบรรทัดสุดท้ายจาก
exec /etc/X11/xinit/xinitrc
เป็น
exec startxfce4
:
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
บันทึกและปิดไฟล์ สคริปต์ด้านบนจะถูกดำเนินการโดยอัตโนมัติทุกครั้งที่คุณเริ่มหรือรีสตาร์ทเซิร์ฟเวอร์ TigerVNC
นี่คือตัวอย่าง:
~ /.vnc / config
# securitytypes=vncauth, tlsvnc # desktop=sandbox geometry=1920x1080 # localhost # alwaysshared dpi=96
การสร้างไฟล์หน่วย Systemd
เราจะสร้างไฟล์ systemd unit ซึ่งจะช่วยให้เราสามารถเริ่มหยุดและเริ่มบริการ VNC ได้อย่างง่ายดายตามต้องการเช่นเดียวกับบริการ systemd อื่น ๆ
คัดลอกไฟล์ vncserver unit ด้วยคำสั่ง
cp
:
sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service
เปิดไฟล์ด้วยโปรแกรมแก้ไขข้อความและแทนที่
sudo nano /etc/systemd/system/vncserver@\:1.service
/etc/systemd/system/vncserver@:1.service
Description=Remote desktop service (VNC) After=syslog.target network.target Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' ExecStart=/usr/sbin/runuser -l linuxize -c "/usr/bin/vncserver %i" PIDFile=/home/linuxize/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' WantedBy=multi-user.target
บันทึกและปิดไฟล์ แจ้ง systemd ที่เราสร้างไฟล์หน่วยใหม่ด้วย:
sudo systemctl daemon-reload
ขั้นตอนต่อไปคือการเปิดใช้งานไฟล์หน่วยด้วยคำสั่งต่อไปนี้:
sudo systemctl enable vncserver@:1.service
หมายเลข
1
หลังจากเครื่องหมาย
@
กำหนดพอร์ตการแสดงผลที่บริการ VNC จะทำงานในกรณีของเราซึ่งเป็นค่าเริ่มต้น
1
และเซิร์ฟเวอร์ VNC จะรับฟังพอร์ต
5901
ตามที่เราได้กล่าวถึงในส่วนก่อนหน้านี้
เริ่มบริการ 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@:1.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-09-16 09:59:53 UTC; 4s ago Process: 6391 ExecStart=/usr/sbin/runuser -l linuxize -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS) Process: 6389 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 6413 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service ‣ 6413 /usr/bin/Xvnc:1 -auth /home/linuxize/.Xauthority -desktop server2.linuxize.com:1 (linuxize) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /home/linuxize/.vnc/passwd -rfbport…
กำลังเชื่อมต่อกับเซิร์ฟเวอร์ VNC
VNC ไม่ใช่โปรโตคอลที่เข้ารหัสและสามารถถูกดักจับแพ็คเก็ตได้ วิธีที่แนะนำคือการสร้างอุโมงค์ SSH ที่จะส่งต่อการรับส่งข้อมูลอย่างปลอดภัยจากเครื่องโลคอลของคุณบนพอร์ต 5901 ไปยังเซิร์ฟเวอร์บนพอร์ตเดียวกัน
ตั้งค่า SSH Tunneling บน Linux และ macOS
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
คุณจะได้รับแจ้งให้ป้อนรหัสผ่านของผู้ใช้
อย่าลืมเปลี่ยน
username
และ
server_ip_address
ด้วยชื่อผู้ใช้และที่อยู่ IP ของเซิร์ฟเวอร์ของคุณ
ตั้งค่า SSH Tunneling บน Windows
เปิด Putty และป้อนที่อยู่ IP เซิร์ฟเวอร์ของคุณในฟิลด์
Host name or IP address
ตอนนี้คุณสามารถเริ่มโต้ตอบกับเดสก์ท็อป XFCE ระยะไกลจากเครื่องท้องถิ่นของคุณโดยใช้แป้นพิมพ์และเมาส์
ข้อสรุป
ถึงตอนนี้คุณควรมีเซิร์ฟเวอร์ VNC และทำงานอยู่และคุณสามารถจัดการเซิร์ฟเวอร์ CentOS 7 ของคุณได้อย่างง่ายดายโดยใช้ส่วนต่อประสานกราฟิก
ในการกำหนดค่าเซิร์ฟเวอร์ VNC ของคุณเพื่อเริ่มแสดงผลสำหรับผู้ใช้มากกว่าหนึ่งรายให้สร้างการกำหนดค่าเริ่มต้นและตั้งค่ารหัสผ่านโดยใช้คำสั่ง
vncserver
และสร้างไฟล์บริการใหม่โดยใช้พอร์ตอื่น
อย่าลังเลที่จะแสดงความคิดเห็นหากคุณมีคำถามใด ๆ
centos vncMicrosoft Tweaks Ad หลังจากที่ Apple บ่น

เรื่องราว "Laptop Hunter" ยังคงมีน้อยลงเล็กน้อย Apple-bashing
วิธีการติดตั้งและกำหนดค่า vnc บนเดเบียน 9

บทช่วยสอนนี้อธิบายวิธีการติดตั้งและกำหนดค่าเซิร์ฟเวอร์ VNC ในระบบ Debian 9 Virtual Network Computing (VNC) เป็นระบบแชร์เดสก์ท็อปกราฟิกที่ให้คุณใช้แป้นพิมพ์และเมาส์เพื่อควบคุมคอมพิวเตอร์เครื่องอื่นจากระยะไกล
วิธีการติดตั้งและกำหนดค่า vnc บน Ubuntu 18.04

คู่มือนี้ครอบคลุมขั้นตอนที่จำเป็นสำหรับการติดตั้งและกำหนดค่าเซิร์ฟเวอร์ VNC บนระบบ Ubuntu 18.04 นอกจากนี้เราจะแสดงวิธีการเชื่อมต่อกับเซิร์ฟเวอร์ VNC อย่างปลอดภัยผ่านอุโมงค์ SSH