noVNC console allows to access the VPS via SolusVM UI.
noVNC is available for KVM and XEN HVM VPSes. It can be accessed at SolusVM > Vritual Servers > List Virtual Servers > VNC
Master Hostname should have valid SSL and that's the primary requirement for noVNC feature. Refer the below article to install Let'sencrypt SSL.
Here is the instruction how to configure noVNC:
1. Set up noVNC in SolusVM > Configuration > Settings > Other
noVNC Admin - Disable/Enable noVNC in the admin area
noVNC Client - Disable/Enable noVNC in the client area
noVNC Socket Port - The port number the websockify daemon runs on. Default is 7706
noVNC Socket Location - Set up Master as socket Host.
2. Connect to master server via SSH and isntall necessary packages:
yum install -y python numpy python-ssl
3. Setup SSL certificate for noVNC. It should be placed in the file
/usr/local/solusvm/includes/nvnc/cert.pem/ Execute the following
cat /usr/local/svmstack/nginx/ssl/ssl.crt /usr/local/svmstack/nginx/ssl/ssl.key > /usr/local/solusvm/includes/nvnc/cert.pem systemctl restart svmstack-nginx.service
Note: Starting with version 1.24.09 this action is performed automatically when VNC-console certificate expires.
On CentOS Stream 8/RHEL 8/Scientific Linux 8 if noVNC Socket Location is set to Host Node no actions required in respect to SSL-certificate for VNC. In this case SolusVM uses Nginx SSL-certificate files directly
4. Several advanced settings exist in the masters
/usr/local/solusvm/data/config.ini for noVNC:
[NOVNC] ;;Set this to true if you want noVNC to access the websocket with the remote servers hostname. All the hostnames must resolve correctly. Default (false) is to use the ip address of the remote server use_remote_hostname = true ;;Set this to true if you want the socket on the host to forward packets across the public network socket_dest_public = false
To debug socket connections you can manually start websockify on the host (Make sure you do this on the correct server and you specify the correct port):
sh /scripts/websocket-stop php /usr/local/solusvm/includes/wsocket.php --port=7706 --debug=1
Never start websockify without the --debug=1 flag manually as root. SolusVM will automatically start it if it's not running.