Ricerca nel sito web

Come installare la soluzione di videoconferenza Jitsi Meet su Debian 10


Su questa pagina

  1. Prerequisiti
  2. Per iniziare
  3. Installa il server Web Nginx
  4. Installa Jitsi Meet
  5. Proteggi Jitsi Meet con Lets Encrypt SSL
  6. Accedi a Jitsi Meet
  7. Imposta l'autenticazione utente per Jitsi Meet
  8. Conclusione

Jitsi Meet è un'applicazione di videoconferenza gratuita e open source che può essere utilizzata come applicazione autonoma o incorporata nella tua applicazione web. Si basa su WebRTC e fornisce sale per videoconferenze con più persone senza installare software aggiuntivo o estensioni del browser.

Caratteristiche

  • Condivisione dello schermo, chat di gruppo, presentazioni e altro ancora
  • Integrazione con Google e Microsoft Calendar
  • Invita altri utenti a una conferenza tramite un semplice URL
  • Supporta la crittografia TLS end-to-end
  • Disponibilità multipiattaforma universale
  • Modifica collaborativa dei documenti

In questo tutorial, ti mostreremo come installare l'applicazione di videoconferenza Jitsi Meet su Debian 10.

Prerequisiti

  • Un server che esegue Debian 10 con un minimo di 4 GB di RAM.
  • Un nome di dominio valido viene puntato con l'ip del tuo server. In questo tutorial, utilizzeremo il sottodominio jitsi.linuxbuz.com del dominio linuxbuz.com.
  • Una password di root è impostata sul tuo server.

Iniziare

Prima di iniziare, è una buona idea aggiornare il pacchetto di sistema all'ultima versione. Puoi aggiornarli usando il seguente comando:

apt-get update -y
apt-get upgrade -y

Una volta aggiornati tutti i pacchetti, riavvia il sistema per applicare le modifiche.

Installa il server Web Nginx

Prima di installare Jitsi Meet, dovrai installare il server web Nginx nel tuo sistema. Puoi installarlo usando il seguente comando:

apt-get install nginx -y

Una volta installato Nginx, puoi procedere al passaggio successivo.

Installa Jitsi Meet

Innanzitutto, installa le dipendenze richieste nel tuo sistema con il seguente comando:

apt-get install gnupg2 apt-transport-https software-properties-common -y

Una volta installato, scarica e aggiungi la chiave GPG per Jitsi eseguendo il seguente comando:

wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | apt-key add -

Successivamente, aggiungi il repository Jitsi con il seguente comando:

sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"

Una volta aggiunto il repository, aggiorna il repository con il seguente comando:

apt-get update -y

Successivamente, installa Jitsi Meet eseguendo il seguente comando:

apt-get install jitsi-meet

Durante l'installazione ti verrà chiesto di fornire l'FQDN del tuo server come mostrato di seguito:

Fornisci il tuo nome di dominio valido e premi Invio. Ti verrà chiesto del certificato SSL come mostrato di seguito:

Scegli l'opzione Genera un nuovo certificato autofirmato (in seguito avrai la possibilità di ottenere un certificato Lets Encrypt) e premi Invio per completare l'installazione.

Al termine dell'installazione, è possibile procedere al passaggio successivo.

Proteggi Jitsi Meet con Lets Encrypt SSL

A questo punto, Jitsi Meet è installato nel tuo sistema. Successivamente, dovrai generare un certificato SSL Let's Encrypt per il tuo server.

Per impostazione predefinita, Certbot non è disponibile nel repository predefinito di Debian 10. Quindi dovrai aggiungere il repository Certbot nel tuo sistema.

Puoi aggiungerlo con il seguente comando:

echo "deb http://ftp.debian.org/debian buster-backports main" >> /etc/apt/sources.list

Successivamente, aggiorna il repository e installa il client Certbot per Nginx con il seguente comando:

apt-get update -y
apt-get install python3-certbot-nginx -t buster-backports

