featured image

Setup Lubuntu TightVNC and noVNC for a VPS

By

This tutorial is about, how to install a graphical environment (GUI) on Linux VPS and VNC server to let you connect to your VPS GUI desktop from your computer via browser based noVNC client and to use VPS server as a desktop computer, run Firefox, OpenOffice and other programs.

Overall Procedure

We are going to install Lubuntu Desktop on an Ubuntu 18.04 VPS server.  Then setup TightVNC server on it. After that install and configure noVNC so that you’ll be able to access the Lubuntu desktop using the browser based VNC client, noVNC.
Latter part of this tutorial discuss about, how to access Lubuntu desktop with another software (Real VNC Viewer) rather than browser based noVNC.

Note: I am using a 5$ – Ubuntu 18.04 x64 – Vultr VPS for this tutorial.

Lubuntu Desktop Installation

Login to your VPS server as root via SSH.

Firstly, update system packages by issuing following command:

apt-get update

Then Install the Lubuntu Desktop:

apt-get install lubuntu-desktop

It may take about 10 -15 minutes for the installation. After the installation, you’ll have a full-fledged desktop environment with some handy applications like AbiWord for docs and Firefox for web browsing.

Then reboot your server for changes to be take effect:

reboot

Install and Setup TightVNC Server

Now we are going to install TightVNC server so that we can access our Lubuntu desktop using a VNC client.
Issue following command to install TightVNC server:

apt-get install tightvncserver

Then install xfonts-base:

apt-get install xfonts-base

After that start the VNC server:

vncserver :1

Here you’ll prompt to enter a password to access the VPS server. If you like your can setup a view/read – only password also. (In this tutorial, I am not setting up a view-only password)

Start VNC server

Now your VNC server is up and running but you need to do some extra configurations in order to access the desktop with a VNC client.

Make the VNC configuration file executable:

sudo chmod +x ~/.vnc/xstartup

Edit the VNC configuration file:

nano ~/.vnc/xstartup

Remove all the content and replace with following lines.

#!/bin/sh
xsetroot -solid grey
export XKL_XMODMAP_DISABLE=1
#autocutsel -fork
openbox &
/usr/bin/lxsession -s Lubuntu &

Finally your configuration file should look as follows.

VNC configuration

Save and close the configuration file:

Ctrl + X

Stop the previous VNC server:

vncserver -kill :1

Start the VNC server with new configurations:

vncserver :1

Install and Configure noVNC

Now it’s time to install noVNC so that we can access our Lubuntu desktop via web-browser.

Firstly lets’ install some essential packages:

apt -y install novnc websockify python-numpy

Then create a SSL certificate with openSSL:

cd /etc/ssl
openssl req -x509 -nodes -newkey rsa:2048 -keyout novnc.pem -out novnc.pem -days 365

Provide required details appropriately.

creating SSL certificate for noVNC

Setup permission for the certificate file:

chmod 644 novnc.pem

Start Websockify with the user who run VNC server and proxy localhost:5901 on port 6080:

websockify -D --web=/usr/share/novnc/ --cert=/etc/ssl/novnc.pem 6080 localhost:5901

Then you’ll get an output as follows:

noVNC output

Connect with noVNC

Access to the [http://SERVER_IP_ADDRESS:6080/vnc.html] from your client web browser, and then noVNC form is displayed like follows, Login with VNC password.

noVNC home

Now you have successfully access to your Lubuntu desktop.

noVNC Lubuntu desktop

Note: If you are unsatisfied with the default dimensions of Lubuntu desktop in noVNC (scroll bars may be bothering you etc.), you can easily change the dimensions by following these steps.

  • Stop the VNC server
vncserver -kill :1
  • Start the VNC server again by specifying custom dimensions.
    I have specified 1024×768 as my dimensions.
vncserver :1 -geometry 1024x768 -depth 16 -pixelformat rgb565

Alternative Connection: Real VNC Viewer

Rather than using your browser to access Lubuntu Desktop, you can use a VNC Viewer like RealVNC.

Download the VNC Viewer appropriate to your platform: Click Here

Install the Viewer and run it.

Then you’ll obtain a window like below.

vnc viewer

Type the SERVER_IP_ADDRESS:5901 in the “VNC Server Address” text box and press “Enter”.

connect to vnc server

Then you’ll prompted with a security warning, Accept it. After that you’ll be asked for the VNC password. Enter the password and proceed forward.

Enter VNC password

Now you have successfully accessed the Lubuntu Desktop with Real VNC Viewer.

VNC Viewer Lubuntu Desktop

If you are not satisfy with the quality of display in Viewer, you can easily change it by going to Properties and increasing Picture quality to High.

VNC Properties
Change color settings

Thank you 🙂

2 Comments
  1. zack 3 months ago
    Reply

    very helpful tutorial , had setup VNC on my server

  2. Dainius G. 5 months ago
    Reply

    Great article, thank you very much!

Leave a Comment

Your email address will not be published.

You may also like

Hot News