So installierst du Jitsi Meet Video Conferencing Server auf Ubuntu 22.04
Jitsi ist ein kostenloses und quelloffenes Chat-, Telefonie- und Videokonferenztool. Es ist eine sehr gute Alternative zu anderen Tools wie Skype, Zoom und Microsoft Teams. Du kannst Jitsi nutzen, ohne dich zu registrieren oder eine Software zu installieren. Du kannst direkt über einen Webbrowser darauf zugreifen. Mit Jitsi kannst du kostenlos telefonieren, chatten, Dateien verschicken oder den Bildschirm über das SIP- oder XMPP-Protokoll teilen. Wenn du auf der Suche nach einem Open-Source-Tool für Videokonferenzen und Anrufe bist, ist Jitsi die beste Wahl für dich.
In diesem Beitrag zeigen wir dir, wie du Jitsi Meet auf einem Ubuntu 22.04 Server installierst.
Voraussetzungen
- Ein Server mit Ubuntu 22.04 und mindestens 4 GB RAM.
- Ein gültiger Domainname, der auf die IP deines Servers zeigt.
- Ein Root-Passwort ist auf dem Server eingerichtet.
Erste Schritte
Bevor du beginnst, musst du alle Softwarepakete auf die neueste Version aktualisieren. Du kannst sie aktualisieren, indem du den folgenden Befehl ausführst:
apt-get update -y
Sobald alle Pakete aktualisiert sind, musst du auch einige erforderliche Abhängigkeiten auf deinem Server installieren. Du kannst alle Pakete mit folgendem Befehl installieren:
apt-get install wget curl gnupg2 apt-transport-https -y
Sobald alle Pakete installiert sind, kannst du mit dem nächsten Schritt fortfahren.
Jitsi Meet auf Ubuntu 22.04 installieren
Standardmäßig ist die Jitsi Meet Software nicht im Ubuntu Standard-Repository enthalten. Daher musst du das offizielle Repository zu APT hinzufügen.
Zuerst fügst du das Jitsi-Repository mit dem folgenden Befehl zu APT hinzu:
echo 'deb https://download.jitsi.org stable/' >> /etc/apt/sources.list.d/jitsi-stable.list
Als Nächstes lädst du den Jitsi GPG-Schlüssel herunter und fügst ihn mit dem folgenden Befehl hinzu:
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | apt-key add -
Als Nächstes aktualisierst du das Repository und installierst das Jitsi Meet mit dem folgenden Befehl:
apt-get update -y apt-get install jitsi-meet -y
Während der Installation wirst du aufgefordert, den vollqualifizierten Hostnamen deines Systems anzugeben (siehe unten):
Gib deinen System-Hostnamen an und klicke auf die Schaltfläche Ok. Du wirst aufgefordert, ein SSL-Zertifikat zu installieren:
Wähle „Ein neues selbstsigniertes Zertifikat generieren“ und drücke auf die Schaltfläche Ok, um die Installation abzuschließen.
Ein Let’s Encrypt-Zertifikat generieren
Für die Produktionsumgebung wird das selbstsignierte SSL-Zertifikat nicht empfohlen. Daher musst du Let’s Encrypt SSL für Jitsi installieren.
Du kannst Let’s Encrypt SSL mit dem folgenden Befehl installieren:
/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
Du wirst aufgefordert, deine E-Mail-Adresse einzugeben, um Let’s Encrypt SSL zu installieren:
------------------------------------------------------------------------- This script will: - Need a working DNS record pointing to this machine(for domain jitsi.example.com) - Download certbot-auto from https://dl.eff.org to /usr/local/sbin - Install additional dependencies in order to request Let’s Encrypt certificate - If running with jetty serving web content, will stop Jitsi Videobridge - Configure and reload nginx or apache2, whichever is used - Configure the coturn server to use Let's Encrypt certificate and add required deploy hooks - Add command in weekly cron job to renew certificates regularly You need to agree to the ACME server's Subscriber Agreement (https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf) by providing an email address for important account notifications Enter your email and press [ENTER]: hitjethva@gmail.com Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator webroot, Installer None Obtaining a new certificate Performing the following challenges: http-01 challenge for jitsi.example.com Using the webroot path /usr/share/jitsi-meet for all unmatched domains. Waiting for verification... Cleaning up challenges Running deploy-hook command: /etc/letsencrypt/renewal-hooks/deploy/0000-coturn-certbot-deploy.sh Output from deploy-hook command 0000-coturn-certbot-deploy.sh: Configuring turnserver IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/jitsi.example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/jitsi.example.com/privkey.pem Your cert will expire on 2022-09-27. To obtain a new or tweaked version of this certificate in the future, simply run certbot again. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Jitsi Meet konfigurieren
Als Nächstes musst du die Konfigurationsdatei von Jitsi meed bearbeiten und so konfigurieren, dass nur registrierte Nutzer Konferenzräume erstellen können.
nano /etc/prosody/conf.avail/jitsi.example.com.cfg.lua
Ändere die folgenden Zeilen:
authentication = "anonymous" authentication = "internal_plain" VirtualHost "guest.jitsi.example.com" authentication = "anonymous" c2s_require_encryption = false
Speichere und schließe die Datei und öffne dann eine andere Konfigurationsdatei:
nano /etc/jitsi/meet/jitsi.example.com-config.js
Füge die folgende Zeile hinzu:
anonymousdomain: 'guest.jitsi.example.com',
Als Nächstes erstellst du eine SIP-Konfigurationsdatei mit folgendem Befehl:
nano /etc/jitsi/jicofo/sip-communicator.properties
Füge die folgende Zeile hinzu:
org.jitsi.jicofo.auth.URL=XMPP:jitsi.example.com
Speichere und schließe die Datei und erstelle einen Benutzer für Jitsi mit folgendem Befehl:
prosodyctl register user jitsi.example.com password
Neustart des Jitsi-Dienstes
Als nächstes musst du alle Jitsi-Dienste neu starten, um die Konfigurationsänderungen zu übernehmen. Das kannst du mit dem folgenden Befehl tun:
systemctl restart prosody.service jicofo.service jitsi-videobridge2.service
Überprüfe nun den Status des Prosody-Dienstes mit folgendem Befehl:
systemctl status prosody.service
Du solltest die folgende Ausgabe sehen:
? prosody.service - Prosody XMPP Server Loaded: loaded (/lib/systemd/system/prosody.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-06-25 16:15:58 UTC; 5s ago Docs: https://prosody.im/doc Main PID: 62561 (lua5.2) Tasks: 1 (limit: 4579) Memory: 9.3M CPU: 475ms CGroup: /system.slice/prosody.service ??62561 lua5.2 /usr/bin/prosody -F Jun 25 16:15:58 ubuntu2204 systemd[1]: Started Prosody XMPP Server.
Um den Status des Jicofo-Dienstes zu überprüfen, führe den folgenden Befehl aus:
systemctl status jicofo.service
Du solltest die folgende Ausgabe sehen:
? jicofo.service - LSB: Jitsi conference Focus Loaded: loaded (/etc/init.d/jicofo; generated) Active: active (running) since Sat 2022-06-25 16:15:58 UTC; 22s ago Docs: man:systemd-sysv-generator(8) Process: 62534 ExecStart=/etc/init.d/jicofo start (code=exited, status=0/SUCCESS) Tasks: 35 (limit: 4579) Memory: 177.4M CPU: 8.700s CGroup: /system.slice/jicofo.service ??62540 java -Xmx3072m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Djdk.tls.ephemeralDHKeySize=2048 -Dconfig.file=/et> Jun 25 16:15:58 ubuntu2204 systemd[1]: Starting LSB: Jitsi conference Focus... Jun 25 16:15:58 ubuntu2204 jicofo[62534]: Starting jicofo: jicofo started. Jun 25 16:15:58 ubuntu2204 systemd[1]: Started LSB: Jitsi conference Focus.
Um den Dienst Jitsi videobridge2 zu überprüfen, führe folgenden Befehl aus:
systemctl status jitsi-videobridge2.service
Du solltest die folgende Ausgabe sehen:
? jitsi-videobridge2.service - Jitsi Videobridge Loaded: loaded (/lib/systemd/system/jitsi-videobridge2.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2022-06-25 16:15:58 UTC; 35s ago Process: 62564 ExecStartPost=/bin/bash -c echo $MAINPID > /var/run/jitsi-videobridge/jitsi-videobridge.pid (code=exited, status=0/SUCCESS) Main PID: 62563 (java) Tasks: 48 (limit: 65000) Memory: 171.4M CPU: 9.877s CGroup: /system.slice/jitsi-videobridge2.service ??62563 java -Xmx3072m -XX:+UseG1GC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Djdk.tls.ephemeralDHKeySize=2048 -Dco> Jun 25 16:15:58 ubuntu2204 systemd[1]: Starting Jitsi Videobridge... Jun 25 16:15:58 ubuntu2204 systemd[1]: Started Jitsi Videobridge.
UFW-Firewall konfigurieren
Als Nächstes musst du alle Jitsi-Ports über die Firewall zulassen, damit du vom entfernten Rechner aus darauf zugreifen kannst. Du kannst sie über UFW wie unten gezeigt zulassen:
ufw allow 80/tcp ufw allow 443/tcp ufw allow 4443/tcp ufw allow 10000/udp ufw allow 22/tcp ufw enable
Du kannst die Firewall-Regeln auch mit dem folgenden Befehl überprüfen:
ufw status
Sobald deine UFW-Firewall konfiguriert ist, kannst du mit dem nächsten Schritt fortfahren.
Zugriff auf Jitsi Meet
Jetzt ist Jitsi Meet auf deinem Ubuntu 22.04 Server installiert und konfiguriert. Du kannst jetzt über die URL https://jitsi.example.com auf die Weboberfläche zugreifen . Du solltest die Seite zur Erstellung eines Jitsi Meet-Raums sehen:
Du kannst nun deinen Raumnamen eingeben und Jitsi benutzen.
Fazit
Glückwunsch! Du hast Jitsi Meet mit Let’s Encrypt SSL erfolgreich auf dem Ubuntu 22.04 Server installiert. Du kannst nun über einen Webbrowser oder eine mobile Anwendung auf Jitsi zugreifen und mit anderen Nutzern telefonieren. Wenn du noch Fragen hast, kannst du dich gerne an mich wenden.