Advanced usage - novnc/noVNC GitHub Wiki

Below are some tips for more advanced usage.

  • See the websockify encryption page for how to use or troubleshoot encrypted WebSocket connections.

  • tightvnc provide a nice startup script that can be used to run a separate X desktop that is served by VNC. To install and run the server under Ubuntu you would do something like this:

    sudo apt-get install tightvncserver
    vncserver :1
    

    The VNC server will run in the background. The port that it runs on is the display number + 5900 (i.e. 5901 in the case above).

  • x11vnc can be used to share your current X desktop. Note that if you run noVNC on the X desktop you are connecting to via VNC you will get a neat hall of mirrors effect, but the client and server will fight over the mouse.

    sudo apt-get install x11vnc
    x11vnc -forever -display :0
    

    Without the -forever option, x11vnc will exit after the first disconnect. The -display option indicates the exiting X display to share. The port that it runs on is the display number + 5900 (i.e. 5900 in the case above).

  • To run the python proxy directly without using novnc_proxy script (to pass additional options for example):

    ./utils/websockify/run source_port target_addr:target_port
    ./utils/websockify/run 8787 localhost:5901
    
  • To activate the mini-webserver in websockify use the --web DIR option:

    ./utils/websockify/run --web ./../.. 8787 localhost:5901
    
  • Point your web browser at http://localhost:8787/vnc.html. On the page enter the location where the proxy is running (localhost and 8787) and the password that the vnc server is using (if any). Hit the Connect button.

  • If you are using python 2.3 or 2.4 and you want websockify to support 'wss://' (TLS) then see the websockify README for instructions on building the ssl module.