Jitsi Meet Server Installation

Installation of your own Jitsi Meet server

Jitsi Meet is currently a very popular tool for online video conferences, especially when it comes to security and data protection. With the installation of the open source software, you can install your own Jitsi Meet Server with a little experience. We explain how it works here.

Jitsi usage

Jitsi Meet can be used via a web browser without installation (Jitsi Meet instructions). There are a number of public Jitsi Meet servers that can be used. A separate instance can also be installed for companies and companies as well as organizations, which makes a lot of sense. You can use ready-made software packages for Ubuntu and refer to the official Quick Install Guide.

In the following instructions we have installed Jitsi Meet on a virtual server (V-Server) with 2 CPU cores and 4 GB of RAM. We use Ubuntu Server version 18.04 as the operating system. SSH access and root rights on the server are required for the installation. If a domain already exists, the configuration with an SSL certificate can be generated more easily. We have used an existing subdomain jitsi.joewp.com in this guide. Ports 80 TCP, 443 TCP and 10000 UDP must be opened as incoming ports in the firewall.

Jitsi Meet Installation

Before installation, all packages should be updated to the current status, this is done as follows:


# apt update && apt upgrade

The number of permitted processes must be entered in the /etc/systemd/system.conf file for proper operation. To do this, add the following entries at the end:


DefaultLimitNOFILE=65000
DefaultLimitNPROC=65000
DefaultTasksMax=65000

The Systemd service must be restarted for the entries to take effect:


systemctl daemon-reload

Then the domain or subdomain must be entered as localhost in the file: /etc//hosts This is how the various modules of Jitsi Meet can interact. Just add the domain on the first line.


01: 127.0.0.1 localhost jitsi.example.com

The next step is to add the Jitsi Meet repositories. This will transmit the software directories to Ubuntu.


# echo 'deb https://download.jitsi.org stable/' >> /etc/apt/sources.list.d/jitsi-stable.list
# wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | apt-key add -

Then update the software sources with the following command:
Copy to Clipboard


# apt update

Now you can install the Jitsi Meet software on the server. With the package, all necessary components are automatically installed including the NGINX web server. All configuration files are generated automatically.


# apt -y install jitsi-meet

During the installation you will be asked to enter your domain. You will then be asked for the SSL certificate. Simply select the option: “Generate a new self-signed certificate (You will later get a chance to obtain a Let’s encrypt certificate)” so that you can then install your own Let’s Encrypt.

Install the SSL certificate

After completing the installation, you can install the SSL certificate. You can easily integrate that with Let’s Encrypt. It’s a free SSL certificate. After the call, all necessary software packages are automatically installed. Then all you have to do is enter your email address.


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

Your own Jitsi Meet server is now installed and you can call up the domain to test it.

Configure Jitsi Meet Server

In order to customize your own Jitsi Meet installation for your purposes, you will find various options in the /usr/share/jitsi-meet/directory You can replace the logo on the upper left with your own file. It is located in the images subfolder and is called watermark.png

The link for the logo and the displayed name can be adjusted in the interface_config.js file. For data protection-compliant operation, your links to the data protection declaration and the imprint should be added. You can do this by activating the DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT option. There are a number of other options that are very well commented on in the file and you can change them to suit your needs.


// /usr/share/jitsi-meet/interface_config.js
20: JITSI_WATERMARK_LINK: 'https://example.com,
30: DISPLAY_WELCOME_PAGE_TOOLBAR_ADDITIONAL_CONTENT: true,
31: APP_NAME: 'Jitsi Meet – Example Company',
32: NATIVE_APP_NAME: 'Jitsi Meet – Example Company',

The welcomePageAdditionalContent.html file in the static folder should now be filled with its own content. A template element is already available. It should be preserved. You can insert the following inline code, of course adapted accordingly for your purposes. There is also a link to our manual and the FAQ and to a WebRTC web browser test. Here is the complete code:

JoeWP Jitsi Meet

After restarting Jitsi Meet, the links will then be displayed at the bottom of the entry page.


service nginx restart
service prosody restart
service jicofo restart
service jitsi-videobridge2 restart

Additional settings can be made in the /etc/jitsi/meet/jitsi.joewp.com-config.js file. The file name is generated according to the domain used and is different. There you can make preferences for audio and video. The entries are well documented in this file.

Scaling Jitsi Meet

Depending on which resources are available on the server, the number of participants with activated video at Jitsi Meet can range between 15 and 20. If you want to use Jitsi Meet for a larger group, several servers should be set up. However, a complete installation is not necessary for this, you simply integrate several Jitsi video bridges.

There are different instructions for this:

“Tutorial video: How to Load Balance Jitsi Meet”

and

“New tutorial video: Scaling Jitsi Meet in the Cloud”

who deal with scaling. However, some points are ignored in these instructions.

For more detailed instructions, see this article:

“Jitsi Best Practice and Scaling” by Daniel Neuberger (NETWAYS).

Customize homepage

The start page with the login to the conference room can be adapted according to your own specifications with the corresponding texts in the file: main-de.json


// /usr/share/jitsi-meet/lang/main-de.json
748: "appDescription":
756: "enterRoomTitle":
771: "title":

Optimizing the speed

Jitsi Meet can quickly reach its limits on small servers if they are very busy. Live videos are very computationally intensive. However, you can set some options for Jitsi Meet in the configuration so that a larger number of participants can take part in a conference with the same server resources. We’ll show you the adjusting screws here:

resolution

The video quality with the resolution of the videos is preset to a height of 720 pixels (HD quality) by default. The width of the image results from the webcam used by the user, usually 16: 9 or 4: 3. As a first step, you can reduce the local quality of your own webcam. To do this, the value resolution in line 109 of the file /etc/jitsi/meet/meet.example.com-config.js (the file name is generated depending on the domain used) must be commented and changed. That works very well because your own picture is not that important. You can safely set the value to 240 pixels, for example:


// /etc/jitsi/meet/meet.example.com-config.js
109: resolution: 240,

Video quality

In addition, the video quality to be transmitted can be adjusted in Jitsi Meet. You can do that in the aforementioned file as well. Simply remove the comment characters “//” from lines 116 to 125. Then adjust the following entries to use a lower video quality.


// /etc/jitsi/meet/meet.example.com-config.js
120: ideal: 360,
121: max: 360,
122: min: 180
Full HD

In contrast, if you have enough resources available, you can also use Jitsi Meet in Full HD and increase the values to 1080 pixels.

Number of videos

Video services like Microsoft Teams or Zoom use their own method to save bandwidth. Only the video of the current speaker is shown in each case. These measures reduce the number of simultaneously running videos to one video stream. If you want to do it this way too, you can set your configuration at Jitsi Meet accordingly. To do this, you also set in the file /etc/jitsi/meet/meet.example.com-config.js in line 215. Here the entry channelLastN is to be set to 1


// /etc/jitsi/meet/meet.example.com-config.js
215: channelLastN: 1,

Watch Jitsi at JoeWP Meet

You can view and test all functions of Jitsi live on our instance (V-Server).

Here is the link to your video conference:

Jitsi Meet article series

This article is part of the article series “Jitsi Meet Videoconferencing”. You can find more interesting articles about the open source system Jitsi for video, chat and telephone conferences here. The article series covers the following topics:

https://joewp.com/jitsi-videokonferenzen-und-online-meetings/

https://joewp.com/jitsi-meet-datenschutz/

https://joewp.com/jitsi-meet-server-installation/

JoeWP WordPress Agency - Request

Do you want us to set up Jitsi on your own server?

Do you want to start right now? Discuss your project with us!