Overview:
Jitsi Meet is an encrypted and open source video conferencing platform. With minimal setup out of the box, it can be deployed in minutes. It offers application free video conferencing through WebRTC, and works on most popular/modern web browsers. For being such a small project, the developers of Jitsi have built in tons of features, making Jitsi one of the easiest videoconferencing platforms I have ever used.
Installing Jitsi Meet:
For this example I am using a cloud hosted server with Ubuntu 18.04 LTS installed on it.
First step is to configure the domain name of the server. Change jitsi.yourdomain to your desired domain information (e.g. meet.randomtech.io)
sudo hostnamectl set-hostname jitsi.yourdomain
You will want to also set the local hostname to the loopback IP address. You can do so by editing the /etc/hosts file. In this example I am using the nano text editor. Change jitsi.yourdomain to your desired domain information (e.g. meet.randomtech.io)
sudo nano /etc/hosts
127.0.0.1 jitsi.yourdomain
When setting up a web facing server, you should always enable a firewall. Even when setting up a separate network firewall in front of the server, it is good practice to limit all connections.
To do this we will be configuring UFW. If you are SSH’d into the machine, you should also open that port too (default 22/tcp). The minimum ports Jitsi Meet requires are:
- 80/tcp – Used for TLS certificate requests later, will redirect to 443 (https)
- 443/tcp – Used for the Jitsi Meet homepage
- 10000/udp – Used to transmit and receive video/audio traffic.
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 10000/udp
You can check that they were added with the following command:
ufw status
We can now safely begin the process of installing Jitsi Meet.
You will first need to add the Jitsi repository and then install the Jitsi Meet package. We will be running the latest stable package in this demo. The steps below will download and add the GPG key and add then you will have to add the Jitsi repository to your sources list.
wget https://download.jitsi.org/jitsi-key.gpg.key
sudo apt-key add jitsi-key.gpg.key
sudo nano /etc/apt/sources.list.d/jitsi-stable.list
deb https://download.jitsi.org stable/
Exit and save the editor, perform a system update and install the Jitsi-Meet package.
sudo apt update
sudo apt install jitsi-meet
In the Jitsi Meet setup, you should be prompted to enter the hostname of the server. Enter what you set the hostname to [jitsi.yourdomain] and click enter. If you plan to use CertBot to get your SSL certificate, select the “Generate new self-signed certificate” option.
CertBot SSL Certificate:
Use CertBot to install an TLS certificate in your Jitsi Meet server. TLS certificates will enable your HTTPS URLs on your website.
Although Jitsi supplies the script to get your TLS certificate, you will need to install CertBot first.
sudo add-apt-repository ppa:certbot/certbot
sudo apt install certbot
Now that certbot is installed you will want to run the Jitsi Meet supplied script:
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
When you run the script, you will be prompted for your email address. This used to notify you about security matters and renewal notifications for your certificate.
You may also choose to close port 80/tcp on the firewall as it will no longer be used:
sudo ufw delete allow 80/tcp