References
Jitsi
Prerequisites
- A fresh Debian server (root or sudo access)
- A domain name (e.g. meet.yourdomain.com) pointing to your server
- Open ports: 80 (http), 443 (https), 10000/udp (media traffic)
Install Jitsi Meet
1
2
| sudo apt update && sudo apt upgrade -y
sudo apt install -y default-jdk gnupg2 curl
|
Add Jitsi Repository
1
2
| curl https://download.jitsi.org/jitsi-key.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/jitsi-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/" | sudo tee /etc/apt/sources.list.d/jitsi-stable.list
|
or create /etc/apt/sources.list.d/jitsi.sources file
1
| sudo nano /etc/apt/sources.list.d/jitsi.sources
|
1
2
3
4
5
6
| Types: deb
URIs: https://download.jitsi.org
Suites: stable/
Components:
Architectures: amd64
Signed-By: /usr/share/keyrings/jitsi-keyring.gpg
|
Add the GPG Key (required)
1
2
3
| sudo mkdir -p /usr/share/keyrings
curl -fsSL https://download.jitsi.org/jitsi-key.gpg.key | \
gpg --dearmor | sudo tee /usr/share/keyrings/jitsi-keyring.gpg > /dev/null
|
Update package list
Install Jitsi
1
| sudo apt install -y jitsi-meet
|
During installation:
- Enter your domain (e.g. meet.yourdomain.com)
- Choose: “Generate a new self-signed certificate” (temporary)
Install SSL (Let’s Encrypt)
1
| sudo /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
|
Enter your email. This will automatically configure HTTPS.
1
2
3
4
| sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 10000/udp
sudo ufw enable
|
Optional - Enable Authentication (secure meetings)
Prosody config:
1
| sudo nano /etc/prosody/conf.avail/meet.yourdomain.com.cfg.lua
|
Enable authentication:
1
2
| VirtualHost "meet.yourdomain.com"
authentication = "internal_hashed"
|
For guest access:
1
2
3
| VirtualHost "guest.meet.yourdomain.com"
authentication = "anonymous"
c2s_require_encryption = false
|
Register user:
1
| sudo prosodyctl register youruser meet.yourdomain.com 'yourpassword'
|
Jicofo settings (Tell Jicofo, login is mandatory):
1
2
3
4
5
6
7
| jicofo {
authentication: {
enabled: true
type: XMPP
login-url: meet.yourdomain.com
}
}
|
Jitsi config:
1
| sudo nano /etc/jitsi/meet/meet.yourdomain.com-config.js
|
Add this
1
| anonymousdomain: 'guest.meet.yourdomain.com',
|
Restart services:
1
2
3
| sudo systemctl restart prosody
sudo systemctl restart jicofo
sudo systemctl restart jitsi-videobridge2
|
Access Jitsi
As admin:
- Open your browser and go to: https://meet.yourdomain.com
- Create a room named
room1 - Login popup will be appeared. Enter your username and password.
As guest:
Monitoring
- Use at least 2 GB RAM (4 GB recommended for multiple users)
- For production, consider TURN server (for NAT traversal)
1
| sudo systemctl status jitsi-videobridge2
|