Self hosted Video call service

We are currently living extraordinary circumstances. In these times, you may find yourself in need for a group Video call service, that allows calls with unlimited people, for unlimited time. We know there are multiple options out there, but we thought about introducing you to one of our favourites. Why is that? because it’s Open source! Completely free and it’s self hosted!

That’s why we want to introduce you to Jitsi meet, a super simple and secure video conferencing solution. It requires no account and has an app for iPhone, iPad and Android as well as browser support. It’s perfect to communicate with your colleagues, go ahead with any meeting (that can’t really be an email) or maybe to catch up with your loved ones.

If you are interested in this solution, we’ve wrote a really easy, step by step guide on how to set up a Jitsi Meet server on a PCextreme VPS.

NOTE: the use of our products have costs attached.

To run your own Jitsi-Meet server, you’ll need the following components:

  • A VPS running Ubuntu 18.04. In this example we will be using a small 2GB, 2Core machine.
  • A Domain name. For this guide we will be using “hetvoorbeelddomein.nl”

You can use any domain name available to you, but if you don’t have a domain name available, or if you want to use a new one, you can get one at our store.

Creating the VPS

To create the VPS, login to our control-panel and select Producs & Services in the menu on top of the page. Next, navigate to Servers (New), and click My Servers.

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-35-26.png

On this page, click the button + Create Server

Use the following settings:

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-35-40.png
This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-36-25.png

For authentication, you can use a password or an SSH-key.
If you don’t provide a password, one will be generated for you when the server is created.

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-36-54.png
This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-38-04.png

Specify the hostname. It is advisable to use a subdomain to follow this tutorial.
We are using jitsimeet.hetvoorbeelddomein.nl.

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-39-11.png

We don’t need any advanced options, so we are ready to create the server:

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-39-29.png
This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-39-40.png

You will be redirected to the following page, which lists the details of your Server.
Write down the IPv4 address, you’ll need it further on.

Make sure to save the Password, for this is the last time it is being displayed.

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-40-28.png

Set up the Domain-name

Next, we need to point our subdomain to the IP-adres of the new server.
In the control-panel, go to DNS & Health Checks -> Zones.
Then, click on the domain you will be using for the server.

DNS&Health Checks

Select + Add Record and fill in the data from your server.
Make sure to use the same subdomain you used as hostname for your new server.
Also, make sure to provide the IP listed with your server.

Only set up IPv4: An SSL-certificate will be generated by Certbot later in this tutorial, and this fails when you setup IPv6.

This image has an empty alt attribute; its file name is Screenshot-from-2020-03-24-20-41-52.png

Don’t forget to click Save Changes!

Prepare the installation

In this section, we are setting up the machine. You should use your own domainname to substitute jitsimeet.hetvoorbeelddomein.nl.

First, we need to connect to the machine via SSH via the following command:

ssh root@jitsimeet.hetvoorbeelddomein.nl

If you are using Mac of Linux, this can be done from the Terminal.

If you are using Windows, there is no SSH-client installed by default.
The following article explains how to enable SSH on Windows 10.

https://www.howtogeek.com/336775/how-to-enable-and-use-windows-10s-built-in-ssh-commands/

NOTE: We did not write this article; any information should be checked and measured.

Before installing Jitsi, we are going to update and upgrade the OS, by entering the following command:

apt update && apt upgrade

Also at this point, we will set up the firewal: In the following command we enable UFW (Uncomplicated Firewall), and open the ports for SSH, the webserver, and Jitsi itself:

ufw enable; ufw allow in ssh; ufw allow in 80/tcp; ufw allow in 443/tcp; ufw allow in 100

Install Jitsi-meet

To install Jitsi, we first need to add it’s repository to our sources .

First, download and install the GPG-key from Jitsi:

wget https://download.jitsi.org/jitsi-key.gpg.key; apt-key add jitsi-key.gpg.key

Then, add the repository to our sources, and update it.

echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list; apt update

Next comes the easy part: Install NGINX for the webserver-capacities, and then install jitsi-meet itself:

apt -y install nginx 
apt -y install jitsi-meet

During the installation of Jitsi, you need to enter the hostname. This is the domainname we set up earlier.
In our case: jitsimeet.hetvoorbeelddomein.nl. Remember, replace this with your own domain.

For the next step, we will choose to generate a self-signed certificate

Jitsi is now installed, and up-and running. The last thing we need to do, is setup the SSL-certificate.
This is done by entering the following command:

/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Be sure to provide a valid e-mailadres; you will be notified should any issues arrive.

You can now start using your new video conferencing server, go visit your domain!

Please be noted; anyone who has the URL can use this installation.
Authentication is outside the scope of this Tutorial.