How to Install Jitsi Meet on Ubuntu Linux

This article describes steps one can take to install Jitsi Meet video conferencing software on Ubuntu Linux.

Jitsi Meet is a completely free, secure, open-source video conferencing platform that one can install and use in their own environment.

For businesses and individuals looking for a completely free video conferencing service, Jitsi Meet might just be a great alternative. It’s encrypted, open source, and you don’t need an account.

You can access Jitsi Meet directly via a web browser and make free calls, chat, send files or share your screen using the SIP or XMPP protocol.

Below is how to install Jitsi Meet on Ubuntu Linux.

How to install Jitsi Meet video conferencing software on Ubuntu Linux

As described above, Jitsi Meet is a completely free, secure open-source secure video conferencing platform that one can install and use in their own environment.

Below is how to install and use it in Ubuntu Linux.

Install prerequisite

Before installing Jitsi Meet, make sure to install these packages. They should help you install and run Jitsi Meet.

sudo apt update
sudo apt install wget curl gnupg2 apt-transport-https

Now that the packages are installed above, continue below to install Jitsi Meet.

Add Jitsi Meet repository and install

Out of the box, Jitsi Meet packages are not available in Ubuntu default repositories. You can’t simply run the apt get command to install.

If you want to install Jitsi Meet, you must add its official repository, and the steps below show you how.

Add Jitsi Meet repository GPG key by running the commands below:

wget -qO -  | sudo apt-key add -

Next, add Jitsi Meet repository by running the commands below:

sudo bash -c "echo 'deb  stable/' >> /etc/apt/sources.list.d/jitsi-stable.list"

After that, run the commands below to update Ubuntu package index and install Jitsi Meet.

sudo apt update
sudo apt install jitsi-meet

During the installation, you’ll be prompted to specify the system domain name or hostname.

┌─────────────────────┤ Configuring jitsi-videobridge2 ├─────────────────────┐

│ The value for the hostname that is set in Jitsi Videobridge installation.  │ 
│                                                                            │ 
│ The hostname of the current installation:                                  │ 
│ jitsi.example.com 
│                                   <Ok>                                     │ 
└────────────────────────────────────────────────────────────┘

You can also choose to generate a self-signed certificate if you are going to be testing it. However, in a production environment, you may will probably want to install a publicly trusted certificate.

──────────────────────────────┤ Configuring jitsi-meet-prosody ├─────────────────────────────┐
│ Jitsi Meet requires an SSL certificate. This installer can generate one automatically for  │ 
│ your using "Let’s Encrypt". This is the recommended and simplest option for most           │ 
│ installations.                                                                             │ 
│ In the event you need to use a certificate of your own, you can configure its location     │
│ which defaults to /etc/ssl/--domain.name--.key for the key and /etc/ssl/--domain.name--.crt│ 
│ for the certificate.                                                                       │ 
│ If you are a developer and are only looking for a quick way to test basic Jitsi Meet       │ 
│ functionality then this installer can also generate a self-signed certificate.             │ 
│                                            <Ok>                                            │
└────────────────────────────────────────────────────────────────────────────────────────────┘

For dev environment, choose a self-signed certificate. Production environment, select Let’s Encrypt. However, if you are choosing Let’s Encrypt, make sure the domain is accessible.

───────┤ Configuring jitsi-meet-prosody ├────────┐
│ SSL certificate                                │ 
│                                                │ 
│     Let's Encrypt certificates                 │ 
│     I want to use my own certificate           │ 
│     Generate a new self-signed certificate     │ 
│                     <Ok>                       │ 
└────────────────────────────────────────────────┘

In a production environment, you can run the commands below to generate a free Let’s Encrypt certificate.

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

Configure Jitsi Meet

Now that you have install Jitsi Meet, the default configuration for your site will be located at the path below with the name of the domain or hostname selected above:

sudo nano /etc/prosody/conf.avail/jitsi.example.com.cfg.lua

In the file, you can configure additional settings to make all meeting private or change the authentication line to allow anonymous users.

-- internal muc component

Component "internal.auth.jitsi.example.com" "muc"
    storage = "memory"
    modules_enabled = {
        "ping";
    }
    admins = { "[email protected]", "[email protected]" }
    muc_room_locking = false
    muc_room_default_public_jids = true
VirtualHost "auth.jitsi.example.com"
    ssl = {
        key = "/etc/prosody/certs/auth.jitsi.example.com.key";
        certificate = "/etc/prosody/certs/auth.jitsi.example.com.crt";
        "limits_exception";
    authentication = "internal_hashed"

Another configuration file that you might edit is the one below:

sudo nano /etc/jitsi/meet/jitsi.example.com-config.js

If you have Ubuntu Linux firewall enabled, you will want to run the commands below to allow Jitsi Meet to communicate with external clients.

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 4443/tcp
sudo ufw allow 10000/udp
sudo ufw allow 22/tcp
sudo ufw enable

Finally, type the domain created above to access Jitsi Meet portal.


By default, anyone with the URL will be able to create and schedule meetings. You can change that in the configuration files above.

Also, if your system is behind a NAT or firewall, you will need to allow traffic to traverse the firewall. Run the commands below to open the configuration file.

sudo nano /etc/jitsi/videobridge/sip-communicator.properties

Add the lines into the file and save.

org.ice4j.ice.harvest.NAT_HARVESTER_LOCAL_ADDRESS=<Local.IP.Address>
org.ice4j.ice.harvest.NAT_HARVESTER_PUBLIC_ADDRESS=<Public.IP.Address>

That should do it!

For more about setting up Jitsi Meet, visit its community page at the link below:

Conclusion:

This post showed you how to install and use Jitsi Meet video conferencing platform in Ubuntu Linux. If you find any error above or have something to add, please use the comment form below.