2024-09-04 16:51:59 -06:00
|
|
|
|
=============
|
|
|
|
|
meet.libre.is
|
|
|
|
|
=============
|
|
|
|
|
|
|
|
|
|
Libre group videoconferencing with Jitsi.
|
|
|
|
|
|
|
|
|
|
`<https://meet.libre.is/>`_
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Jitsi
|
|
|
|
|
=====
|
|
|
|
|
Jitsi main site:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
`<https://jitsi.org/>`_
|
|
|
|
|
|
|
|
|
|
Jitsi docs:
|
|
|
|
|
|
|
|
|
|
`<https://jitsi.github.io/handbook/docs/intro/>`_
|
|
|
|
|
|
|
|
|
|
Self-hosting guide:
|
|
|
|
|
|
|
|
|
|
`<https://jitsi.github.io/handbook/docs/devops-guide/>`_
|
|
|
|
|
|
|
|
|
|
Jitsi meeting site:
|
|
|
|
|
|
|
|
|
|
`<https://meet.jit.si/>`_
|
|
|
|
|
|
|
|
|
|
Community Forum:
|
|
|
|
|
|
|
|
|
|
`<https://community.jitsi.org/>`_
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The various bits that make up Jitsi.
|
|
|
|
|
Not all components are needed.
|
|
|
|
|
|
|
|
|
|
coTURN
|
|
|
|
|
------
|
|
|
|
|
TURN server.
|
|
|
|
|
|
2024-09-04 17:00:55 -06:00
|
|
|
|
Galaxy
|
|
|
|
|
------
|
|
|
|
|
"Galaxy is a web application for Jitsi admins and users to organize their
|
|
|
|
|
Jitsi meetings, meeting schedules and attendees."
|
|
|
|
|
|
|
|
|
|
Third party application.
|
|
|
|
|
|
|
|
|
|
`<https://github.com/emrahcom/galaxy>`_
|
|
|
|
|
|
2024-09-04 16:51:59 -06:00
|
|
|
|
JaaS
|
|
|
|
|
----
|
|
|
|
|
Jitsi as a Service.
|
|
|
|
|
|
|
|
|
|
Jitsi Meet deployed by the 8x8, Inc. company for organizations that don't
|
|
|
|
|
want to self-host.
|
|
|
|
|
|
|
|
|
|
Jibri
|
|
|
|
|
-----
|
|
|
|
|
"Jibri provides services for recording or streaming a Jitsi Meet conference."
|
|
|
|
|
|
|
|
|
|
`<https://github.com/jitsi/jibri>`_
|
|
|
|
|
|
|
|
|
|
Jicofo
|
|
|
|
|
------
|
|
|
|
|
Jicofo.
|
|
|
|
|
|
|
|
|
|
Jidesha
|
|
|
|
|
-------
|
|
|
|
|
Chromium browser extension.
|
|
|
|
|
|
|
|
|
|
Jigasi
|
|
|
|
|
------
|
|
|
|
|
Server application that allows SIP clients to join.
|
|
|
|
|
|
2024-09-07 09:07:19 -06:00
|
|
|
|
Should be used with Debian oldstable (11/bullseye) per:
|
|
|
|
|
|
|
|
|
|
`<https://community.jitsi.org/t/is-openjdk-17-suitable-for-jicofo-and-jitsi-videobridge2-on-debian-11/109891/8>`_
|
|
|
|
|
|
2024-09-04 17:00:55 -06:00
|
|
|
|
Jitsi Admin
|
|
|
|
|
-----------
|
|
|
|
|
"Jitsi Manager, also known as Jitsi Admin, is a powerful tool designed to
|
|
|
|
|
manage Jitsi conferences and servers effectively."
|
|
|
|
|
|
|
|
|
|
`<https://github.com/H2-invent/jitsi-admin>`_
|
|
|
|
|
|
|
|
|
|
Third party application.
|
|
|
|
|
|
2024-09-04 16:51:59 -06:00
|
|
|
|
Jitsi Desktop
|
|
|
|
|
-------------
|
|
|
|
|
End user client software.
|
|
|
|
|
|
2024-09-04 17:00:55 -06:00
|
|
|
|
Downloads:
|
|
|
|
|
|
|
|
|
|
`<https://jitsi.github.io/handbook/docs/releases/>`_
|
|
|
|
|
|
2024-09-04 16:51:59 -06:00
|
|
|
|
Jitsi Meet
|
|
|
|
|
----------
|
|
|
|
|
Conferencing server.
|
|
|
|
|
|
|
|
|
|
Prosody
|
|
|
|
|
-------
|
|
|
|
|
Jabber (XMPP) server written in Lua.
|
|
|
|
|
|
|
|
|
|
`<https://prosody.im/>`_
|
|
|
|
|
|
2024-09-04 17:00:55 -06:00
|
|
|
|
Prosody Plugins
|
|
|
|
|
---------------
|
|
|
|
|
"Collection of community-contributed prosody plugins that can be added to
|
|
|
|
|
self-hosted Jitsi deployments."
|
|
|
|
|
|
|
|
|
|
`<https://github.com/jitsi-contrib/prosody-plugins>`_
|
|
|
|
|
|
2024-09-04 16:51:59 -06:00
|
|
|
|
Videobridge
|
|
|
|
|
-----------
|
|
|
|
|
WebRTC. Handles the video/audio streams. This needs the bandwidth.
|
|
|
|
|
|
2024-09-07 09:07:19 -06:00
|
|
|
|
|
|
|
|
|
Debian
|
|
|
|
|
======
|
|
|
|
|
According to the documentation, Jitsi uses an ancient OpenJDK,
|
|
|
|
|
so Debian oldstable (11/bullseye) is used.
|
|
|
|
|
|
|
|
|
|
But according to one of the main developers, Debian stable (12/bookworm) is ok
|
|
|
|
|
for most components:
|
|
|
|
|
|
|
|
|
|
"Yep, java 17 should be fine with latest stable.
|
|
|
|
|
I’m currently testing jigasi with java17, that is the only one that
|
|
|
|
|
current stable should be used with java11."
|
|
|
|
|
|
|
|
|
|
`<https://community.jitsi.org/t/is-openjdk-17-suitable-for-jicofo-and-jitsi-videobridge2-on-debian-11/109891/8>`_
|
|
|
|
|
|
|
|
|
|
Here Debian stable (12/bookworm will be used).
|
|
|
|
|
Install packages from Debian.
|
|
|
|
|
|
|
|
|
|
Firewall
|
|
|
|
|
========
|
|
|
|
|
The following ports need to be open on the firewall:
|
|
|
|
|
|
|
|
|
|
.. code-block:: cfg
|
|
|
|
|
|
2024-09-07 09:21:48 -06:00
|
|
|
|
80/tcp Web http
|
|
|
|
|
443/tcp Web https
|
|
|
|
|
10000/udp Audio/video stream over UDP
|
|
|
|
|
22/tcp SSH (best use alternate port)
|
|
|
|
|
3478/udp STUN
|
|
|
|
|
5349/tcp Audio/video stream over TCP
|
2024-09-07 09:07:19 -06:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Installation
|
|
|
|
|
============
|
|
|
|
|
Install software from Debian, Jitsi, and Prosody repos.
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
|
|
|
|
sudo apt install apt-transport-https curl wget gnupg2 lua5.2
|
2024-09-07 09:21:48 -06:00
|
|
|
|
sudo apt install nginx-full python3-certbot-nginx
|
2024-09-07 09:07:19 -06:00
|
|
|
|
|
|
|
|
|
If IPv6 is disabled, nginx install will fail. To fix it, after the above
|
|
|
|
|
command runs, edit /etc/nginx/sites-enabled/default and disable this IPv6 line
|
|
|
|
|
by deleting it or commenting it out:
|
|
|
|
|
|
|
|
|
|
.. code-block:: nginx
|
|
|
|
|
|
|
|
|
|
listen [::]:80 default_server;
|
|
|
|
|
|
|
|
|
|
Then reinstall and it will be happy:
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
2024-09-07 09:21:48 -06:00
|
|
|
|
sudo apt install nginx-full python3-certbot-nginx
|
|
|
|
|
|
2024-09-07 09:07:19 -06:00
|
|
|
|
Add Prosody and Jitsi repos:
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
|
|
|
|
sudo curl -sL https://prosody.im/files/prosody-debian-packages.key \
|
|
|
|
|
-o /etc/apt/keyrings/prosody-debian-packages.key
|
|
|
|
|
|
2024-09-07 09:21:48 -06:00
|
|
|
|
sudo curl -sL https://download.jitsi.org/jitsi-key.gpg.key | \
|
|
|
|
|
sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg'
|
|
|
|
|
|
2024-09-07 09:07:19 -06:00
|
|
|
|
echo "deb [signed-by=/etc/apt/keyrings/prosody-debian-packages.key] \
|
|
|
|
|
http://packages.prosody.im/debian $(lsb_release -sc) main" | \
|
|
|
|
|
sudo tee /etc/apt/sources.list.d/prosody-debian-packages.list
|
|
|
|
|
|
|
|
|
|
echo "deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] \
|
|
|
|
|
https://download.jitsi.org stable/" | \
|
|
|
|
|
sudo tee /etc/apt/sources.list.d/jitsi-stable.list
|
|
|
|
|
|
|
|
|
|
sudo apt update
|
|
|
|
|
|
|
|
|
|
|
2024-09-07 09:39:19 -06:00
|
|
|
|
Now finally install the Jitsi package:
|
2024-09-07 09:07:19 -06:00
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
2024-09-07 09:39:19 -06:00
|
|
|
|
sudo apt install jitsi-meet
|
|
|
|
|
|
|
|
|
|
Don't have it set up a phone number with JaaS.
|
|
|
|
|
|
|
|
|
|
Edit /etc/nginx/sites-available/meet.libre.is.conf and remove the
|
|
|
|
|
two IPv6 "::" lines.
|
|
|
|
|
|
|
|
|
|
Remove the old web config:
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
|
|
|
|
rm /etc/nginx/sites-enabled/default
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Restart the server:
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
|
|
|
|
sudo systemctl restart nginx.service
|
|
|
|
|
|
|
|
|
|
Now the website should be available here:
|
|
|
|
|
|
|
|
|
|
`<https://meet.libre.is/>`_
|
|
|
|
|
|
|
|
|
|
If the install munged the certbot certificate, run this again and
|
|
|
|
|
select re-install.
|
|
|
|
|
|
|
|
|
|
.. code-block:: sh
|
|
|
|
|
|
|
|
|
|
certbot -d meet.libre.is
|
2024-09-07 10:10:08 -06:00
|
|
|
|
sudo update-ca-certificates
|
2024-09-07 10:14:53 -06:00
|
|
|
|
sudo systemctl restart nginx.service jicofo.service \
|
|
|
|
|
prosody.service jitsi-videobridge2.service
|
2024-09-07 09:07:19 -06:00
|
|
|
|
|