GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Installez Jitsi Meet sur Ubuntu 20.04 - Vidéoconférence auto-hébergée

Ce tutoriel va vous montrer comment installer Jitsi Meet sur le serveur Ubuntu 20.04. Jitsi Meet est un logiciel de vidéoconférence open source gratuit qui fonctionne sous Linux, macOS, Windows, iOS et Android. Si vous ne faites pas confiance à Zoom, vous pouvez exécuter votre propre plateforme de visioconférence sur votre propre serveur.

Caractéristiques de Jitsi Meet

  • Entièrement gratuit
  • Partagez l'écran de votre ordinateur avec d'autres personnes.
  • Le mode présentateur vous permet de partager votre écran et votre caméra en même temps, afin que les participants puissent voir le présentateur et leur langage corporel tout au long de la présentation.
  • Vous pouvez partager l'audio du système tout en partageant votre écran.
  • Vous pouvez désigner des utilisateurs autorisés comme modérateurs. Un modérateur peut couper le son de chaque participant en un seul clic.
  • La communication sur le réseau est cryptée à l'aide de DTLS-SRTP.
  • Cryptage de bout en bout (travail en cours)
  • Vous pouvez définir un mot de passe pour votre conférence afin d'empêcher des inconnus d'entrer au hasard.
  • Enregistrez la réunion/conférence et enregistrez-la dans Dropbox.
  • Diffusion en direct sur YouTube et stockage de l'enregistrement sur YouTube.
  • Applications Android et iOS
  • Chat par SMS
  • Partager un document texte
  • Appel téléphonique à une conférence
  • Composer un numéro vers un participant par téléphone
  • Vous pouvez intégrer un appel Jits Meet dans n'importe quelle page Web avec seulement quelques lignes de code.

Conditions d'installation de Jitsi Meet sur Ubuntu 20.04

Pour exécuter Jitsi Meet, vous avez besoin d'un serveur avec au moins 1 Go de RAM. Vous pouvez cliquer sur ce lien de parrainage pour créer un compte chez Vultr et obtenir un crédit gratuit de 50 $ (pour les nouveaux utilisateurs uniquement). Une fois que vous avez un compte chez Vultr, installez Ubuntu 20.04 sur votre serveur et suivez les instructions ci-dessous. Lorsque vous avez des dizaines d'utilisateurs, envisagez de mettre à niveau le matériel de votre serveur. Le serveur doit être proche de vos utilisateurs, sinon le retard sera perceptible lors des réunions en ligne.

Vous avez également besoin d'un nom de domaine. J'ai enregistré mon nom de domaine chez NameCheap car le prix est bas et ils offrent une protection de confidentialité whois gratuite à vie.

Étape 1 :Installez Jitsi Meet à partir du référentiel de packages officiel

Jitsi Meet n'est pas inclus dans le référentiel Ubuntu par défaut. Nous pouvons l'installer à partir du référentiel de packages officiel Jitsi, qui contient également plusieurs autres packages logiciels utiles. Connectez-vous à votre serveur via SSH, puis exécutez la commande suivante pour ajouter le référentiel Jitsi officiel.

echo 'deb https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list

Importez la clé publique Jitsi, afin que le gestionnaire de packages APT puisse vérifier l'intégrité des packages téléchargés à partir de ce référentiel.

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

Parce que le référentiel Jitsi nécessite une connexion HTTPS, nous devons donc installer apt-transport-https package pour qu'APT établisse une connexion HTTPS au référentiel Jitsi.

sudo apt install apt-transport-https

Ensuite, mettez à jour l'index des packages locaux et installez Jitsi Meet sur Ubuntu.

sudo apt update sudo apt install jitsi-meet

Lors de l'installation, vous devez entrer un nom d'hôte pour votre instance Jitsi. Il s'agit du nom d'hôte qui apparaîtra dans la barre d'adresse du navigateur Web lorsque les participants rejoindront votre visioconférence. Vous pouvez utiliser un nom d'hôte descriptif comme meet.example.com .

Dans l'écran suivant, vous pouvez choisir de générer un nouveau certificat TLS auto-signé, afin d'obtenir et d'installer ultérieurement un certificat Let's Encryption de confiance.