Puoi farlo eseguendo il seguente script:

/usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Ti verrà chiesto di fornire il tuo indirizzo e-mail come mostrato di seguito:

-------------------------------------------------------------------------
This script will:
- Need a working DNS record pointing to this machine(for domain jisti.linuxbuz.com)
- Download certbot-auto from https://dl.eff.org to /usr/local/sbin
- Install additional dependencies in order to request Let’s Encrypt certificate
- If running with jetty serving web content, will stop Jitsi Videobridge
- Configure and reload nginx or apache2, whichever is used
- Configure the coturn server to use Let's Encrypt certificate and add required deploy hooks
- Add command in weekly cron job to renew certificates regularly

You need to agree to the ACME server's Subscriber Agreement (https://letsencrypt.org/documents/LE-SA-v1.1.1-August-1-2016.pdf) 
by providing an email address for important account notifications
Enter your email and press [ENTER]: 

Fornisci il tuo indirizzo e-mail valido e premi Invio per continuare. Una volta che il processo è stato completato con successo, dovresti vedere il seguente output:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator webroot, Installer None
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for jisti.linuxbuz.com
Using the webroot path /usr/share/jitsi-meet for all unmatched domains.
Waiting for verification...
Cleaning up challenges
Running deploy-hook command: /etc/letsencrypt/renewal-hooks/deploy/0000-coturn-certbot-deploy.sh
Output from deploy-hook command 0000-coturn-certbot-deploy.sh:
Configuring turnserver

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/jisti.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/jisti.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-07-28. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot-auto
   again. To non-interactively renew *all* of your certificates, run
   "certbot-auto renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Una volta terminato, puoi procedere al passaggio successivo.

Accedi a Jitsi Meet

A questo punto, la tua applicazione web Jitsi Meet è protetta con Lets Encrypt SSL.

Apri il tuo browser web e digita l'URL https://jitsi.linuxbuz.com. Verrai reindirizzato alla seguente schermata:

Fornisci il nome della conferenza e fai clic sul pulsante VAI. Ti verrà chiesto di consentire un microfono e una videocamera come mostrato di seguito:

Fare clic sul pulsante Consenti. Verrai reindirizzato alla sala conferenze come mostrato di seguito:

Una volta terminato, puoi procedere al passaggio successivo.

Imposta l'autenticazione utente per Jitsi Meet

Per impostazione predefinita, Jitsi Meet consente a chiunque di visitare il tuo server Jitsi, creare una stanza e avviare una riunione. Questo non è auspicabile per gli utenti non autorizzati. Quindi dovrai configurare l'autenticazione utente per Jitsi Meet in modo che solo gli utenti registrati possano creare nuove sale riunioni.

Puoi configurarlo modificando il file jitsi.linuxbuz.com.cfg.lua.

nano /etc/prosody/conf.avail/jitsi.linuxbuz.com.cfg.lua

Trova la seguente riga:

      authentication = "anonymous"

E sostituirlo con la seguente riga:

      authentication = "internal_plain"

Successivamente, aggiungi le seguenti righe alla fine del file:

VirtualHost "guest.jitsi.linuxbuz.com"
    authentication = "anonymous"
    c2s_require_encryption = false

Salva e chiudi il file quando hai finito.

La configurazione precedente consentirà agli utenti anonimi di partecipare alle sale riunioni create da un utente autenticato.

Successivamente, apri il file di configurazione di Jitsi Meet /etc/jitsi/meet/jitsi.linuxbuz.com-config.js come mostrato di seguito:

nano /etc/jitsi/meet/jitsi.linuxbuz.com-config.js

Trova la seguente riga:

        // anonymousdomain: 'guest.example.com',

E sostituirlo con la seguente riga:

        anonymousdomain: 'guest.jitsi.linuxbuz.com',

Salva e chiudi il file quando hai finito.

Successivamente, apri il file di configurazione di Jicofo come mostrato di seguito:

nano /etc/jitsi/jicofo/sip-communicator.properties

