Jitsi Meet Selbsthosting-Leitfaden

quiet Version unspecified Last review: 2020

Diese Dokumentation wurde seit Längerem nicht aktualisiert. Einige Informationen sind möglicherweise nicht mehr gültig. Die aktuellste Version der Originaldokumentation finden Sie unter https://jitsi.github.io/handbook/docs/devops-guide/

Die Jitsi-Videokonferenzplattform ermöglicht Nutzern unter anderem die Erstellung virtueller Meetings, Konferenzen und Kollaborationssitzungen. Die Jitsi-Videokonferenzplattform bietet:

  • Jitsi Meet (jitsi-meet): eine webbasierte Client-Anwendung, die von Konferenzteilnehmern verwendet wird

  • Jitsi Videobridge (jitsi-videobridge): eine serverseitige Komponente der Jitsi-Plattform. Sie dient als zentrale Plattform für Videokonferenzen, über die Teilnehmer per individuell generierter Konferenz-URL beitreten können. Jitsi Videobridge übernimmt die Aushandlung der Audio- und Videostreams zwischen den Konferenzteilnehmern und stellt die notwendige Infrastruktur für ein reibungsloses Erlebnis bereit.

  • Webserver-Konfigurationen (jitsi-meet-nginx) und (jitsi-meet-apache): Komponenten, die dabei helfen, den Jitsi Meet Webclient für die Bearbeitung eingehender HTTPS-Anfragen bereitzustellen.

  • Konfiguration für Prosody (jitsi-meet-prosody): Eine serverseitige Komponente zur Benutzerauthentifizierung und -verwaltung sowie zur Konferenzraumverwaltung. Gewährleistet sichere Kommunikation innerhalb der Jitsi-Videokonferenzplattform.

  • Jicofo (jicofo): eine serverseitige Komponente für Konferenzmanagement, Teilnehmersteuerung und Medienrouting.

Jitsi installieren

Die Installationsanleitung ähnelt der offiziellen Debian/Ubuntu-Anleitung. Wesentliche Unterschiede sind:

  • Etwas andere Dateispeicherorte

  • Die Komponenten Jicofo und Jitsi Videobridge protokollieren in syslog anstatt in eigenen Protokolldateien.

  • Die Komponente Jicofo wird von einem Dienst und nicht von einem init-Skript ausgeführt.

Voraussetzungen
  • Kleiner Server, der über das Internet erreichbar ist

  • Domainname und ein SSL-Zertifikat für diese Domain

Vorgehensweise
  1. Diee jitsi-Paketquelle aktivieren:

    $ sudo dnf copr enable lcts/jitsi
  2. Das Metapaket jitsi installieren, um einen Jitsi-Server konfigurieren zu können:

    $ sudo dnf install jitsi

    Alternativ können Sie auch andere Pakete aus der jitsi-Paketquelle installieren:

    • jitsi-meet – die Jitsi Meet-Web-App

    • jitsi-meet-nginx – Jitsi-Konfiguration für NGinx

    • jitsi-meet-apache – Jitsi-Konfiguration für Apache

    • jitsi-meet-prosody – Jitsi-Konfiguration für Prosody

    • jitsi-videobridge – die Jitsi Videobridge-Komponente

    • jicofo – die Jitsi Conference Focus-Komponente

Weitere Ressourcen
  • Nach der Installation müssen Sie alle Pakete konfigurieren, bevor Sie sie verwenden können. Weitere Informationen finden Sie in der Datei /usr/share/doc/<Paket>/README-fedora.md.

  • Probleme mit Paketen können Sie in der jitsi-rpm-Warteschlange melden.

    Sollten Sie Probleme mit der Software haben, wenden Sie sich bitte an die jeweiligen Upstream-Entwickler.

Jitsi konfigurieren

Nach der Installation sind einige zusätzliche Konfigurationsschritte erforderlich. Dabei werden verschiedene Platzhaltervariablen durch Ihre Werte ersetzt, um sicherzustellen, dass Jitsi in Ihrer spezifischen Umgebung korrekt konfiguriert ist. Die Platzhalter sind durch Unterstriche gekennzeichnet, z. B. __Variablenname__.

Ersetzen Sie in allen Dateien __jitsiFQDN__ durch den vollqualifizierten Domänennamen Ihrer Instanz und __<component>Secret__ durch ein sicheres, zufällig generiertes Passwort. Sie benötigen drei Geheimnisse:

  • __focusSecret__

  • __focusUserSecret__

  • __jvbUserSecret__

Sie müssen sich die Geheimnisse nicht merken. Sie werden nur von verschiedenen Jitsi-Komponenten zur Kommunikation untereinander verwendet.

Jitsi Prosody konfigurieren

Die Prosody-Konfiguration für Jitsi finden Sie in der Datei /etc/prosody/conf.d/jitsi-meet.cfg.lua.

