Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
anwenderwiki:erweiterungen:jitsi [2020/04/06 08:50] – [LDAP-Anbindung] martin.res | anwenderwiki:erweiterungen:jitsi [2020/06/28 23:49] (aktuell) – [Installation] martin.res | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | {{tag> videokonferenz jitsi}} | ||
+ | ====== Videokonferenzen mit Jitsi Meet ====== | ||
+ | |||
+ | * Hersteller -> https:// | ||
+ | * Erläuterung der Anwendung, Schuleinsatz -> https:// | ||
+ | * Ausführliche Erläuterung der Anwendung -> https:// | ||
+ | * Erläuterung zur Anwendung und Technisches -> [[https:// | ||
+ | * Installation und weitergehende Konfigurationen -> https:// | ||
+ | |||
+ | < | ||
+ | * funktioniert am besten mit Chrome, ein Firefox verringert die Qualität und Datenrate für alle Teilnehmer | ||
+ | * für alle Betriebssysteme gibt es die jitsi-meet-electron App | ||
+ | * das eigene Bild wird als " | ||
+ | </ | ||
+ | ===== Freie Jitsi-Server im Internet ===== | ||
+ | |||
+ | * Automatische Weiterleitung zu einen nicht-überlasteten Jitsi-Server -> [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | ===== Installation ===== | ||
+ | |||
+ | Testinstallation im Grünen Netz ohne Let's Encrypt siehe -> [[anwenderwiki: | ||
+ | ==== Server ==== | ||
+ | |||
+ | Für eine eigene Jitsi-Installation nimmt man sinnvollerweise einen eigenen Server. Wir hatten keine Probleme mit einer virtuellen Maschine, bei hoher Last kann eine Installation auf der Hardware je nach installierten Zusatzmodulen eventuell Vorteile bringen. | ||
+ | |||
+ | Als Betriebssystem funktioniert für eine Basisinstallation Ubuntu Server 18.04 LTS, das bringt aber eine recht alte Prosody-Version mit. Es gibt ein paar Zusatzfeatures wie eine Statistik über die Anzahl der Meetings und Teilnehmer, die dann nicht funktionieren. Möchte man solche Features nutzen, ist eine Prosody-Version ab 11 sinnvoll (man kann die z. B. für Ubuntu 18.04 aus dem [[https:// | ||
+ | |||
+ | ==== Firewall ==== | ||
+ | |||
+ | Wenn man den Server hinter eine Firewall betreibt, so muss man diverse TCP-Ports und einen großen Bereich UDP-Ports öffnen. Da auf unserem Server sowieso nur Jitsi läuft, betreiben wir ihn ohne vorgeschaltete Firewall (man sollte dann den SSH-Port umbiegen).\\ | ||
+ | Die zu öffnenden Ports sind TCP/443 TCP/80 and UDP/10000. | ||
+ | |||
+ | ==== Installation ==== | ||
+ | |||
+ | |||
+ | |||
+ | Die Installation besteht aus zwei Schritten, Jitsi + Let' | ||
+ | < | ||
+ | # wget -qO - https:// | ||
+ | # sh -c "echo 'deb https:// | ||
+ | # apt update | ||
+ | # apt install jitsi-meet | ||
+ | </ | ||
+ | Während der Installation „Zertifikat erstellen“ wählen. (... Generate ...)\\ | ||
+ | Danach Let’s-Encrypt einrichten: | ||
+ | < | ||
+ | # cd / | ||
+ | # ./ | ||
+ | </ | ||
+ | Siehe auch -> [[https:// | ||
+ | |||
+ | ==== Probleme mit dem TCP-Harvester ==== | ||
+ | |||
+ | Wir hatten in der Standardkonfiguration das Problem, dass der Java-Prozess für die Videobridge völlig aus dem Ruder lief, auch ohne aktive Meetings. Dies äußerte sich in einer Prozessorlast am Anschlag. Meetings mit mehr als einer Handvoll Leuten waren nicht sinnvoll. | ||
+ | |||
+ | Ich habe dann in der Datei ''/ | ||
+ | gesetzt: | ||
+ | < | ||
+ | org.jitsi.videobridge.DISABLE_TCP_HARVESTER=true | ||
+ | </ | ||
+ | Dies unterdrückt offenbar eine Kommunikation per TCP -- wir sehen keine offensichtlichen Konsequenzen (siehe [[https:// | ||
+ | |||
+ | In manchen Posts habe ich auch die Empfehlung gefunden, stattdessen einen Port vorzugeben ('' | ||
+ | |||
+ | |||
+ | ===== STUN-Server ===== | ||
+ | |||
+ | Ein STUN-Server (Simple Traversal of User Datagram Protocol [UDP] Through Network Address Translators) ermöglicht es NAT-Clients (z. B. Computer hinter einer Firewall), die Kommunikation mit anderen Konferenzteilnehmern außerhalb des lokalen Netzwerks aufzubauen. Die meisten STUN-Server arbeiten auf Port 3478. Jitsi verwendet WebRTC und benötigt dazu ggf. einen STUN-Server. | ||
+ | |||
+ | Wenn man seinen Jitsi-Server datenschutzkonform betreiben möchte, dann sollte man die standardmäßig verwendeten Google-STUN-Server deaktivieren. | ||
+ | |||
+ | Die werden in der Datei ''/ | ||
+ | |||
+ | { urls: ' | ||
+ | oder | ||
+ | { urls: ' | ||
+ | oder | ||
+ | { urls: ' | ||
+ | | ||
+ | | ||
+ | oder weitere öffentliche STUN-Server -> [[https:// | ||
+ | |||
+ | |||
+ | ===== LDAP-Anbindung ===== | ||
+ | < | ||
+ | 1. Zunächst muss man einige Prosody-Module nachinstallieren: | ||
+ | # apt install prosody-modules | ||
+ | 2. Nun aktiviert man man in der Datei ''/ | ||
+ | < | ||
+ | VirtualHost " | ||
+ | -- authentication = " | ||
+ | authentication = " | ||
+ | ... | ||
+ | c2s_require_encryption = false | ||
+ | ... | ||
+ | </ | ||
+ | 3. Datei ''/ | ||
+ | < | ||
+ | --------- Server wide settings ---------- | ||
+ | consider_bosh_secure = true | ||
+ | ... | ||
+ | </ | ||
+ | Und weiter unten überprüft man (Achtung, genau hinschauen: es gibt auch c2s): | ||
+ | s2s_secure_auth = false | ||
+ | 4. Die Einstellungen für den LDAP-Server kommen in eine neue Datei ''/ | ||
+ | authentication = ' | ||
+ | ldap = { | ||
+ | hostname | ||
+ | use_tls | ||
+ | bind_dn | ||
+ | bind_password = ' | ||
+ | user = { | ||
+ | basedn | ||
+ | filter | ||
+ | usernamefield = ' | ||
+ | namefield | ||
+ | }, | ||
+ | } | ||
+ | |||
+ | 5. Config aktivieren: | ||
+ | # cd / | ||
+ | # ln -s ../ | ||
+ | |||
+ | 6. Dienste neu starten: | ||
+ | # service prosody restart | ||
+ | # service jicofo restart | ||
+ | # service jitsi-videobridge2 restart | ||
+ | |||
+ | Wie man sieht, muss man über Port 389 (mit TLS) gehen, LDAPS über Port 636 fuinktioniert nicht. Den Port 389 muss man gegebenenfalls in der Firewall (IPFire/ | ||
+ | |||
+ | Als bind-user funktionierte bei uns leider nur der admin bei einer anderen **'' | ||
+ | < | ||
+ | ... | ||
+ | use_tls | ||
+ | bind_dn | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Siehe auch -> [[https:// | ||
+ | |||
+ | ==== Tool zum Testen der LDAP-Verbindung ==== | ||
+ | Zum Testen, ob die LDAP-Verbindung funktioniert kann man das Tool " | ||
+ | # apt-get install ldap-utils | ||
+ | # ldapsearch -x -H ldap:// | ||
+ | Beim voranstehendem Befehl sollte eine Liste aller LDAP-Einträge des Servers (bei uns ca. 1500) ausgegeben werden. Wenn man nur den Eintrag z.B. vom " | ||
+ | |||
+ | # ldapsearch -x -H ldap:// | ||
+ | |||
+ | Um den bind-user zu testen: | ||
+ | # ldapsearch -x -H ldap:// | ||
+ | | ||
+ | ==== Zugriff auf Jitsi nur Lehrer erlauben (LMN 6.2) ==== | ||
+ | In der Datei **''/ | ||
+ | < | ||
+ | ... | ||
+ | | ||
+ | ... | ||
+ | </ | ||
+ | danach ausführen: | ||
+ | # service prosody restart | ||
+ | Automatische Anpassung, z.B. in einem Cron - Job um ab 18:00 Uhr nur noch Lehrer zulassen: | ||
+ | # sed -i ' | ||
+ | und wieder alle User zulassen: | ||
+ | # sed -i ' | ||
+ | |||
+ | ===== Moodle-Plugin ===== | ||
+ | siehe -> [[https:// | ||
+ | |||
+ | ===== Startseite mit Begrüßungstext anpassen ===== | ||
+ | |||
+ | In der Datei **''/ | ||
+ | < | ||
+ | ... | ||
+ | " | ||
+ | | ||
+ | | ||
+ | " | ||
+ | | ||
+ | " | ||
+ | } | ||
+ | </ | ||
+ | Datei editieren um die Texte anzupassen. Da die Texte teils gecached werden, erscheinen die Änderungen nicht immer unmittelbar bei der Web-Site. | ||
+ | |||
+ | ===== Startseite mit Impressum - footer - header===== | ||
+ | siehe auch: -> [[https:// | ||
+ | <note important> | ||
+ | <note important> | ||
+ | Die Datei '' | ||
+ | < | ||
+ | # sed -i ' | ||
+ | </ | ||
+ | |||
+ | Am Ende der Datei '' | ||
+ | < | ||
+ | ... | ||
+ | .welcome .welcome-watermark{position: | ||
+ | # | ||
+ | # | ||
+ | </ | ||
+ | und in '' | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | <div id=" | ||
+ | < | ||
+ | </ | ||
+ | <div id=" | ||
+ | < | ||
+ | </ | ||
+ | ... | ||
+ | </ | ||
+ | ===== Weitere Anpassungen ===== | ||
+ | === a) Variablen in der Datei "/ | ||
+ | Hier sollte auch gesetzt werden, dass der Android-App-Link auf die trackerfreie Version im F-Droid-Store verlinkt (für iOS gibt es eine solche nicht): | ||
+ | |||
+ | |||
+ | < | ||
+ | ... | ||
+ | DEFAULT_REMOTE_DISPLAY_NAME: | ||
+ | DEFAULT_LOCAL_DISPLAY_NAME: | ||
+ | SHOW_JITSI_WATERMARK: | ||
+ | JITSI_WATERMARK_LINK: | ||
+ | ... | ||
+ | GENERATE_ROOMNAMES_ON_WELCOME_PAGE: | ||
+ | ... | ||
+ | |||
+ | /** | ||
+ | * Specify custom URL for downloading android mobile app. | ||
+ | */ | ||
+ | MOBILE_DOWNLOAD_LINK_ANDROID: | ||
+ | |||
+ | </ | ||
+ | === b) Watermark Datei === | ||
+ | Das angezeigte Jitsi-Logo mit transparentem Hintergrund ist '' | ||
+ | < | ||
+ | ... | ||
+ | .watermark{position: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | === c) Browser Überprüfung === | ||
+ | |||
+ | Variable in der Datei **''/ | ||
+ | < | ||
+ | ... | ||
+ | UNSUPPORTED_BROWSERS: | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | === d) Video-Auflösung serverseitig reduzieren === | ||
+ | In der Datei '' | ||
+ | < | ||
+ | ... | ||
+ | | ||
+ | |||
+ | | ||
+ | video: { | ||
+ | aspectRatio: | ||
+ | height: { | ||
+ | ideal: 240, | ||
+ | max: 240, | ||
+ | min: 240 | ||
+ | } | ||
+ | } | ||
+ | }, | ||
+ | ... | ||
+ | </ |