เป็นไปได้หรือไม่ที่จะเข้าถึง VM โดยไม่ต้องส่งต่อรีโมตพอร์ตและ VNC ไปยัง localhost? ฉันต้องการที่จะสามารถ VNC ในเซิร์ฟเวอร์ KVM และดูการแสดงผล VMs
เป็นไปได้หรือไม่ที่จะเข้าถึง VM โดยไม่ต้องส่งต่อรีโมตพอร์ตและ VNC ไปยัง localhost? ฉันต้องการที่จะสามารถ VNC ในเซิร์ฟเวอร์ KVM และดูการแสดงผล VMs
คำตอบ:
ฉันพบคำตอบหลังจากค้นหาและพบสิ่งต่อไปนี้ใน /etc/libvirt/qemu.conf
# VNC is configured to listen on 127.0.0.1 by default.
# To make it listen on all public interfaces, uncomment
# this next option.
#
# NB, strong recommendation to enable TLS + x509 certificate
# verification when allowing public access
#
vnc_listen = "0.0.0.0"
ฉันไม่ใส่เครื่องหมายในบรรทัดข้างต้นและรีสตาร์ทlibvirtd
เพื่อพบว่าฉันยังคงไม่สามารถเข้าถึง VNC ผ่านเครือข่าย iptables
คราวนี้เป็นผู้กระทำผิด บน Centos ฉันใช้system-config-firewall-tui
เพื่ออนุญาตการเข้าถึง VNC
firewall-cmd --permanent --add-port=5900/tcp; firewall-cmd --reload
ได้ คุณอาจจะเห็นพอร์ตเหล่านี้เปิดบนโฮสต์ KVM (เท่าที่ฟัง) ในการส่งออกของคำสั่งหรือnetstat -pant
ss -pant
หากคุณ VNC ไปยังโฮสต์ KVM หมายความว่าควรมีเซิร์ฟเวอร์ X ที่ใช้งานอยู่ (สิ่งที่ซ้ำซ้อนอย่างสมบูรณ์ที่ต้องทำบน hypervisor แต่เป็นตัวเลือกของคุณ) เนื่องจากคุณมีเดสก์ท็อปอยู่แล้วไม่มีอะไรจะห้ามคุณไม่ให้รันvirt-viewer
หรือvirt-manager
เข้าถึงคอนโซลผู้เยี่ยมชมโดยตรง ในทางกลับกันถ้า qemu-kvm VM ทำงานด้วยการสนับสนุน VNC คุณสามารถเชื่อมต่อกับคอนโซล VNC ของ VM ได้โดยตรง