Card image cap

Videokonferenz mit Jitsi

Jitsi Meet ist eine WebRTC-basierende Konferenzsoftware. Für die Verwendung auf PCs wird auf den meisten Servern der Chromium (Browser) empfohlen, für Android und iOS steht eine App zur Verfügung. Es werden auch Jitsi-Apps für Windows, MacOS und Linux angeboten. Der Dienst kann auf eigenen Servern installiert werden.

Für die datenschutzgerechte Nutzung von Jitsi müssen weitere Einstellungen in der Konfiguration auf dem Server durchgeführt werden. Diese Einstellungen werde ich in diesem Beitrag zusammenschreiben. Am Schluss zeige ich noch mögliche Probleme und mögliche Lösungsansätze für die Nutzung von Jitsi auf.

Virtuelle und Root Server

Jitsi kann schnell auf einem Root oder vServer mit einem Ansible-Playbook erstellt werden. (Link steht unten) Passende Server in Deutschland findet Ihr hierbei bei netcup https://www.netcup.de/vserver/vps.php (Kontaktieren Sie uns und wir senden Ihnen gerne einen Rabatt für Ihren ersten Kauf eines virtuellen oder Root Servers aus)

Vorkehrungen für eine datenschutzgerechte Nutzung

Anpassen der Startseite

Die Startseite von Jitsi ist nicht ganz korrekt. Auf dieser Seite fehlt ein Impressium und ein Datenschutzhinweis. Nach der Anleitung von https://www.kuketz-blog.de/jitsi-meet-server-einstellungen-fuer-einen-datenschutzfreundlichen-betrieb/ kann diese relativ einfach über das CSS und HTML eingefügt werden. Dies geht auch bei einer Quick Install Instanz von Jitsi.

vi /usr/share/jitsi-meet/css/all.css

.welcome .welcome-watermark{position:absolute;width:100%;height:auto}
#footer{margin-top:20px;margin-bottom:20px;font-size:14px}

WICHTIG: Hier nicht die vorhandenen Zeilen löschen. Sonst funktioniert die ganze Jitsi Anwendung nicht mehr.

nano /usr/share/jitsi-meet/static/welcomePageAdditionalContent.html

<template id = "welcome-page-additional-content-template">
   <div id="footer">
      <center>Betrieben von <a href="https://h2-invent.com">H2 invent GmbH</a> im Auftrag von H2-invent | <a href="https://h2-invent.com/impressum">Impressum</a> | <a href="https://h2-invent.com/datenschutzhinweis">Datenschutzhinweis</a> | <a href="https://h2-invent.com/software/jitsi/">Erste Hilfe bei Problemen</a></center>
      <center>Diese Jitsi-Instanz ist datenschutzfreundlich und nutzt <strong>nicht</strong> die Google STUN-Server.</center>
   </div>
</template>

Desweiteren empfielt es sich, den Text auf der Startseite zu änder oder zu entfernen, da die deutsche Übersetzung nicht ganz korrekt ist. Die Verbindung ist nicht vollständig verschlüsselt. Dies liegt in der Natur von WebRTC, dass die Verbindungen im Jitsi-Videobridge entschlüsselt vorliegen. Daher ist es zu empfehlen, diesen Text zu entfernen.

vi /usr/share/jitsi-meet/css/all.css

.header-text-description {
  visibility: hidden !important
}

Diese kann auch sehr gut in Ansible umgesetzt werden. dafür müssen nur zwei Variablen Impressum und Datenschutzhinweis erstellt und eingebunden werden.

STUN und TURN Server

Die wichtigte Einstellung für eine datenschutzgerechte Nutzung ist die Umstellung auf einen deutschen STUN und TURN Server. Besser noch einen eigenen Server. In der Grundkonfiguration wird der STUN Server von Google eingesetzt. Dieser sollte auf jeden Fall entfernt werden.

vi /etc/jitsi/meet/<deine-Domain>-config.js
stunServers: [
   { urls: '' },
],

Mögliche öffentliche Server sind von 1&1 oder der Telekom. Einen eigenen STUN und TURN Server kann relativ einfach mit einem coturn-Server und Ansible-Playbook aufgesetzt und in Jitsi integriert werden.

Deaktivieren der Gravatar Funktion.

Sobald ein Nutzer in Jitsi eine Email Adresse eingibt, wird automatisch eine Verbindung zu Gravatar hergestellt. Diese Verbindung sollte für eine datenschutzkorrekte Nutzung deaktiviert werden.

vi /etc/jitsi/meet/<deine-Domain>-config.js
disableThirdPartyRequests: true,

Logging

Mehrere weitere Blogs schreiben, dass es empfehlenswert ist, das Logging von Jitsi zu minimieren. Diese Einstellung finde ich für nicht so wichtig, wenn der Server nur intern (im Unternehmen) eingesetzt wird. Logging ist wichtig für eine optimale Ausnutzung des Servers und kann in einem ELK Stack analysiert werden. Ohne Logging bekommt der Administrator nur wenig Rückmeldung über die Performance und mögliche Fehler in den Diensten.

vi /etc/jitsi/videobridge/logging.properties
.level=WARNING
.level= {{ jitsi_meet_videobridge_loglevel }} (Ansible)

Ansible Playbook und Ansible Automation

Beim Erstellung von Jitsi empfielt es sich, ein Ansible Playbook oder Bash Scribt zu schreiben um die Konfiguration kontrolliert durchführen zu können.

Hifestellungen bei Problemen mit Jitsi

  • Eine Verbindung wird aufgebaut, aber der Ton und Video funktioniert nicht: Das kann daran liegen, dass ein falscher Browser verwendet wird oder dieser mit Add-ons oder internen Einstellungen so eingestellt wurde, dass WebRTC nicht mehr geht. Es kann auch sein, gerade in Unternehmen, dass die Firewall Outbound Ports, TCP443, UDP 1000 blockiert und so keine Verbindung aufgebaut werden kann.
  • Die Verbindung ist schlecht: Unterbrechen Sie mögliche Upload oder Streaming Dienste. Deaktivieren Sie die Videos und Screen Sharings und aktivieren Sie nur Audio.
  • Feedback und Echo: Ein Echo kommt zu stande, wenn ein Mikro den eigenen Ton aus den Lautsprechern aufnimmt und wieder an Jitsi sendet. Dadurch entsteht eine Geräuschschleife, die sich entlos fortsetzt, bis das Mikro ausgestellt wird. Es empfielt sich, ein Headset zu verwenden, bei dem die Laufsprecher vom Mikro getrennt sind.
  • Kein Ton und kein Video möglich: Sie müssen beim Betreten einer Konferenz den Zugriff auf die Kamera und das Mikro im Browser erlauben. Sie können diese Einstellung auch nachträglich einrichten, indem Sie auf das Symbol neben der URL Leiste auf die kleine Kamera neben dem Schloss für HTTPS klicken.

Wir sind für Sie da!

Benötigen Sie Unterstützung bei Ihrer Transformation?
Zögern Sie nicht mit uns Kontakt aufzunehmen.

Kontakt aufnehmen
Posted in Services 28.04.2020