Jitsi Meet is a robust, Free to Use, Open-Source Video Conferencing Service which provides a great quality, secure and scalable video conferences.
Are you trying to install Jitsi Meet on your Ubuntu Server? This guide will show you exactly how.
Here at Ibmi Media, as part of our Server Management Services, we regularly help our customers to perform Installation tasks on their Servers.
Today, we will look into how to install Jitsi Meet on Ubuntu.
More information about Jitsi Meet?
It is a better alternative to zoom and runs in your browser after installation on your own server.
This video-conferencing and instant messaging application works with web platform, Windows, Linux, macOS, iOS, and Android.
With Jitsi Meet, collaboration is done efficiently and securely because it is fully encrypted.
Steps to follow to install Jitsi Meet on Ubuntu 20.04
To install Jitsi Meet, log into your Server as a root user and then update your system packages with the command below;
sudo apt update
Next, follow the steps below to install complete the installation of Jitsi Meet.
1. Setting up the hostname of your Server
To begin, ensure that your domain is a fully qualified domain name (FQDN) which resolves to your server IP address. Lets say the domain is "jitsi.your_domain".
You can set the hostname by modifying the "/etc/hostname" file and to change it automatically, run the command below;
sudo hostnamectl set-hostname jitsi.your_domain
Next, run the command below to test the hostname to see if it has changed successfully;
Now, edit the "/etc/hosts" file, and map your server ip address to the jitsi.your_domain as shown below;
sudo nano /etc/hosts
Then in this file, add the line as shown below;
2. Firewall configuration for Jitsi Meet.
Now, enable the UFW firewall. In this step, you need to open some ports which is required for Jitsi Meet to function correctly.
We need to open ports such as 80/tcp, 443/tcp, 4443/tcp 10000/udp.
Now run the commands as shown below;
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 4443/tcp
sudo ufw allow 10000/udp
sudo ufw allow ssh
To enable the firewall, run the command below
sudo ufw enable
You will be prompted whether or not to proceed, choose yes.
To see the rules you just implemented, run the command below;
sudo ufw status
3. Jitsi Meet Installation
Start by downloading Jitsi GPG key which can be downloaded with the system's wget utility. To do this, run the command below;
Then, add the GPG key to the apt's keyring with the apt-key utility. To do this, run the command below;
sudo apt-key add jitsi-key.gpg.key
You can remove the GPG key file from the server since it is no longer needed. Run the command below;
Now add Jitsi repository to your server by creating a new source file and then add Jitsi repository as shown below;
sudo nano /etc/apt/sources.list.d/jitsi-stable.list
Add the following line as advised;
deb https://download.jitsi.org stable/
After adding this line to the file, save it and exit.
Now update the system to effect changes by running the command below;
sudo apt update
You can install Jitsi Meet by running the command below;
sudo apt install jitsi-meet
While installing, you will be prompted to enter the domain name which Jitsi meet instance will be install on.
You will also be asked to create and use a self-signed TLS certificate or use an existing one if available.
Now Jitsi meet will be installed.
4. How to obtain a free Signed TLS Certificate from Lets Encrypt?
Jitsi Meet comes with a script which helps to automatically download and configure a TLS Certificate for your domain.
To run the installation script, execute the command below;
You will be prompted to enter an email address as per Let's encrypt requirement to enable them send you a reminder when the certificate is about to expire.
5. Securing Conference creation.
Start by modifying the file "/etc/prosody/conf.avail/jitsi.your_domain.cfg.lua" with the command below;
sudo nano /etc/prosody/conf.avail/your_domain.cfg.lua
Look out for the line shown below;
authentication = "anonymous"
Change it to look like this;
authentication = "internal_plain"
Now, you are telling Jitsi Meet to force username and password authentication before allowing conference room creation by a new visitor to the Jisti site.
Furthermore, in the same file, add the following lines;
authentication = "anonymous"
c2s_require_encryption = false
This will allow anonymous users to join conference rooms which was created by an authenticated user or administrator.
Next, open another file "/etc/jitsi/meet/jitsi.your_domain-config.js" by running the command below;
sudo nano /etc/jitsi/meet/jitsi.your_domain-config.js
Look our for the line below and edit;
// anonymousdomain: 'guest.jitsi.your_domain',
Next, open "/etc/jitsi/jicofo/sip-communicator.properties" with the command below;
sudo nano /etc/jitsi/jicofo/sip-communicator.properties
Then add the following line to this file and save;
This points one of the Jitsi Meet processes to the local server that performs the user authentication which is now required.
To create a new user for Jitsi Meet, run the command below;
sudo prosodyctl register user your_domain password
This user will be able to create a conference room only.
Finally, restart Jitsi Meet service to effect changes with the following commands;
sudo systemctl restart prosody.service
sudo systemctl restart jicofo.service
sudo systemctl restart jitsi-videobridge2.service
Now Jitsi Meet Server is not configured securely.