Vorgehensweise
  1. Das SSL/TLS-Zertifikat für die Jitsi-Domain erzeugen:

    $ prosodyctl cert generate __jitsiFQDN__

    Sie müssen __jitsiFQDN__ durch den tatsächlichen Domänennamen Ihrer Jitsi-Installation ersetzen. Das generierte Zertifikat sichert die Jitsi Meet-Weboberfläche und ermöglicht verschlüsselte Kommunikation.

  2. Erstellen Sie das SSL/TLS-Zertifikat für die Authentifizierungs-Subdomain:

    $ prosodyctl cert generate auth.__jitsiFQDN__

    Die Subdomain auth wird typischerweise für Authentifizierungszwecke in Jitsi Meet verwendet. Ersetzen Sie __jitsiFQDN__ durch Ihren Jitsi-Domänennamen, um das Zertifikat für die Subdomain auth zu erstellen.

  3. Fügen Sie das Jitsi-Domainzertifikat als Vertrauensanker hinzu, um sicherzustellen, dass es vom System als gültiges Zertifikat erkannt wird:

    $ trust anchor /var/lib/prosody/__jitsiFQDN__

    Die Zertifikatsdatei befindet sich üblicherweise unter /var/lib/prosody/__jitsiFQDN__. Daher müssen Sie __jitsiFQDN__ durch den tatsächlichen Domänennamen ersetzen, um den korrekten Dateipfad anzugeben.

  4. Fügen Sie das Authentifizierungs-Subdomain-Zertifikat als Vertrauensanker hinzu:

    $ trust anchor /var/lib/prosody/auth.__jitsiFQDN__

    Die Zertifikatsdatei sollte sich unter /var/lib/prosody/auth.__jitsiFQDN__ befinden. Ersetzen Sie __jitsiFQDN__ durch Ihren Jitsi-Domänennamen, um den korrekten Dateipfad anzugeben.

  5. Registrieren Sie einen Benutzer mit dem Benutzernamen focus auf dem Prosody XMPP-Server:

    $ prosodyctl register focus auth.__jitsiFQDN__ __focusUserSecret__

    Der Benutzer focus ist ein spezieller Benutzer für die Konferenzverwaltung und -koordination in Jitsi Meet. Er ist beispielsweise für die Erstellung und Steuerung von Konferenzen zuständig. Der Teil auth.__jitsiFQDN__ gibt die Domäne an, in der der Benutzer registriert ist.

    Ersetzen Sie __jitsiFQDN__ durch Ihren Jitsi-Domänennamen. __focusUserSecret__ ist das Passwort oder Geheimnis des Benutzers focus. Ersetzen Sie __focusUserSecret__ durch ein sicheres Passwort.

  6. Registrieren Sie einen Benutzer mit dem Benutzernamen jvb auf dem Prosody XMPP-Server:

    $ prosodyctl register jvb auth.__jitsiFQDN__ __jvbUserSecret__

    Der Benutzer jvb wird von der Jitsi Videobridge-Komponente zur Verarbeitung von Videostreams in Jitsi Meet verwendet. Der Teil auth.__jitsiFQDN__ gibt die Domäne an, in der der Benutzer registriert ist.

    Ersetzen Sie __jitsiFQDN__ durch Ihren Jitsi-Domänennamen. __jvbUserSecret__ ist das Passwort oder der geheime Schlüssel des Benutzers jvb. Ersetzen Sie __jvbUserSecret__ durch ein sicheres Passwort.

  7. Aktivieren und starten Sie den Prosody-Dienst:

    $ sudo systemctl enable --now prosody

Jitsi Meet konfigurieren

Vorgehensweise
  1. Suchen Sie die Konfigurationsdatei /etc/jitsi-meet/config.js.

  2. Ersetzen Sie die Platzhaltervariablen in config.js.

Den Jitsi-Webserver konfigurieren

Voraussetzungen
  • Konfigurieren Sie einen HTTPS-Server für __jitsiFQDN__.

Vorgehensweise
  • Für Apache:

    • Ersetzen Sie die Platzhalter in der Datei /etc/httpd/conf.d/jitsi-meet.conf.

    • Starten Sie den httpd-Dienst neu:

      $ sudo systemctl restart httpd
  • Für Nginx:

    • Ersetzen Sie die Platzhalter in der Datei /etc/nginx/conf.d/jitsi-meet.conf.

    • Starten Sie den nginx-Dienst neu:

      $ sudo systemctl restart nginx

Jicofo konfigurieren

Vorgehensweise
  1. Ersetzen Sie die Platzhaltervariablen __jitsiFQDN__ und __focusSecret__ in den Dateien /etc/jicofo/config und /etc/jicofo/sip-communicator.properties.

  2. Aktivieren und starten Sie den Dienst jicofo.service:

    $ sudo systemctl enable --now jicofo.service

Jitsi Videobridge konfigurieren

Voraussetzungen
  • Öffnen Sie den Port 10000/udp, wenn Sie Network Address Translation (NAT) verwenden:

    1. Installieren Sie das Paket jitsi-videobridge-firewalld, um die Dienstdefinition für jitsi-videobridge.service zu erhalten.

    2. Verwenden Sie die Dienstdefinition, um firewalld so zu konfigurieren, dass 10000/udp für Jitsi Videobridge geöffnet wird.

Vorgehensweise
  1. Ersetzen Sie die Platzhalter __jitsiFQDN__ und __jvbUserSecret__ in der Datei /etc/jitsi-videobridge/jvb.conf.

  2. Aktivieren und starten Sie jitsi-videobridge.service:

    $ sudo systemctl enable --now jitsi-videobridge.service
Weitere Ressourcen
  • /etc/sysconfig/jitsi-videobridge

Weitere Informationen finden Sie hier.