VNC not working as expected in PVE7

Shusky

Member
Feb 19, 2018
11
3
8
26
Munich, Germany
Hello,

I have an issue with the commands for setting up VNC access via IP & Port with password authentication using PVESH or the "Monitor" section in the Web-GUI.

Within Proxmox 6, it was possible to configure VNC access using the following commands:
Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "change vnc 0.0.0.0:[PORT],password"
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "change vnc password [Password]"

However, in Proxmox 7, I receive the following error messages:
Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "change vnc 0.0.0.0:[PORT],password"
-> Expected 'password' after 'vnc'
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "change vnc password [PASSWORD]"
-> terminal does not support password prompting

I also saw that in PVE7, there is now a new "default" VNC option:
PVE7:
# info vnc
default:
Server: :/var/run/qemu-server/[VMID].vnc (unix)
Auth: vnc (Sub: none)

PVE6 (after using the above mentioned commands):
# info vnc
default:
Server: 0.0.0.0:[PORT] (ipv4)
Auth: vnc (Sub: none)

After getting the VNC configured on the port, I was still not able to set the password using the command from the documentation:
vnc2:
Server: 0.0.0.0:[PORT] (ipv4)
Auth: vnc (Sub: none)

Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "set_password vnc [PASSWORD] -d vnc2"
set_password: extraneous characters at the end of line
Try "help set_password" for more information

Using the command below, I was able to successfully set the password with 8 chars, however, I was still not able to login due to a wrong password:
Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "set_password vnc [PASSWORD]"

Is this behavior intended for PVE7 or is this a bug that needs to be fixed from your side?

Thank you in advance for any assistance regarding this issue!

Currently installed version:
proxmox-ve: 7.0-2 (running kernel: 5.11.22-5-pve)
pve-manager: 7.0-13 (running version: 7.0-13/7aa7e488)
pve-kernel-helper: 7.1-2
pve-kernel-5.11: 7.0-8
pve-kernel-5.11.22-5-pve: 5.11.22-10
ceph-fuse: 14.2.21-1
corosync: 3.1.5-pve1
criu: 3.15-1+pve-1
glusterfs-client: 9.2-1
ifupdown: 0.8.36+pve1
libjs-extjs: 7.0.0-1
libknet1: 1.22-pve1
libproxmox-acme-perl: 1.4.0
libproxmox-backup-qemu0: 1.2.0-1
libpve-access-control: 7.0-5
libpve-apiclient-perl: 3.2-1
libpve-common-perl: 7.0-10
libpve-guest-common-perl: 4.0-2
libpve-http-server-perl: 4.0-3
libpve-storage-perl: 7.0-12
libspice-server1: 0.14.3-2.1
lvm2: 2.03.11-2.1
lxc-pve: 4.0.9-4
lxcfs: 4.0.8-pve2
novnc-pve: 1.2.0-3
openvswitch-switch: 2.15.0+ds1-2
proxmox-backup-client: 2.0.11-1
proxmox-backup-file-restore: 2.0.11-1
proxmox-mini-journalreader: 1.2-1
proxmox-widget-toolkit: 3.3-6
pve-cluster: 7.0-3
pve-container: 4.1-1
pve-docs: 7.0-5
pve-edk2-firmware: 3.20210831-1
pve-firewall: 4.2-4
pve-firmware: 3.3-2
pve-ha-manager: 3.3-1
pve-i18n: 2.5-1
pve-qemu-kvm: 6.0.0-4
pve-xtermjs: 4.12.0-1
qemu-server: 7.0-16
smartmontools: 7.2-1
spiceterm: 3.2-2
vncterm: 1.7-1
zfsutils-linux: 2.0.5-pve1
 
Hello,

Thank you very much for this quick reply.

I just added the pvetest repo and updated the corresponding packages, however, as it seems, this does only fix the password issue (second command) to some extend, but not the other issue (first command):
Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "change vnc 0.0.0.0:[PORT],password"
-> Expected 'password' after 'vnc'

So I guess this behavior will stay?

The second command does seem to work, at least no error message occurred, however, it seems that it was not correctly applied to the VNC access "vnc2".

I could only make it work now by adding the VNC information directly in the configuration file:
Bash:
args: -vnc 0.0.0.0:57101,password=on
and afterwards executing:
Bash:
pvesh create /nodes/localhost/qemu/[VMID]/monitor -command "set_password vnc [PASSWORD] -d vnc2"

I mean, I can live with the second command being different for PVE7, but not being able to set the IP and port information after startup would be a bummer.

Bash:
pveversion -v | grep pve-qemu
pve-qemu-kvm: 6.1.0-1
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!