Le processus d'installation configurera certains paramètres du noyau Linux, qui sont enregistrés dans /etc/sysctl.d/20-jvb-udp-buffers.conf dossier. Une fois l'installation terminée, Jitsi Meet démarrera automatiquement. Vous pouvez vérifier son statut avec :

statut systemctl jitsi-videobridge2

Exemple de sortie :

● jitsi-videobridge2.service - Jitsi Videobridge chargé :chargé (/lib/systemd/system/jitsi-videobridge2.service ; activé ; préréglage du fournisseur :activé) Actif :actif (en cours d'exécution) depuis le samedi 2020-04-25 03 :07:16 UTC ; Il y a 8min PID principal :3721 (java) Tâches :35 (limite :65 000) Mémoire :168,5 Mo CGroup :/system.slice/jitsi-videobridge2.service └─3721 java -Xmx3072m -XX :+UseConcMarkSweepGC -XX :+HeapDumpOnOutOfMemoryError - XX:HeapDumpPath>

Astuce :si la commande ci-dessus ne se ferme pas immédiatement, vous pouvez appuyer sur la touche Q pour la faire quitter.

Le jitsi-meet package a également extrait d'autres packages en tant que dépendances, telles que

  • openjdk-8-jre-headless :environnement d'exécution Java. C'est nécessaire car Jitsi Meet est écrit en langage Java.
  • jicofo :Focus conférence Jitsi (systemctl status jicofo )
  • prosodie :Serveur léger Jabber/XMPP (systemctl status prosody )
  • cotour :coturn Serveur TURN

Étape 2 :Ouvrir les ports dans le pare-feu

Jitsi Meet écoute sur plusieurs ports UDP, comme on peut le voir avec la commande suivante. (Si votre serveur Ubuntu n'a pas le netstat commande, vous pouvez exécuter sudo apt install net-tools commande pour l'installer.)

sudo netstat -lnptu | grep java

Pour permettre aux participants de rejoindre une vidéoconférence à partir d'un navigateur Web, vous devez ouvrir les ports TCP 80 et 443. Et pour transférer la vidéo sur le réseau, ouvrez les ports UDP 10000 et 5000. Si vous utilisez le pare-feu UFW, exécutez la commande suivante commande pour ouvrir ces ports.

sudo ufw allow 80,443/tcpsudo ufw allow 10000,5000/udp

Étape 3 :Obtenir un certificat TLS Let's Encrypt de confiance

Accédez à votre service d'hébergement DNS (généralement votre bureau d'enregistrement de domaine) pour créer un enregistrement DNS A pour votre nom d'hôte Jitsi (meet.example.com). Exécutez ensuite le script suivant pour obtenir un certificat Let's Encrypt TLS de confiance :

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

Entrez votre adresse e-mail pour recevoir des notifications importantes sur votre compte. Ensuite, il téléchargera certbot-auto et obtenir le certificat TLS.

Si tout va bien, vous verrez le message suivant, indiquant que les certificats TLS ont été obtenus et installés avec succès.

Si vous utilisez une installation propre d'Ubuntu 20.04 (non mise à niveau depuis 18.04 ou 19.10), vous verrez probablement l'erreur suivante lors de l'obtention du certificat Let's Encrypt.

Le paquet python-virtualenv n'est pas disponible, mais il est référencé par un autre paquet. Cela peut signifier que le paquet est manquant, est obsolète ou n'est disponible qu'à partir d'une autre sourceE :le paquet 'python-virtualenv' n'a pas de candidat à l'installation 

Cela est dû au fait que le référentiel Ubuntu 20.04 n'a pas le python-virtualenv emballer. Au lieu d'utiliser le binaire certbot-auto en amont pour obtenir le certificat TLS, nous pouvons installer le package certbot à partir du référentiel Ubuntu 20.04 et l'utiliser pour obtenir le certificat TLS.

sudo apt install certbot

Ensuite, nous devons changer l'instance de certbot-auto vers certbot dans le script avec la commande suivante.

sudo sed -i 's/\.\/certbot-auto/certbot/g' /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh

