jiti-meet/doc/quick-install.md

7.1 KiB

Jitsi Meet quick install

This guide helps you host your own Jitsi server. If you want to have a video conference without setting up any infrastructure, use https://meet.jit.si instead.

Requirements

The installation steps documented here are intended for Debian-based GNU/Linux systems.

Systems running the following versions are supported by this guide:

  1. Debian 8 (Jessie) or later
  2. Ubuntu 14.04 or later

To check the operating system available, you can run cat /etc/issue at the command-line.

Note: All commands require superuser privileges. If you are logged in as a regular user, you may need to prepend sudo to each of the commands.

Platform-specific notes

On Debian Wheezy, libc needs to be updated.

On Ubuntu systems, some Jitsi dependencies require installation from Ubuntu's universe package repository. To ensure this is enabled, run apt-add-repository universe at the command-line.

Basic Jitsi Meet install

Add the domain name to /etc/hosts

Add the the domain used to host the Jitsi Meet instance in the /etc/hosts file:

127.0.0.1 meet.example.org

Add the repository

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 -

(optional) Generate a Let's Encrypt certificate

A certificate is required to enable secure communication between conference participants and your service.

Most conference participants will only be able to join your service if it uses a certificate generated by a trusted certificate authority.

Jitsi Meet will offer to generate a self-signed certificate for you during installation. You can accept this offer if you do not have an existing certificate, but some participants may experience difficulty joining your service.

Optionally you can generate a trusted certificate for free using the non-profit Let's Encrypt service using the following command:

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

Install Jitsi Meet

Note: Something to consider before installation is how you're planning to serve Jitsi Meet. The installer will check if Nginx or Apache is present (with this order) and configure a virtualhost within the web server it finds to serve Jitsi Meet. If none of the above is found it then configures itself to be served via jetty. So if for example you are planning on deploying Jitsi Meet with a web server, you have to make sure to install the server before installing jitsi-meet.

# Ensures that HTTPS transport is enabled for apt repositories
apt-get install apt-transport-https

# Retrieve the latest package versions across all repositories
apt-get update

# Perform jitsi-meet installation
apt-get -y install jitsi-meet

During the installation, you will be asked to enter the hostname of the Jitsi Meet instance.

If the system has a fully-qualified DNS name (such as https://jitsi.example.org), enter it when prompted.

Alternatively, you can enter the IP address of the machine (if it is static or doesn't change).

You'll need to share this hostname or IP address with conference participants who will use your service.

Confirm that your installation is working

Launch a web browser (Chrome, Chromium or latest Opera) and enter the hostname or IP address from the previous step into the address bar.

If you are using a self-signed certificate, you may need to ask your browser to ignore certificate warnings.

You should see a web page prompting you to create a new meeting. Make sure that you can successfully create a meeting and that other participants are able to join the session.

If this all worked, then congratulations! You have an operational Jitsi conference service.

Advanced configuration

If installation is on a machine behind NAT further configuration of jitsi-videobridge is needed in order for it to be accessible. Provided that all required ports are routed (forwarded) to the machine that it runs on. By default these ports are (TCP/443 or TCP/4443 and UDP 10000). The following extra lines need to be added the file /etc/jitsi/videobridge/sip-communicator.properties:

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

See the documentation of ice4j for details.

Default deployments on systems using systemd will have low default values for maximum processes and open files. If the used bridge will expect higher number of participants the default values need to be adjusted (the default values are good for less than 100 participants). To update the values edit /etc/systemd/system.conf and make sure you have the following values:

DefaultLimitNOFILE=65000
DefaultLimitNPROC=65000
DefaultTasksMax=65000

To load the values and check them look here for details.

By default, anyone who has access to your jitsi instance will be able to start a conference: if your server is open to the world, anyone can have a chat with anyone else. If you want to limit the ability to start a conference to registered users, set up a "secure domain". Follow the instructions at https://github.com/jitsi/jicofo#secure-domain.

Adding sip-gateway to Jitsi Meet

Install Jigasi

apt-get -y install jigasi

or

wget https://download.jitsi.org/unstable/jigasi_1.0-107_amd64.deb
dpkg -i jigasi_1.0-107_amd64.deb

During the installation, you will be asked to enter your SIP account and password. This account will be used to invite the other SIP participants.

Reload Jitsi Meet

Launch again a browser with the Jitsi Meet URL and you'll see a telephone icon on the right end of the toolbar. Use it to invite SIP accounts to join the current conference.

Enjoy!

Uninstall

apt-get purge jigasi jitsi-meet jitsi-meet-web-config jitsi-meet-prosody jitsi-meet-turnserver jitsi-meet-web jicofo jitsi-videobridge

Sometimes the following packages will fail to uninstall properly:

  • jigasi
  • jitsi-videobridge

When this happens, just run the uninstall command a second time and it should be ok.

The reason for failure is that sometimes, the uninstall script is faster than the process that stops the daemons. The second run of the uninstall command fixes this, as by then the jigasi or jvb daemons are already stopped.

Systemd details

To reload the systemd changes on a running system execute systemctl daemon-reload and service jitsi-videobridge restart. To check the tasks part execute service jitsi-videobridge status and you should see Tasks: XX (limit: 65000). To check the files and process part execute cat /proc/`cat /var/run/jitsi-videobridge/jitsi-videobridge.pid`/limits and you should see:

Max processes             65000                65000                processes
Max open files            65000                65000                files