Dieses Tutorial zeigt Ihnen, wie Sie Jitsi Meet installieren auf Ubuntu 18.04/20.04-Server. Jitsi Meet ist eine kostenlose Open-Source-Videokonferenzsoftware, die unter Linux, macOS, Windows, iOS und Android funktioniert. Wenn Sie Zoom nicht vertrauen, können Sie Ihre eigene Videokonferenzplattform auf Ihrem eigenen Server betreiben.
Funktionen von Jitsi Meet
- Völlig kostenlos
- Teilen Sie Ihren Computerbildschirm mit anderen.
- Im Moderatormodus können Sie Ihren Bildschirm und Ihre Kamera gleichzeitig freigeben, sodass die Teilnehmer den Moderator und seine Körpersprache während der gesamten Präsentation sehen können.
- Sie können das Systemaudio teilen, während Sie Ihren Bildschirm teilen.
- Sie können autorisierte Benutzer als Moderatoren zuweisen. Ein Moderator kann jeden Teilnehmer mit einem Klick stumm schalten.
- Die Kommunikation über das Netzwerk wird mit DTLS-SRTP verschlüsselt.
- Ende-zu-Ende-Verschlüsselung (in Arbeit)
- Sie können ein Passwort für Ihre Konferenz festlegen, um zu verhindern, dass zufällige Fremde hereinkommen.
- Meeting/Konferenz aufzeichnen und in Dropbox speichern.
- Streame zu YouTube Live und speichere die Aufzeichnung auf YouTube.
- Android- und iOS-Apps
- Text-Chat
- Textdokument teilen
- Telefonische Einwahl in eine Konferenz
- Herauswählen eines Telefonteilnehmers
- Sie können einen Jits Meet-Anruf mit nur wenigen Codezeilen in jede Webseite einbetten.
Anforderungen für die Installation von Jitsi Meet unter Ubuntu 18.04/20.04
Um Jitsi Meet ausführen zu können, benötigen Sie einen Server mit mindestens 1 GB RAM. Sie können auf diesen Empfehlungslink klicken, um ein Konto bei Vultr zu erstellen und 50 $ kostenloses Guthaben zu erhalten (nur für neue Benutzer). Sobald Sie ein Konto bei Vultr haben, installieren Sie Ubuntu 18.04/20.04 auf Ihrem Server und folgen Sie den Anweisungen unten. Wenn Sie Dutzende von Benutzern haben, sollten Sie ein Upgrade Ihrer Serverhardware in Betracht ziehen. Der Server sollte sich in der Nähe Ihrer Benutzer befinden, oder die Verzögerung wird während Online-Meetings bemerkbar.
Außerdem benötigen Sie einen Domänennamen. Ich habe meinen Domainnamen bei NameCheap registriert, weil der Preis niedrig ist und sie lebenslangen Whois-Datenschutz bieten.
Schritt 1:Installieren Sie Jitsi Meet aus dem offiziellen Paket-Repository
Jitsi Meet ist nicht im Standard-Ubuntu-Repository enthalten. Wir können es aus dem offiziellen Jitsi-Paket-Repository installieren, das auch mehrere andere nützliche Softwarepakete enthält. Melden Sie sich über SSH bei Ihrem Server an und führen Sie dann den folgenden Befehl aus, um das offizielle Jitsi-Repository hinzuzufügen.
echo 'deb https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list
Importieren Sie den öffentlichen Jitsi-Schlüssel, damit der APT-Paketmanager die Integrität der aus diesem Repository heruntergeladenen Pakete überprüfen kann.
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
Da das Jitsi-Repository eine HTTPS-Verbindung erfordert, müssen wir apt-transport-https
installieren Paket, um APT dazu zu bringen, eine HTTPS-Verbindung zum Jitsi-Repository aufzubauen.
sudo apt install apt-transport-https
Aktualisieren Sie als Nächstes den lokalen Paketindex und installieren Sie Jitsi Meet unter Ubuntu.
sudo apt update sudo apt install jitsi-meet
Während der Installation müssen Sie einen Hostnamen für Ihre Jitsi-Instanz eingeben. Dies ist der Hostname, der in der Adressleiste des Webbrowsers angezeigt wird, wenn Teilnehmer Ihrer Videokonferenz beitreten. Sie können einen beschreibenden Hostnamen wie meet.example.com
verwenden .
Auf dem nächsten Bildschirm können Sie wählen, ob Sie ein neues selbstsigniertes TLS-Zertifikat generieren möchten, damit Sie später ein vertrauenswürdiges Let’s Encryption-Zertifikat erhalten und installieren können.
Der Installationsprozess konfiguriert einige Linux-Kernel-Parameter, die in /etc/sysctl.d/20-jvb-udp-buffers.conf
gespeichert werden Datei. Sobald die Installation abgeschlossen ist, wird Jitsi Meet automatisch gestartet. Sie können den Status überprüfen mit:
systemctl status jitsi-videobridge2
Beispielausgabe:
● jitsi-videobridge2.service - Jitsi Videobridge Loaded: loaded (/lib/systemd/system/jitsi-videobridge2.service; enabled; vendor preset: enabled) Active: active (running) since Fri 2020-04-24 12:11:13 UTC; 3min 27s ago Main PID: 3665 (java) Tasks: 37 (limit: 65000) CGroup: /system.slice/jitsi-videobridge2.service └─3665 java -Xmx3072m -XX:+UseConcMarkSweepGC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/jitsi -Dnet.java.sip.communicator.SC_HO
Hinweis:Wenn der obige Befehl nicht sofort beendet wird, können Sie die Q-Taste drücken, um ihn zu beenden.
Das jitsi-meet
package hat auch andere Pakete als Abhängigkeiten gezogen, wie zum Beispiel
- openjdk-8-jre-headless :Java-Laufzeitumgebung. Es wird benötigt, weil Jitsi Meet in der Sprache Java geschrieben ist.
- jicofo :Fokus der Jitsi-Konferenz (
systemctl status jicofo
) - Prosodie :Lightweight Jabber/XMPP-Server (
systemctl status prosody
) - zurück :TURN- und STUN-Server für VoIP (
systemctl status coturn
)
Schritt 2:Ports in der Firewall öffnen
Jitsi Meet lauscht auf mehreren UDP-Ports, wie mit dem folgenden Befehl zu sehen ist. (Falls Ihr Ubuntu-Server nicht über die netstat
Befehl können Sie sudo apt install net-tools
ausführen Befehl, um es zu installieren.)
sudo netstat -lnptu | grep java
Damit Teilnehmer einer Videokonferenz über einen Webbrowser beitreten können, müssen Sie die TCP-Ports 80 und 443 öffnen. Um Videos über das Netzwerk zu übertragen, öffnen Sie die UDP-Ports 10000 und 5000. Wenn Sie die UFW-Firewall verwenden, führen Sie Folgendes aus Befehl zum Öffnen dieser Ports.
sudo ufw allow 80,443/tcp sudo ufw allow 10000,5000/udp
Schritt 3:Erhalten Sie ein vertrauenswürdiges TLS-Zertifikat von Let’s Encrypt
Gehen Sie zu Ihrem DNS-Hosting-Service (normalerweise Ihrem Domain-Registrar), um einen DNS-A-Eintrag für Ihren Jitsi-Hostnamen (meet.example.com) zu erstellen. Führen Sie dann das folgende Skript aus, um ein vertrauenswürdiges TLS-Zertifikat von Let’s Encrypt zu erhalten:
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
Geben Sie Ihre E-Mail-Adresse ein, um wichtige Kontobenachrichtigungen zu erhalten. Dann wird certbot
heruntergeladen und erhalten Sie ein TLS-Zertifikat.
Wenn alles in Ordnung ist, sehen Sie die folgende Meldung, die angibt, dass die TLS-Zertifikate erfolgreich bezogen und installiert wurden.
Beachten Sie, dass dieses Skript den http-01
verwendet herausfordern, was bedeutet, dass Ihr Apache- oder Nginx-Webserver auf Port 80 der öffentlichen IP-Adresse lauschen muss. Wenn Ihre Serverumgebung den http-01
nicht unterstützt herausfordern, dann sollten Sie das obige Skript nicht ausführen. Sie müssen andere Herausforderungstypen verwenden. In meinem Fall verwende ich die DNS-Challenge.
sudo certbot --agree-tos -a dns-cloudflare -i nginx --redirect --hsts --staple-ocsp --email [email protected] -d meet.linuxbabe.com
Wo:
--agree-tos
:Nutzungsbedingungen akzeptieren.-a dns-cloudflare
:Ich verwende das Cloudflare-DNS-Plugin zur Authentifizierung, da ich den Cloudflare-DNS-Dienst verwende.-i nginx
:Verwenden Sie das nginx-Plugin, um das TLS-Zertifikat zu installieren. Wenn Sie Apache verwenden, müssen Sienginx
ersetzen mitapache
.--redirect
:HTTPS durch 301-Umleitung erzwingen.--hsts
: Fügen Sie den Strict-Transport-Security-Header zu jeder HTTP-Antwort hinzu. Erzwingen, dass der Browser immer TLS für die Domäne verwendet. Schützt vor SSL/TLS-Stripping.--staple-ocsp
: Aktiviert OCSP-Heften. Eine gültige OCSP-Antwort wird an das Zertifikat geheftet, das der Server während TLS anbietet.
Schritt 4:HTTP2 aktivieren
HTTP2 kann die Ladegeschwindigkeit von Webseiten verbessern. Um HTTP2 in Nginx zu aktivieren, bearbeiten Sie die Konfigurationsdatei des virtuellen Hosts.
sudo nano /etc/nginx/sites-enabled/meet.example.com.conf
Suchen Sie die folgenden zwei Zeilen.
listen 443 ssl; listen [::]:443 ssl;
Fügen Sie http2
hinzu am Ende jeder Zeile.
listen 443 ssl http2; listen [::]:443 ssl http2;
Speichern und schließen Sie die Datei. Laden Sie dann Nginx neu, damit die Änderung wirksam wird.
sudo systemctl reload nginx
Schritt 5:Starten Sie ein neues Online-Meeting
Besuchen Sie nun https://meet.example.com
und Sie können eine Konferenz starten. Um Audio zu übertragen, müssen Sie dem Webbrowser erlauben, Ihr Mikrofon zu verwenden. Und um Videos zu übertragen, müssen Sie dem Webbrowser erlauben, auf Ihre Kamera zuzugreifen.
Geben Sie Ihrem Meeting einen Namen und klicken Sie auf die Schaltfläche Los. Nachdem das Meeting gestartet wurde, können Sie optional ein Passwort für Ihr Meeting festlegen.
Schritt 6:Benutzerauthentifizierung einrichten
Standardmäßig kann jeder zu Ihrer Jitsi Meet-Instanz gehen, einen Raum erstellen und ein Meeting starten. Um die Benutzerauthentifizierung einzurichten, bearbeiten Sie die Prosody-Konfigurationsdatei.
sudo nano /etc/prosody/conf.d/meet.example.com.cfg.lua
Suchen Sie die folgende Zeile.
authentication = "anonymous"
Ändern Sie es wie folgt, wodurch der Benutzer den Benutzernamen und das Passwort eingeben muss, um eine Konferenz zu starten.
authentication = "internal_plain"
Wir möchten jedoch nicht, dass die Teilnehmer Benutzernamen und Passwort eingeben, wenn sie der Konferenz beitreten, daher müssen wir ein anonymes Login für Gäste erstellen, indem wir die folgenden Zeilen am Ende dieser Datei hinzufügen. Beachten Sie, dass Sie keinen DNS-A-Eintrag für guest.meet.example.com
erstellen müssen .
VirtualHost "guest.meet.example.com" authentication = "anonymous" c2s_require_encryption = false
Speichern und schließen Sie die Datei. Bearbeiten Sie als Nächstes die Jitsi Meet-Konfigurationsdatei.
sudo nano /etc/jitsi/meet/meet.example.com-config.js
Suchen Sie die folgende Zeile,
// anonymousdomain: 'guest.example.com',
Entfernen Sie die doppelten Schrägstriche und ändern Sie die Gastdomäne. Ersetzen Sie meet.example.com durch Ihren echten Jitsi Meet-Hostnamen.
anonymousdomain: 'guest.meet.example.com',
Speichern und schließen Sie die Datei.
Bearbeiten Sie dann die Jicofo-Konfigurationsdatei.
sudo nano /etc/jitsi/jicofo/sip-communicator.properties
Fügen Sie am Ende dieser Datei die folgende Zeile hinzu.
org.jitsi.jicofo.auth.URL=XMPP:meet.example.com
Speichern und schließen Sie die Datei. Starten Sie die systemd-Dienste neu, damit die Änderungen wirksam werden.
sudo systemctl restart jitsi-videobridge2 prosody jicofo
Führen Sie den folgenden Befehl aus, um Benutzerkonten in Jisi Meet zu erstellen. Sie werden aufgefordert, ein Passwort für den neuen Benutzer einzugeben.
sudo prosodyctl register username meet.example.com
Wenn Sie jetzt einen Raum in Jitsi Meet erstellen, müssen Sie einen Benutzernamen und ein Passwort eingeben.
Tipps zur Fehlerbehebung
Wenn Fehler auftreten, können Sie das Nginx-Fehlerprotokoll überprüfen (/var/log/nginx/error.log
) um herauszufinden, was falsch ist. Überprüfen Sie auch die Protokolle der systemd-Dienste.
sudo journalctl -eu jitsi-videobridge2 sudo journalctl -eu prosody sudo journalctl -eu jicofo
Wenn beim Starten eines Meetings in Jitsi der Fehler „Sie wurden getrennt“ angezeigt wird, haben Sie möglicherweise vergessen, meet.example.com
zu ändern zu Ihrem echten Jitsi Meet-Hostnamen in den Konfigurationsdateien.
Optional:Richten Sie Jigasi für die Telefoneinwahl oder -auswahl ein
Jitsi bietet eine Telefonieschnittstelle, mit der Benutzer sich in eine Konferenz einwählen oder Erinnerungsanrufe tätigen können. Installieren Sie jigasi
Paket (Jitsi-Gateway für SIP).
sudo apt install jigasi
Während der Installation müssen Sie Ihren SIP-Benutzernamen und Ihr Passwort eingeben. Wenn Sie noch keines haben, können Sie auf OnSIP.com ein kostenloses SIP-Konto erstellen.
Wenn Sie die Benutzerauthentifizierung in Schritt 6 eingerichtet haben, müssen Sie die Jigasi-Konfigurationsdatei bearbeiten.
sudo nano /etc/jitsi/jigasi/sip-communicator.properties
Suchen Sie die folgenden Zeilen.
# [email protected]_DOMAIN # org.jitsi.jigasi.xmpp.acc.PASS=SOME_PASS # org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false
Entkommentieren Sie sie und geben Sie ein Konto und ein Passwort ein, das Sie in Schritt 6 erstellt haben.
org.jitsi.jigasi.xmpp.acc.USER_ID=[email protected] org.jitsi.jigasi.xmpp.acc.PASS=user1_password org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false
Speichern und schließen Sie die Datei. Starten Sie jigasi
neu systemd-Dienst.
sudo systemctl restart jigasi
Optional:Coturn konfigurieren
Wenn Sie während der Installation von Jitsi Meet die folgende Meldung sehen, müssen Sie Coturn konfigurieren, damit es ordnungsgemäß funktioniert.
Warning! Could not resolve your external ip address! Error:^ Your turn server will not work till you edit your /etc/turnserver.conf config file. You need to set your external ip address in external-ip and restart coturn service.
Bearbeiten Sie die Coturn-Konfigurationsdatei.
sudo nano /etc/turnserver.conf
Suchen Sie die folgende Zeile.
external-ip=127.0.0.1
Ersetzen Sie 127.0.0.1 durch die öffentliche IP-Adresse Ihres Servers. Speichern und schließen Sie die Datei. Starten Sie dann Coturn neu.
sudo systemctl restart coturn