Exécutez à nouveau le script et vous devriez pouvoir obtenir avec succès le certificat TLS de Let's Encrypt.

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

Notez que ce script utilise le http-01 défi, ce qui signifie que votre serveur Web Apache ou Nginx doit écouter sur le port 80 de l'adresse IP publique. Si votre environnement de serveur ne prend pas en charge le http-01 défi, vous ne devez pas exécuter le script ci-dessus. Vous devez utiliser d'autres types de défi. Dans mon cas, j'utilise le challenge DNS.

sudo certbot --agree-tos -a dns-cloudflare -i nginx --redirect --hsts --staple-ocsp --email [email protected] -d meet.linuxbabe.com

Où :

  • --agree-tos  :acceptez les conditions d'utilisation.
  • -a dns-cloudflare  :J'utilise le plugin DNS cloudflare pour m'authentifier, car j'utilise le service DNS Cloudflare.
  • -i nginx :Utilisez le plugin nginx pour installer le certificat TLS. Si vous utilisez Apache, vous devez remplacer nginx avec apache .
  • --redirect  :Forcer HTTPS par redirection 301.
  • --hsts :Ajoutez l'en-tête Strict-Transport-Security à chaque réponse HTTP. Forcer le navigateur à toujours utiliser TLS pour le domaine. Protège contre le SSL/TLS Stripping.
  • --staple-ocsp :active l'agrafage OCSP. Une réponse OCSP valide est agrafée au certificat que le serveur propose pendant TLS.

Étape 4 :Activer HTTP2

HTTP2 peut améliorer la vitesse de chargement des pages Web. Pour activer HTTP2 dans Nginx, modifiez le fichier de configuration de l'hôte virtuel.

sudo nano /etc/nginx/sites-enabled/meet.example.com.conf

Trouvez les deux lignes suivantes.

écouter 443 ssl;écouter [::]:443 ssl;

Ajoutez http2 à la fin.

écouter 443 ssl http2;écouter [::]:443 ssl http2;

Enregistrez et fermez le fichier. Rechargez ensuite Nginx pour que la modification prenne effet.

sudo systemctl recharger nginx

Étape 5 :Démarrer une nouvelle réunion en ligne

Visitez maintenant https://meet.example.com et vous pourrez démarrer une conférence. Pour transférer de l'audio, vous devez autoriser le navigateur Web à utiliser votre microphone. Et pour transférer la vidéo, vous devez autoriser le navigateur Web à accéder à votre caméra.

Donnez un nom à votre réunion et cliquez sur le bouton Aller. Une fois la réunion démarrée, vous pouvez éventuellement choisir de définir un mot de passe pour votre réunion.

Étape 6 :Configurer l'authentification de l'utilisateur

Par défaut, n'importe qui peut accéder à votre instance Jitsi Meet, créer une salle et démarrer une réunion. Pour configurer l'authentification des utilisateurs, modifiez le fichier de configuration de Prosody.

sudo nano /etc/prosody/conf.d/meet.example.com.cfg.lua

Trouvez la ligne suivante.

authentification ="anonyme"

Remplacez-le par ce qui suit, ce qui obligera l'utilisateur à entrer un nom d'utilisateur et un mot de passe pour démarrer une conférence.

authentification ="internal_plain"

Cependant, nous ne voulons pas que les participants entrent un nom d'utilisateur et un mot de passe lorsqu'ils rejoignent la conférence, nous devons donc créer une connexion anonyme pour les invités, en ajoutant les lignes suivantes à la fin de ce fichier. Notez que vous n'avez pas besoin de créer un enregistrement DNS A pour guest.meet.example.com .

VirtualHost "guest.meet.example.com" authentication ="anonymous" c2s_require_encryption =false

Enregistrez et fermez le fichier.

Ensuite, modifiez le fichier de configuration Jitsi Meet.

sudo nano /etc/jitsi/meet/meet.example.com-config.js

Trouvez la ligne suivante,

// domaine anonyme :'invité.exemple.com',

Supprimez les doubles barres obliques et modifiez le domaine invité. Remplacez meet.example.com par votre vrai nom d'hôte Jitsi Meet.

domaine anonyme :'guest.meet.example.com',

