Jitsi Meet ist eine kostenlose Anwendung für Videokonferenzen. Es bietet eine Open-Source-Alternative zu proprietären Videokonferenzanwendungen wie Skype oder Zoom. Jeder kann ein verschlüsseltes Jitsi-Videomeeting erstellen, indem er die Jitsi Meet-Website aufruft oder die kostenlose Jitsi-App installiert.
Der Jitsi Meet-Dienst kann auch selbst gehostet werden. Mit dem Open-Source-Server Jitsi Meet können Sie private, verschlüsselte Videokonferenzen im Internet auf einer von Ihnen kontrollierten Domain betreiben.
Die folgenden Anweisungen zeigen, wie Sie den Jitsi Meet-Server auf einem VPS installieren und die Autorisierung konfigurieren, sodass zum Erstellen neuer Meetings ein Benutzername und ein Kennwort erforderlich sind. Diese Schritte erfordern ein Konto bei einem VPS-Anbieter wie Linode oder Digital Ocean und einen registrierten Domainnamen.
Erstellen Sie einen Debian 9 VPS
Erstellen Sie zunächst einen neuen VPS für Ihren Jitsi Meet-Server. Erstellen Sie im Dashboard Ihres VPS-Anbieters einen neuen virtuellen Host mit Debian 9 und mindestens 2 GB RAM (empfohlen).
Wenn Sie beispielsweise Linode verwenden, wählen Sie in Ihrem Linode-Dashboard Erstellen > Linode. Wählen Sie unter Choose a Distribution Debian 9 und einen Linode-Plan, der 2 GB RAM bietet.
Wenn Sie Digital Ocean verwenden, wählen Sie in Ihrem Digital Ocean-Dashboard Erstellen > Droplets aus. Wählen Sie unter Distributionen Debian 9.12 x64 und einen Droplet-Plan, der 2 GB RAM bietet.
DNS-Einträge aktualisieren
Fügen Sie Ihrer Domain A/AAAA-DNS-Einträge mit dem Subdomain-Namen und der IPv4/IPv6-Adresse Ihres neuen VPS hinzu.
Zum Beispiel, um Jitsi zu hosten video.meinedomain.commelden Sie sich bei Ihrem Domänenregistrierungskonto an und bearbeiten Sie die DNS-Einträge für meinedomain.com. Fügen Sie zwei Datensätze für den Hostnamen hinzu Videoeine mit der IPv4-Adresse (der „A“-Eintrag) und eine mit der IPv6-Adresse (der „AAAA“-Eintrag).
Wenn Sie keine Subdomain verwenden möchten (z. B. mydomain.com anstelle von video.mydomain.com), lassen Sie den Hostnamen in den A/AAAA-Einträgen leer.
Aktualisieren und sichern Sie VPS
Öffnen Sie ein Terminal- oder Eingabeaufforderungsfenster. SSH zu Ihrem VPS als Root-Benutzer.
ssh [email protected]ipaddress
Aktualisieren Sie die Paketliste und aktualisieren Sie die installierte Software.
apt update && apt -y upgrade
Installieren Sie sudo und UFW (unkomplizierte Firewall).
apt install -y sudo ufw
Firewall konfigurieren
Konfigurieren Sie UFW so, dass TCP-Kommunikation auf den von SSH, HTTP und HTTPS verwendeten Ports und UDP-Datenverkehr auf Port 10000 zugelassen werden.
ufw allow ssh ufw allow http ufw allow https ufw allow 10000/udp
Aktivieren Sie die Firewall.
ufw enable
Setzen Sie den Hostnamen des Servers auf Ihren FQDN, z. B. video.meinedomain.com.
hostnamectl set-hostname video.mydomain.com
Fügen Sie den FQDN zu Ihrer Hosts-Datei hinzu. Öffne die Datei /etc/hosts in einem Texteditor wie Nano.
nano /etc/hosts
Finde die Linie 127.0.0.1 lokaler Host und hängen Sie Ihren FQDN an.
127.0.0.1 localhost video.mydomain.com
Speichern Sie die Datei und beenden Sie den Editor. (Drücken Sie in Nano Strg+O, Eingabe, um die Datei zu speichern, und Strg+X, um die Datei zu verlassen.)
Erstellen Sie einen Benutzer mit sudo-Rechten
Fügen Sie ein neues Benutzerkonto hinzu. Ersetzen Sie myuser durch Ihren gewünschten Benutzernamen.
adduser myuser
Fügen Sie diesen Benutzer der Gruppe „sudo“ hinzu, damit er Befehle mit sudo ausführen kann.
usermod -aG sudo myuser
Root-SSH deaktivieren
Öffnen Sie die Konfigurationsdatei des SSH-Daemons in einem Texteditor.
nano /etc/ssh/sshd_config
Finde die Linie PermitRootLogin jaund ändern Jawohl zu Nein.
PermitRootLogin no
Speichern Sie die Datei und beenden Sie den Editor (Strg+O, Enter, Strg+X in Nano).
Starten Sie dann den SSH-Daemon neu.
systemctl restart sshd
SSH-Schlüssel hinzufügen
Die folgenden Schritte fügen dem Server einen SSH-Schlüssel hinzu, um mehr Sicherheit zu bieten. Diese Schritte sind optional, werden jedoch empfohlen.
Wenn Sie noch bei Ihrer SSH-Sitzung angemeldet sind, melden Sie sich ab.
logout
Wenn Sie keinen vorhandenen SSH-Schlüssel haben, erstellen Sie einen auf Ihrem lokalen Computer. (Wenn Sie einen vorhandenen Schlüssel verwenden möchten, überspringen Sie diesen Schritt.)
ssh-keygen
Generating public/private rsa key pair. Enter file in which to save the key (C:Usersneilg/.ssh/id_rsa):
Drücken Sie die Eingabetaste, um die Standarddateinamen für öffentliche/private Schlüssel zu verwenden.
Wenn Sie dazu aufgefordert werden, wählen Sie eine starke Passphrase als zusätzliche Sicherheitsebene.
Enter passphrase (empty for no passphrase): This is my passphrase.
Übertragen Sie den Schlüssel per SSH auf Ihren Server. Unter Linux und macOS:
ssh-copy-id [email protected]ipaddress
Unter Windows 10:
cd %USERPROFILE%
type .sshid_rsa.pub | ssh [email protected]ipaddress "mkdir -p ~/.ssh; cat >> ~/.ssh/authorized_keys"
Melden Sie sich mit Ihrem SSH-Schlüssel beim VPS an.
ssh [email protected]ipaddress
Wenn Sie dazu aufgefordert werden, geben Sie die Schlüssel-Passphrase ein.
Deaktivieren Sie als Nächstes die passwortbasierte SSH-Authentifizierung auf dem VPS. Öffnen Sie die SSH-Daemon-Konfiguration in einem Texteditor.
sudo nano /etc/ssh/sshd_config
Finden Sie die Zeile, die lautet #PasswordAuthentication ja. Ändern Jawohl zu Neinund entfernen Sie das #, um die Zeile auszukommentieren.
PasswordAuthentication no
Speichern Sie die Datei und verlassen Sie den Editor. Starten Sie dann den SSH-Daemon neu.
sudo systemctl restart sshd
SSH-Anmeldungen sind jetzt auf Benutzer mit den öffentlichen und privaten Schlüsseldateien beschränkt, die die Schlüssel-Passphrase kennen.
Beschränken Sie als bewährte Methode den Zugriff auf das .ssh-Verzeichnis nur auf Ihren Benutzer.
sudo chmod 600 ~/.ssh/*
sudo chmod 700 ~/.ssh
Installieren Sie den Jitsi Meet-Server
Die folgenden Schritte installieren das Jitsi Meet-Serverpaket auf Ihrem VPS.
Aktivieren Sie zunächst die Installation von APT-Paketen über HTTPS.
sudo apt install -y apt-transport-https
Fügen Sie Jitsi zur Liste der APT-Repositories hinzu.
echo 'deb https://download.jitsi.org stable/' | sudo tee
/etc/apt/sources.list.d/jitsi-stable.list
Laden Sie den öffentlichen Verschlüsselungsschlüssel des Jitsi-Repositorys herunter und installieren Sie ihn.
wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo
apt-key add -
Aktualisieren Sie Ihre APT-Paketliste.
sudo apt update
Installieren Sie den Jitsi Meet-Server.
sudo apt install -y jitsi-meet
Wenn Sie nach dem Hostnamen der aktuellen Installation gefragt werden, geben Sie Ihren FQDN ein, einschließlich der Unterdomäne, falls vorhanden.
Wählen Sie Neues selbstsigniertes Zertifikat generieren aus.
Ersetzen Sie als Nächstes das selbstsignierte Zertifikat durch ein vertrauenswürdiges Zertifikat, das von Let’s Encrypt bereitgestellt wird.
sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
Geben Sie bei Aufforderung eine E-Mail-Adresse ein, um Warnungen oder Benachrichtigungen zu Ihrem Zertifikat zu erhalten.
Enter your email and press [ENTER]: [email protected]
Die Zertifikatserstellung sollte weniger als eine Minute dauern. Wenn dies erledigt ist, ist Ihr Jitsi Meet-Server im Internet unter Ihrer Domain aktiv. Sie können neue Meetings erstellen und Benutzer einladen, indem Sie die Meeting-URL teilen.
Die Anwendung ist jedoch nicht sicher. Jeder, der Ihre Domain besucht, kann ein neues Jitsi-Meeting erstellen, das auf Ihrem Server gehostet wird.
Um unbefugten Zugriff zu verhindern, aktivieren die folgenden Schritte die Authentifizierung, sodass ein Benutzername und ein Kennwort erforderlich sind, bevor ein Meeting erstellt wird.
Prosodie konfigurieren
Prosody ist eine Komponente von Jitsi Meet, die eine XMPP-Kommunikation zwischen Benutzern und dem Server bereitstellt. Die folgenden Schritte konfigurieren Prosody, um Benutzer zu authentifizieren, die ein Jitsi-Meeting erstellen.
Erstellen Sie eine Gastdomäne
Wechseln Sie auf dem VPS zum Benutzer root.
sudo su
Wechseln Sie in das Verzeichnis /etc/prosody/conf.avail/.
cd /etc/prosody/conf.avail/
Öffnen Sie die Datei fqdn.cfg.lua in einem Texteditor.
nano video.mydomain.com.cfg.lua
Ändern Sie im Abschnitt VirtualHost für Ihre Domäne die Authentifizierungsmethode von anonym zu internal_plain.
VirtualHost "video.mydomain.com" ... authentication = "internal_plain" ...
Fügen Sie über dem vorhandenen VirtualHost-Abschnitt für Ihre Website einen neuen VirtualHost-Abschnitt ein. Der Name dieses VirtualHost ist guest.fqdn. Fügen Sie beispielsweise die folgenden Zeilen ein, um einen neuen Gast-VirtualHost für die Site video.mydomain.com zu erstellen.
VirtualHost "guest.video.mydomain.com" authentication = "anonymous" c2s_require_encryption = false modules_enabled = { "bosh"; "pubsub"; "ping"; "speakerstats"; "turncredentials"; "conference_duration"; }
Speichern Sie die Datei und verlassen Sie den Editor. Beenden Sie dann das Root-Konto.
exit
Installieren Sie das Modul storage_memory
Ein optionales Prosody-Modul, storage_memory, ermöglicht eine temporäre Speicherung von dauerhaften Informationen, einschließlich Benutzersitzungsdaten. Der Quellcode des Moduls ist im Mercurial-Repository von Prosody verfügbar.
Installieren Sie Mercurial auf Ihrem VPS.
sudo apt install -y mercurial
Erstellen Sie ein temporäres Verzeichnis und wechseln Sie dorthin.
mkdir ~/temp && cd ~/temp
Klonen Sie das Prosody-Modul-Repository in ein neues Verzeichnis, prosody_modules.
hg clone 'https://hg.prosody.im/prosody-modules/' prosody-modules
Datei kopieren mod_storage_memory.lua zum Verzeichnis /usr/lib/prosody/modules.
sudo cp prosody-modules/mod_storage_memory/*.lua /usr/lib/prosody/modules/.
Erstellen Sie eine anonyme Jitsi-Domäne
Konfigurieren Sie Jitsi Meet so, dass eine anonyme Domäne für Benutzer verwendet wird, die zu einem Meeting eingeladen werden.
Öffnen Sie die Datei /etc/jitsi/meet/fqdn-config.js in einem Texteditor.
sudo nano /etc/jitsi/meet/video.mydomain.com-config.js
In dem Konfig variabel, in der Gastgeber Schlüssel, fügen Sie einen neuen Schlüssel mit dem Namen hinzu anonymeDomänemit dem Wert Gast.fqdn.
Wenn Ihre Gastdomain beispielsweise guest.video.mydomain.com lautet, sollte der Eintrag wie folgt aussehen. Beachten Sie, dass die Zeile mit einem Komma endet.
var config = { ... hosts: { ... domain: 'video.mydomain.com', anonymousdomain: 'guest.video.mydomain.com', ... }, ... }
Speichern Sie die Datei und schließen Sie den Texteditor.
Jicofo konfigurieren
Jicofo (Jitsi Conference Focus) ist eine Komponente von Jitsi Meet, die Benutzersitzungen verwaltet. Die folgenden Schritte konfigurieren das SIP (Session Initiation Protocol) von Jicofo für die Verwendung der XMPP-Authentifizierung.
Öffne die Datei /etc/jitsi/jicofo/sip-communicator.properties in einem Texteditor.
sudo nano /etc/jitsi/jicofo/sip-communicator.properties
Fügen Sie eine neue Zeile mit der folgenden Konfiguration hinzu. Ersetzen video.meinedomain.com mit Ihrem FQDN.
org.jitsi.jicofo.auth.URL=XMPP:video.mydomain.com
Speichern Sie die Datei und verlassen Sie den Editor.
Erstellen Sie Jitsi-Administratorbenutzer
Der Zugriff auf die Prosodie-Verwaltungsfunktionen erfolgt über die prosodyctl Befehl (“Prosodiesteuerung”).
Führen Sie den Befehl aus, um einen Benutzer/ein Kennwort für Jitsi Meet zu erstellen Prosodyctl-Register Benutzername FQDN-Passwort.
sudo prosodyctl register alice video.mydomain.com secretpassword123
Wiederholen Sie diesen Befehl für alle weiteren Benutzer, die Sie erstellen möchten.
Nur Benutzer, die neue Meetings erstellen, benötigen ein Konto. Das Herstellen einer Verbindung zu einem vorhandenen Meeting erfordert keine Autorisierung.
Dienste neu starten
Um die neue Konfiguration anzuwenden, starten Sie die betroffenen Dienste neu.
sudo systemctl restart {prosody,jicofo,jitsi-videobridge2,nginx}
Jetzt können nur Benutzer mit der richtigen Kombination aus Benutzername und Passwort neue Meetings auf Ihrem Jitsi-Server erstellen.
Erstellen neuer Besprechungen
Befolgen Sie diese Schritte, um neue Meetings auf Ihrem Jitsi-Server zu erstellen.
In einem Browser
Öffnen Sie auf einem Laptop oder Desktop-Computer einen Browser mit der Adresse Ihres Jitsi-Servers.
Geben Sie unter Neues Meeting starten einen Namen für das Meeting ein und klicken Sie auf Los.
Dieser Name erscheint in der URL, die Sie mit eingeladenen Personen teilen. Bei Besprechungsnamen wird nicht zwischen Groß- und Kleinschreibung unterschieden.
Klicken Sie auf Ich bin der Gastgeber.
Geben Sie den von Ihnen erstellten Jitsi-Benutzernamen und das Passwort ein und klicken Sie auf OK.
Bei erfolgreicher Authentifizierung geht die Konferenz sofort live.
Sie müssen sich nur einmal pro Browsersitzung authentifizieren. Um Ihr aktuelles Login zu vergessen, löschen Sie Ihre Browser-Cookies, siehe: Wie aktiviere, deaktiviere, zeige oder lösche ich Internet-Cookies?
In der mobilen App
Holen Sie sich die Jitsi-App für iOS im App Store oder für Android im Play Store.
Öffnen Sie die Jitsi Meet-App. Tippen Sie auf die Menüschaltfläche und wählen Sie Einstellungen.
Geben Sie in den Einstellungen unter Server-URL die Domäne Ihres Jitsi-Servers ein.
Gehen Sie zurück zum Hauptfenster der App. Geben Sie einen neuen Meeting-Namen ein und tippen Sie auf „Erstellen/beitreten“.
Tippen Sie auf OK.
Geben Sie den von Ihnen erstellten Jitsi-Benutzernamen und das Passwort ein und tippen Sie auf OK.
Wenn die App bei „Verbinden“ einzufrieren scheint, warten Sie einige Sekunden, bis die Authentifizierung abgeschlossen ist.