Jitsi Meet - Przewodnik na start
Jitsi Meet to platforma do wideokonferencji o otwartym kodzie źródłowym, nad którą masz pełną kontrolę. Uczestnicy nie muszą zakładać konta – wystarczy udostępnić link i rozpocząć rozmowę. Ten serwer jest dostarczany z w pełni zainstalowanym i gotowym do użycia Jitsi Meet, dostępnym pod adresem IP.
Krok 1 – Sprawdź, czy Jitsi Meet działa poprawnie
Adres IP serwera oraz hasło użytkownika root znajdują się w sekcji Informacje o serwerze na karcie Przegląd w panelu klienta. Otwórz w przeglądarce adres https://your.server.ip. Przeglądarka wyświetli ostrzeżenie dotyczące certyfikatu z podpisem własnym (self-signed) – jest to normalne, przejdź dalej do strony.
Na stronie powitalnej Jitsi Meet:
- Wpisz nazwę spotkania (np. „team-standup” lub „project-review”)
- Kliknij Start meeting
- Po wyświetleniu komunikatu zezwól przeglądarce na dostęp do kamery i mikrofonu
- Udostępnij link do spotkania uczestnikom – mogą dołączyć bezpośrednio z przeglądarki, bez instalowania dodatkowego oprogramowania
Uwaga: Domyślnie każda osoba posiadająca link może utworzyć spotkanie i do niego dołączyć. Uwierzytelnianie nie jest wymagane. Aby ograniczyć dostęp, zapoznaj się z sekcją „Włączanie uwierzytelniania” poniżej.
Jeżeli serwer został umieszczony za routerem VyOS w sieci prywatnej, skonfiguruj przekierowanie portów 22 (SSH), 80 (HTTP), 443 (HTTPS) oraz 10000/UDP (media). Port UDP jest kluczowy – bez niego uczestnicy będą mogli dołączyć do spotkania, ale dźwięk i obraz nie będą działać.
Krok 2 – Skonfiguruj domenę i certyfikat SSL (zalecane)
Jitsi Meet działa od razu po adresie IP. Aby korzystać z własnej domeny z zaufanym certyfikatem SSL, skieruj rekord A swojej domeny na adres IP serwera, a następnie połącz się przez SSH i uruchom:
ssh root@your.server.ip /opt/setup/get-ssl.sh your-domain.comSkrypt pobierze certyfikat Let’s Encrypt i automatycznie skonfiguruje Jitsi Meet do pracy z wybraną domeną. Po zakończeniu konfiguracji uzyskasz dostęp do serwera pod adresem https://your-domain.com bez ostrzeżeń przeglądarki. Automatyczne odnawianie certyfikatu jest już skonfigurowane.
Po instalacji
Włączanie uwierzytelniania
Domyślnie każdy użytkownik może tworzyć spotkania na Twoim serwerze. Aby wymagać uwierzytelniania od osób tworzących spotkania, jednocześnie umożliwiając gościom dołączanie za pomocą linku, edytuj konfigurację Prosody:
# Edytuj konfigurację Prosody nano /etc/prosody/conf.avail/your-domain.cfg.lua # Zmień metodę uwierzytelniania z „jitsi-anonymous” na „internal_hashed”: # authentication = „internal_hashed” # Dodaj VirtualHost dla gości na końcu pliku: # VirtualHost „guest.your-domain” # authentication = „anonymous” # modules_enabled = { „turncredentials”; } # c2s_require_encryption = falseNastępnie zaktualizuj konfigurację Jitsi Meet, aby włączyć domenę dla gości:
# Edytuj konfigurację Jitsi Meet nano /etc/jitsi/meet/your-domain-config.js # Odkomentuj lub dodaj wpis anonymousdomain: # anonymousdomain: 'guest.your-domain’,Skonfiguruj Jicofo i utwórz użytkownika z uprawnieniami do tworzenia spotkań:
# Edytuj konfigurację Jicofo – dodaj wewnątrz sekcji jicofo { authentication { nano /etc/jitsi/jicofo/jicofo.conf # enabled = true # type = XMPP # login-url = „your-domain” # Utwórz użytkownika uwierzytelnionego prosodyctl register YOUR_USERNAME your-domain YOUR_PASSWORD # Uruchom ponownie wszystkie usługi systemctl restart prosody jicofo jitsi-videobridge2Od tej chwili tylko uwierzytelnieni użytkownicy będą mogli tworzyć spotkania, natomiast goście nadal będą mogli dołączać za pomocą udostępnionego linku.
Dostosowywanie konfiguracji
Najczęściej używane ustawienia w pliku /etc/jitsi/meet/your-domain-config.js:
- Wyłącz kamerę domyślnie: startWithVideoMuted: true
- Wyłącz mikrofon domyślnie: startWithAudioMuted: true
- Ustaw domyślny język: defaultLanguage: 'en’
- Ogranicz liczbę strumieni wideo: channelLastN: 20
Po wprowadzeniu zmian uruchom ponownie usługi: systemctl restart prosody jicofo jitsi-videobridge2 nginx
Zapora sieciowa i porty
| Port | Protokół | Przeznaczenie |
|---|---|---|
| 443 | TCP | HTTPS (interfejs WWW) |
| 80 | TCP | HTTP (przekierowanie do HTTPS) |
| 10000 | UDP | Transmisja obrazu i dźwięku (JVB) |
Ważne: Port UDP 10000 musi być otwarty, aby działał obraz i dźwięk. Jeśli uczestnicy mogą dołączyć do spotkania, ale nie mają obrazu ani dźwięku, sprawdź, czy ten port nie jest blokowany.
Fail2Ban – Ochrona przed atakami brute-force
Serwer jest dostarczany z prekonfigurowanym Fail2Ban, który chroni usługę SSH przed atakami brute-force.
| Reguła | Maksymalna liczba prób | Czas blokady |
|---|---|---|
| SSH | 5 nieudanych logowań | 10 minut |
Przydatne polecenia:
# Sprawdź zablokowane adresy IP fail2ban-client status sshd # Odblokuj adres IP fail2ban-client set sshd unbanip 1.2.3.4Jeśli przypadkowo zablokujesz sobie dostęp, połącz się z serwerem przez konsolę VNC w panelu klienta i odblokuj swój adres IP.
Zarządzanie usługami
# Sprawdź status wszystkich usług Jitsi systemctl status prosody jicofo jitsi-videobridge2 nginx # Uruchom ponownie wszystkie usługi systemctl restart prosody jicofo jitsi-videobridge2 nginx # Wyświetl logi journalctl -u jitsi-videobridge2 -f journalctl -u jicofo -f journalctl -u prosody -fAktualizacje
Jitsi Meet jest instalowany z oficjalnego repozytorium:
apt update && apt upgrade -yPrzed wykonaniem aktualizacji zaleca się utworzenie migawki (snapshotu).
Dołączone oprogramowanie
| Komponent | Szczegóły |
|---|---|
| Ubuntu | 24.04 LTS |
| Jitsi Meet | Najnowsza wersja (interfejs WWW) |
| Jitsi Videobridge | Najnowsza wersja (serwer mediów) |
| Jicofo | Najnowsza wersja (koordynator konferencji) |
| Prosody | Serwer XMPP |
| Nginx | Reverse proxy (HTTPS) |
| Fail2Ban | Ochrona przed atakami brute-force |
Rozwiązywanie problemów
| Problem | Rozwiązanie |
|---|---|
| Przeglądarka wyświetla ostrzeżenie o certyfikacie SSL | Jest to normalne w przypadku domyślnego certyfikatu z podpisem własnym (self-signed). Skonfiguruj domenę i uruchom /opt/setup/get-ssl.sh your-domain.com, aby uzyskać zaufany certyfikat. |
| Brak dźwięku lub obrazu podczas spotkań | Upewnij się, że port UDP 10000 jest otwarty. Sprawdź status JVB: systemctl status jitsi-videobridge2. |
| Strona spotkania nie ładuje się | Sprawdź usługę Nginx: systemctl status nginx. Przejrzyj logi: journalctl -u nginx –no-pager -n 50. |
| Uczestnicy nie mogą dołączyć do spotkania | Sprawdź, czy wszystkie usługi są uruchomione: systemctl status prosody jicofo jitsi-videobridge2. W razie potrzeby uruchom je ponownie. |
| Słaba jakość obrazu przy dużej liczbie uczestników | Zwiększ zasoby serwera do co najmniej 4 vCPU i 4 GB RAM. Ustaw parametr channelLastN w pliku config.js, aby ograniczyć liczbę strumieni wideo. |
| Certyfikat SSL nie odnawia się automatycznie | Przetestuj odnowienie: certbot renew –dry-run. Sprawdź harmonogram: systemctl status certbot.timer. |
| Adres IP został zablokowany przez Fail2Ban | Skorzystaj z konsoli VNC w panelu klienta, aby odblokować swój adres IP. |
| Zapomniane hasło użytkownika root | Skorzystaj z konsoli VNC w panelu klienta, aby je zresetować. |