Enregistrez et fermez le fichier.

Modifiez ensuite le fichier de configuration de Jicofo.

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

Ajoutez la ligne suivante à la fin de ce fichier.

org.jitsi.jicofo.auth.URL=XMPP:meet.example.com

Enregistrez et fermez le fichier. Redémarrez les services systemd pour que les modifications prennent effet.

sudo systemctl restart jitsi-videobridge2 prosody jicofo

Pour créer des comptes d'utilisateurs dans Jisi Meet, exécutez la commande suivante. Vous serez invité à entrer un mot de passe pour le nouvel utilisateur.

sudo prosodyctl registre nom d'utilisateur meet.example.com

Maintenant, si vous créez une salle dans Jitsi Meet, vous devrez entrer un nom d'utilisateur et un mot de passe.

Facultatif :Configurer Jigasi pour l'accès entrant ou sortant par téléphone

Jitsi propose une interface de téléphonie qui permet aux utilisateurs de se connecter à une conférence ou de passer des appels de rappel sortants. Installez le jigasi package (passerelle Jitsi pour SIP).

sudo apt install jigasi

Lors de l'installation, vous devrez entrer votre nom d'utilisateur et votre mot de passe SIP. Si vous n'en avez pas, vous pouvez créer un compte SIP gratuit sur OnSIP.com.

Si vous avez configuré l'authentification des utilisateurs à l'étape 6, vous devez modifier le fichier de configuration Jigasi.

sudo nano /etc/jitsi/jigasi/sip-communicator.properties

Trouvez les lignes suivantes.

# [email protected]_DOMAIN# org.jitsi.jigasi.xmpp.acc.PASS=SOME_PASS# org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false

Décommentez-les et entrez un compte et un mot de passe que vous avez créés à l'étape 6.

org.jitsi.jigasi.xmpp.acc.USER_ID=[email protected]org.jitsi.jigasi.xmpp.acc.PASS=user1_passwordorg.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false

Enregistrez et fermez le fichier. Redémarrez le jigasi service systemd.

sudo systemctl status jigasi

Facultatif :Configurer Coturn

Si vous voyez le message suivant lors de l'installation de Jitsi Meet, vous devez configurer Coturn pour qu'il fonctionne correctement.

Attention ! Impossible de résoudre votre adresse IP externe ! Erreur :^ Votre serveur Turn ne fonctionnera pas tant que vous n'aurez pas modifié votre fichier de configuration /etc/turnserver.conf. Vous devez définir votre adresse IP externe dans external-ip et redémarrer le service coturn.

Modifiez le fichier de configuration de Coturn.

sudo nano /etc/turnserver.conf

Trouvez la ligne suivante.

external-ip=127.0.0.1

Remplacez 127.0.0.1 par l'adresse IP publique de votre serveur. Enregistrez et fermez le fichier. Redémarrez ensuite Coturn.

sudo systemctl redémarre coturn

Conseils de dépannage

Si vous rencontrez des erreurs, vous pouvez consulter le journal des erreurs Nginx (/var/log/nginx/error.log ) pour savoir ce qui ne va pas. Vous pouvez également consulter les journaux des services systemd.

sudo journalctl -eu jitsi-videobridge2 sudo journalctl -eu prosodie sudo journalctl -eu jicofo

Ubuntu
  1. Comment installer Zoom (outil de visioconférence) sur Ubuntu 20.04

  2. Comment installer Jitsi Meet sur Debian 11

  3. Comment installer HandBrake Video Converter sur Ubuntu

  4. Comment installer la plate-forme de vidéoconférence Jitsi Meet sur Ubuntu

  5. Installation facile de VMware Ubuntu 21.10 (vidéo)

Comment installer HandBrake sur Ubuntu 18.04 LTS

Comment installer Jitsi Meet sur Ubuntu 20.04 LTS

Comment installer Jitsi Meet sur Debian et Ubuntu

Jitsi Meet sur Ubuntu Linux :une solution de visioconférence open source

Comment déployer le serveur de conférence Jitsi Meet avec Ubuntu 22.04

Comment installer l'application de visioconférence Jitsi Meet sur Ubuntu 20.04