Users often complain that the HTML5 and the vnc consoles are not working with SolusVM. Server disconnected (code:1006) is a common error that they receive with the HTML5 console.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our Customers to perform related SolusVM queries.
Users at times complain that while accessing the VPS via NoVNC in SolusVm UI or via HTML 5 console, it fails to connect. They often update that they are receiving the error below:
Server disconnected (code:1006)
WebSocket Error: Network Error 12045, The Certificate authority is invalid or incorrect
During noVNC configuration, users need to set up SSL certificate for noVNC. It should be placed in the file /usr/local/solusvm/includes/nvnc/cert.pem/ with the following commands:
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
Users may see the "server disconnected" error, even if the certificate is up to date. We could also see this error even if the noVNC feature is enabled on Settings page in SolusVM.
Mostly, this error triggers due to misconfiguration in the noVNC feature. Often it may also happen when SSL settings required for NoVNC to work are not configured.
1. noVNC Misconfiguration
i. Firstly, we need to connect to the master node via SSH.
ii. Once in the master node, we need to ensure that /usr/local/solusvm/data/config.ini file has necessary parameters set as shown below. If there is no such file, execute the following command to create it with the required parameters:
# echo [NOVNC] >> /usr/local/solusvm/data/config.ini; echo "use_remote_hostname = true" >> /usr/local/solusvm/data/config.ini; echo "socket_dest_public = false" >> /usr/local/solusvm/data/config.ini
2. SSL configuration error
While troubleshooting the SSL configuration error, we need to ensure the following points:
i. Browse to Dashboard > Nodes > Edit node next to localhost settings page and verify that hostname of the node set to domain that was secured with Let’s Encrypt.
ii. Browse to Dashboard > Configuration > General > Other and set the noVNC Socket Location as Master Node
iii. Configure SSL certificate for the domain name of the SolusVM Master server.
iv. Update the SSL file to the NoVNC SSL location using the below command.
# cd /usr/local/svmstack/nginx/ssl/
# cat ssl.key ssl.crt > /usr/local/solusvm/includes/nvnc/cert.pem \
v. Restart web server:
# service svmstack-nginx restart
vi. Stop web socket:
# sh /scripts/websocket-stop
Try to connect over noVNC in SolusVM > Virtual Servers > VPS > VNC – it will automatically restart the socket.
This article covers how to fix "Server disconnected (code:1006)". Basically, this error happens as a result of misconfiguration in the noVNC feature or when SSL settings required for NoVNC to work are not configured.