How to Install Jitsi Meet on Linux?

Introduction

In this tutorial, we install and configure Jitsi Meet on Ubuntu 18.04 server. It is a free, open-source video-conferencing web application based on WebRTC. It works on iOS, Linux, Windows, macOS, and Android as well. The web application provides high audio and video quality and supports certificates from Let’s Encrypt with fully encrypted connections using TLS/SSL.

You can configure the Jitisi Meet with the restriction through this only registered users can create new conference rooms. The default configuration allows it to publicly available on the internet and dust to this anyone can create new conference rooms.
And after creating the new conference room, anyone can join who has the unique address or the optional password to enter.

Features of Jitsi Meet

  • It is Open- Source web application.
  • Users can share their screen.
  • Users can do a group chat.
  • Jitsi Meet users can set a password for their conference room to prevent it from any strangers.
  • The communication over the network is encrypted, and the end-to-end TLS encryption ensures that no one can snoop on the call.
  • Users can share text documents.
  • You can assign a moderator to any authorized users and a moderator can mute every participant with one click.
  • You can record the meeting and can store it on DropBox or YouTube.

Prerequisites

  • An Ubuntu 18.04 server up and running.
  • A non-root user with sudo privileges.
  • RAM: 1 GB
  • A domain name that points your server.

Setup the System Hostname

Change the system’s hostname to your domain name of the Jitsi Meet server and resolve your hostname to the localhost.

Note: please replace the hostname “jitsi.zehncloud.com” with your hostname.

 sudo hostnamectl set-hostname jitsi.zehncloud.com

Check the hostname

 hostname

Output of above command

 jitsi.zehncloud.com

Open the /etc/hosts file with a text editor for setting a local mapping of the server’s hostname with the loopback IP address, 127.0.0.1.

 sudo nano /etc/hosts

Add the below line into /etc/hosts file

 127.0.0.1 jitsi.zehncloud.com

Save and exit.

Open the firewall ports

Enable the UFW firewall and open the required firewall ports

   sudo ufw allow OpenSSH
   sudo ufw allow 80/tcp
   sudo ufw allow 443/tcp
   sudo ufw allow 4443/tcp
sudo ufw allow 10000/udp

Review the firewall status

sudo ufw status

The output will display open ports

    Status: active
    To                         Action      From
    --                         ------      ----
    80/tcp                     ALLOW       Anywhere
    443/tcp                    ALLOW       Anywhere
    4443/tcp                   ALLOW       Anywhere
    10000/udp                  ALLOW       Anywhere
    80/tcp (v6)                ALLOW       Anywhere (v6)
    443/tcp (v6)               ALLOW       Anywhere (v6)
    4443/tcp (v6)              ALLOW       Anywhere (v6)
    10000/udp (v6)             ALLOW       Anywhere (v6)

Install the Jitsi Meet

Add the Jitsi repository to your server

    wget https://download.jitsi.org/jitsi-key.gpg.key

The output of above command

    --2020-06-16 13:12:58--  https://download.jitsi.org/jitsi-key.gpg.key
    Resolving download.jitsi.org (download.jitsi.org)... 104.18.18.146, 104.18.19.146, 2606:4700::6812:1392, ...
    Connecting to download.jitsi.org (download.jitsi.org)|104.18.18.146|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 3071 (3.0K) [application/pgp-keys]
    Saving to: ‘jitsi-key.gpg.key’
    jitsi-key.gpg.key              100%[==============================================================================>]   3.00K  --.-KB/s    in 0s
    2020-06-16 13:12:58 (58.7 MB/s) - ‘jitsi-key.gpg.key’ saved [3071/3071]

The apt is a package manager which will use the GPG key for package validation that we have downloaded from Jitsi repository 

Remove the GPG key as it no longer needed

Create a new source file that will contain the Jitsi repository

Add the below line to this file /etc/apt/sources.list.d/jitsi-stable.list

Save and exit.

Update the packages

Install Jitsi Meet

The output of the above command will ask you to confirm if you want to continue installation or not as it will consume 134 MB of additional disk space on the server.
Press Y and Enter to continue. 

The installation will prompt you to configure the jitsi-videobridge, enter the hostname, and hit Enter button.

The next screen will prompt you to select one of the below:

  • Generate a new self-signed certificate
  • I want to use my own certificate

Select “Generate a new self-signed certificate” option (if you do not have your own certificates) and hit Enter.

The Jitsi Meet application is now installed using a self-signed TLS certificate. Due to this, you may face browser warnings. 
Therefore, in the below steps, you will get a signed TLS certificate.

To review the installed application at this point, then open the URL “http://YOUR_DOMAIN_NAME” in the browser and select proceed.

e.g. http://jitsi.zehncloud.com

Obtaining Self-Signed Certificates

To make sure that no one can listen to your call and to make the communication more secure as it is over the internet, run below command to add the Certbot repository to the system

The output will require your confirmation, hit Enter to continue

After proceeding, the repository will be added and display as below

Install the Certbot package
  sudo apt install certbot
Run the TLS certificate installation program provided by Jitsi Meet
It will ask you to enter an email address for agreeing to ACME server’s Subscriber Agreement, please enter your email address and hit Enter.
Review status of jitsi-vdeobridge service
  sudo systemctl status jitsi-videobridge
The output of the above command should be like: 
Great! Enjoy using Jitsi Meet.

Summary

     In this article, we have installed the Jitsi Meet web application successfully with the Certbot certificates for secure             communication. You can have online meetings with people and can share audio/video/files/screen to each other.