Aggiungi la seguente riga alla fine di questo file:

org.jitsi.jicofo.auth.URL=XMPP:jitsi.linuxbuz.com

Salva e chiudi il file quando hai finito.

A questo punto, Jitsi Meet è ora configurato in modo che solo gli utenti registrati possano creare sale riunioni. Una volta creata una sala conferenze, qualsiasi utente può accedervi senza fornire alcuna credenziale. Hai solo bisogno dell'indirizzo univoco della sala conferenze e di una password facoltativa impostata dal creatore della sala.

Successivamente, dovrai creare un nuovo account utente per Jitsi e impostarne la password.

Puoi crearlo con il seguente comando:

prosodyctl register jitsiuser jitsi.linuxbuz.com password

È ora possibile utilizzare l'utente creato in precedenza per creare una sala riunioni.

Infine, riavvia i servizi Jitsi Meet eseguendo il seguente comando:

systemctl restart prosody
systemctl restart jicofo
systemctl restart jitsi-videobridge2

Ora, verifica lo stato di tutti i servizi con il seguente comando:

systemctl status jitsi-videobridge2 prosody jicofo

Dovresti vedere il seguente output:

? jitsi-videobridge2.service - Jitsi Videobridge
   Loaded: loaded (/lib/systemd/system/jitsi-videobridge2.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-04-29 16:17:33 UTC; 49s ago
  Process: 11623 ExecStartPost=/bin/bash -c echo $MAINPID > /var/run/jitsi-videobridge/jitsi-videobridge.pid (code=exited, status=0/SUCCESS)
 Main PID: 11622 (java)
    Tasks: 39 (limit: 65000)
   Memory: 161.0M
   CGroup: /system.slice/jitsi-videobridge2.service
           ??11622 java -Xmx3072m -XX:+UseConcMarkSweepGC -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dnet.java.sip.communicator.SC_

Apr 29 16:17:33 debian10 systemd[1]: Starting Jitsi Videobridge...
Apr 29 16:17:33 debian10 systemd[1]: Started Jitsi Videobridge.

? prosody.service - Prosody XMPP Server
   Loaded: loaded (/lib/systemd/system/prosody.service; enabled; vendor preset: enabled)
   Active: active (running) since Wed 2020-04-29 16:17:21 UTC; 1min 1s ago
     Docs: https://prosody.im/doc
 Main PID: 11537 (lua5.2)
    Tasks: 1 (limit: 4701)
   Memory: 14.1M
   CGroup: /system.slice/prosody.service
           ??11537 lua5.2 /usr/bin/prosody

Apr 29 16:17:21 debian10 systemd[1]: Started Prosody XMPP Server.

? jicofo.service - LSB: Jitsi conference Focus
   Loaded: loaded (/etc/init.d/jicofo; generated)
   Active: active (running) since Wed 2020-04-29 16:17:27 UTC; 56s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 11555 ExecStart=/etc/init.d/jicofo start (code=exited, status=0/SUCCESS)
    Tasks: 80 (limit: 4701)
   Memory: 163.4M
   CGroup: /system.slice/jicofo.service
           ??11564 java -Xmx3072m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/tmp -Dnet.java.sip.communicator.SC_HOME_DIR_LOCATION=/etc/j

Apr 29 16:17:27 debian10 systemd[1]: Starting LSB: Jitsi conference Focus...

Ora apri il tuo browser web e digita l'URL https://jitsi.linuxbuz.com. Dovresti vedere la seguente schermata:

Fornisci il nome della tua stanza e fai clic sul pulsante VAI. Ti verrà chiesto di fornire un nome utente e una password come mostrato di seguito:

Fornisci il tuo nome utente, password e fai clic sul pulsante OK.

Conclusione

Congratulazioni! hai installato correttamente Jitsi Meet sul server Debian 10. Ora puoi condividere il link, impostare una password, configurare la qualità audio e video e molto altro tramite il browser web.