Betriebssystem: Debian 12
Benötigte Ressourcen:
CPU:2 vCore
RAM:2 GB
SSD:60 GB
Benötigte Ports:
HTTP Redirect/ SSL Certificate Renewal | TCP | 80 | Nginx | Public |
HTTPS/Bosh/Secure Websocket | TCP | 443 | Nginx | Public |
SSH (optional) | TCP | 22 | OS | Private |
Media Traffic | UDP | 10000 | JVB | Public |
Media Traffic in Restricted Firewalls | TCP | 4443 | JVB | Public |
For XMPP components (eg: Jicofo)* | TCP | 5347 | Prosody | Private |
For external XMPP clients (eg: JVB, Jibri)** | TCP | 5222 | Prosody | Private |
sudo apt update -y && sudo apt upgrade -y
curl -fsSL https://download.jitsi.org/jitsi-key.gpg.key -o /etc/apt/keyrings/jitsi-key.gpg.key
echo "deb [signed-by=/etc/apt/keyrings/jitsi-key.gpg.key] https://download.jitsi.org stable/" | tee /etc/apt/sources.list.d/jitsi.list
echo "deb [signed-by=/etc/apt/keyrings/jitsi-key.gpg.key] https://download.jitsi.org stable/" | tee /etc/apt/sources.list.d/jitsi.list
sudo apt update -y
sudo apt install jitsi-meet -y
gib deine domain ein in die abfragemaske ein
sudo apt install jitsi-meet -y
Als nächstes kommen drei screens:
1. SSL zertifikat (erste option wählen) obwohl nichts da steht
2. mail eingeben
3. Telefonie ablehnen
sudo nano -w /etc/jitsi/meet/jitsi.deine_domain.de-config.js
authentication = internal_plain
VirtualHost "guest.jitsi.crosstalksolutions.com"
authentication = "anonymous"
c2s_require_encryption = false
anonymousdomain: 'guest.jitsi.deine_domain.de',
sudo nano /etc/jitsi/jicofo/jicofo.conf
Füge die Authentifizierungs-Einstellungen hinzu: In der Sektion [jicofo] sollte ein Block [authentication] vorhanden sein. Falls nicht, füge diesen hinzu oder ergänze die Werte:
jicofo {
authentication {
enabled = true
type = "XMPP"
login-url = "jitsi.yourdomain.com"
}
}
sudo systemctl restart prosody
sudo systemctl restart jicofo
sudo systemctl restart jitsi-videobridge2
sudo prosodyctl register john jitsi.crosstalksolutions.com 12345
Das der Nutzername ist dann: john@jitsi.deine_domain.de
Das passwort bleibt gleich
weitere configs unter: https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-configuration
sudo tee /usr/share/jitsi-meet/css/no-crop.css >/dev/null <<'CSS'
/* Verhindert Cropping/Zoom überall */
.videocontainer video,
.largeVideoContainer video,
#largeVideo,
video#largeVideo {
object-fit: contain !important;
}
/* neutrale Ränder, falls Balken entstehen */
.videocontainer,
.largeVideoContainer {
background: #000 !important;
overflow: hidden;
}
CSS
CSS einbinden (Link in index.html setzen)
Backup + Link direkt nach all.css einfügen:
sudo cp /usr/share/jitsi-meet/index.html /usr/share/jitsi-meet/index.html.bak
sudo sed -i '/css\/all\.css/a \ \ \ \ ' /usr/share/jitsi-meet/index.html
Browser-Cache umgehen / neu laden
Seite neu laden (Strg+F5). Bei Bedarf ?v=2 an die URL hängen.
Hinweis: Bei künftigen Jitsi-Updates kann index.html überschrieben werden. Dann einfach die sed-Zeile erneut ausführen.