Tutorials > How to create your own Video Conference server with Jitsi Meet on Ubuntu 20.04

How to create your own Video Conference server with Jitsi Meet on Ubuntu 20.04

Published on: 23 September 2020

CMS Smart Working Video Conference

Jitsi Meet is an open source platform that allows you to run video conferences in a free and secure way, thanks also to HTTPS encryption. The Jitsi Meet client can be installed on any device and operating system, to run video conferences and work together remotely, with no limited number of users connected.

In this tutorial you will learn how to create your own video conference server with Jitsi Meet to provide a video conferencing solution to those who do smart working or video calls, without using third-party services such as Skype for Business, Microsoft Teams, Cisco WebEx or Zoom.

Prerequisites

To get started, connect to your server via an SSH connection. If you haven’t done so yet, following our guide is recommended to connect securely with the SSH protocol. In case of a local server, go to the next step and open the terminal directly.

To follow the steps of this tutorial, the credentials of the root user or any other user with administrative privileges (that can run sudo) are necessary. All the steps in this tutorial have to made as an administrator. 

Hostname and Fully Qualified Domain Name (FQDN) setting

Set up a hostname and FQDN for your server before enabling an HTTPS connection. Then, type:

sudo hostnamectl set-hostname jitsimeet
sudo sed -i 's/^127.0.0.1.*$/127.0.0.1 jitsimeet.mydomain.com jitsimeet/g' /etc/hosts

N.B. Replace jitsimeet.mydomain.com with your domain name.

At this point, add rules to the UFW firewall to allow HTTP, HTTPS, SSH communication and UDP traffic for ports 10000 to 20000.

sudo ufw allow OpenSSH
sudo ufw allow http
sudo ufw allow https
sudo ufw allow in 10000:20000/udp
sudo ufw enable

A message will be returned to notify that following commands may eliminate the current connection: continue anyway by typing Y, and press Enter.

To check the status of UFW, run the following command to show the rules just added:

sudo ufw status
UFW Firewall rules

Updating the System

For security reasons, upgrade Ubuntu to the latest available versions of the packages. Then, type:

 sudo apt update -y
 sudo apt upgrade -y
 sudo shutdown -r now

Installing OpenJDK

Jitsi Meet Video Conference Server requires Java Runtime Environment. Then, install version 8 using the appropriate command.

sudo apt install -y openjdk-8-jre-headless

In addition, set Java between the environment variables.

echo "JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")" | sudo tee -a /etc/profile
source /etc/profile
Java environment variables

Installing NGINX

Before installing Jitsi Meet, installing the NGINX web server or alternatively Apache is recommended. However, configuring the server manually isn’t necessary, since Jitsi Meet recognizes and automatically configures it at its best. Run the following commands, to install and enable NGINX:

sudo apt install -y nginx
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

N.B. If you decide not to install Nginx or Apache, Jitsi Meet will automatically install Jetty.

Installing Jitsi Meet Video Conference Platform

At this point, your server is ready to install Jitsi Meet. To do so, run the following commands to download the authentication key, add the repository, download the software and install it.

Certified download:

wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -

Repository added:

sudo sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"

Package update and installation:

sudo apt update -y && sudo apt install -y jitsi-meet
Added Jitsi Meet Repository and Installation Jitsi Meet

When required to enter the hostname, enter the one previously provided (in this tutorial: "jitsimeet.mydomain.com"). Select "OK" and press Enter.

Domain selection for;  installation of Jitsi Meet

When required to provide the SSL certificate, select "Generate a new self-signed certificate (a ‘Let's Encrypt certificate’ will later be provided)", then go to "OK" and press Enter.

Now, start a last script to apply the SSL certificate. Then, type:

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

Finally, you will be requested to enter the email address to receive the notifications related to the SSL certificate.

Creating a video conference

At this point Jitsi Meet Video Conference Platform is correctly installed on your server and and can be used to host the video conference.

Use your browser to get to the domain previously set (here "jitsimeet.mydomain.com") and access Jitsi Meet Video. 

To create a new video conference, simply click on "Go" and share the URL generated with who you want to make a video call with:

View of Jitsi Meet Installation

To limit access to the video conference, add a password to the session. 

As with other applications, sharing your computer screen or a specific application with other participants is also possible. 

Among the most interesting additional features, with Jitsi Meet your video conference can also be broadcast live on YouTube and/or recorded, by uploading it to your Dropbox account.