Configurer et sécuriser un Serveur dédié pour y installer Jitsi Meet ou Big Blue Button

Prérequis

  • Avoir déjà installé & sécurisé des softs sur un serveur
  • Avoir 1h30 devant soi
  • Avoir 60€/mois à lâcher pour la sécurité de ses conversations

Choisir le serveur adapté

  • Il faut au minimum un serveur dédié (oubliez les VPS, la bande passante n'est pas garantie)
  • Chez WeeeFund on a pris:
    • un serveur rise-1 en config SSD pour jitsi
    • un serveur game-2 en config SSD pour BigBlueButton pour des visio à 200 personnes
      • Capture-du-2020-08-21-18-37-12.png
      • le pic ci dessus c'est le serveur lors de visio à 60 personnes: 40Mo/s, soit 240 Mb/s, un débit non négligeable.

    Installation de jitsi meet

    Jitsi ne fonctionne que sur Ubuntu 18.04 (Bionic)

    https://github.com/jitsi/jitsi-meet/blob/master/doc/quick-install.md

    Installation de Big Blue Button v2.3

    Préparer le serveur TURN

    0 - Sécurisation du serveur + affilier FQDN

    https://docs.ovh.com/fr/dedicated/securiser-un-vps/

    Ubuntu 20.04

    1 - Choisir un VPS pour le Turn Server  et l'installer

    https://docs.bigbluebutton.org/admin/setup-turn-server.html

    1. Configurer le pare feu: (les 3 première ligne via le pare-feu OVH, la dernière à la mano)
    Ports Protocol Description
    3478 TCP/UDP coturn listening port
    80 TCP HTTP required for Certbot
    443 TCP/UDP TLS listening port
    32769-65535 UDP

    relay ports range

    iptables -A INPUT -p UDP  --match multiport --dports 32769:65535 -j ACCEPT
    1. Installer coturn et le configurer
      1. On peut installer plus rapidement un serveur TURN  préconfigué en utilisant le script d'installation fourni par BBB:

    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -c <FQDN>:<SECRET> -e <EMAIL>
    2 - Tester coturn

    https://nextcloud-talk.readthedocs.io/en/latest/TURN/#6-testing-the-turn-server

    installer coturn sur son laptop (sans aucune config) puis lancer la commande suivante

    le serveur BBB

    0 - Installer l'OS sur le serveur + sécuriser le serveur

    https://docs.ovh.com/fr/dedicated/premiers-pas-serveur-dedie/

    BBB fonctionne actuellement sur Ubuntu 18.04 (Bionic)

    https://docs.ovh.com/fr/dedicated/securiser-un-serveur-dedie/

    1 - Configurer le firewall

    https://docs.ovh.com/fr/dedicated/firewall-network/

    Autoriser un plage UDP en ligne de commande (parceque notre game de serveur dédié OVH ne permet pas ça via l'interface web OVH):

    iptables -A INPUT -p UDP  --match multiport --dports 16384:32768 -j ACCEPT
    2 - Affecter un domaine ou sous domaine au serveur

    Se fait via l'interface web OVH coté Hébergement, dans l'onglet Redirection:

    1. Ajouter une redirection
    2. Choisir le nom du sous domaine
    3. Choisir l'IP du serveur
    4. Go
    3 - Vérifier les prérequis avant l'installation

    https://docs.bigbluebutton.org/2.3/install.html#pre-installation-checks

    4 - Installer BBB

    Lors de la première installation

    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -w -a -g -v bionic-23 -s bbb.example.com -e info@example.com -c turn.example.com:1234abcd

    Lors des mises à jours (sans remettre la config du Firewall ni la demo):

    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -g -v bionic-23 -s bbb.example.com -e info@example.com -c turn.example.com:1234abcd
    5 - Faire les tests

    se connecter sur votre URL et tester si tout marche.

    sudo bbb-conf --check
    sudo bbb-conf --status
    dpkg -l | grep bbb-
    6 - Supprimer la demo et configurer un compte admin greenlight
    sudo apt-get purge bbb-demo
    Diverse commandes pour BBB
    sudo bbb-conf --secret
    sudo bbb-conf --restart

    Installation de Big Blue Button v2.2

    BBB ne fonctionne à ce jour que sur Ubuntu 16.04 (Xenial)

    http://docs.bigbluebutton.org/2.2/install.html

    https://github.com/bigbluebutton/bbb-install

    Bien lire le tuto ci dessus en entier

    informations sur les specs nécessaires pour faire tourner une grosse installation: https://www.ovh.com/blog/bigbluebutton/

    Pour installer Big Blue Button, avec un nom de domaine, en https, et avec greenlight

    Il ne faut pas configurer letsencrypt, l'install de bbb le fait tout seul

    Il faut cependant avoir un nom de domaine affecté à ce serveur

    il faut taper le code suivant en mettant le bon nom de domaine et le bon mail.

    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-22 -s bbb.example.com -e info@example.com -g
    Créer un compte admin sur Greenlight

    suivre le début de ce tuto: https://docs.bigbluebutton.org/greenlight/gl-admin.html

    cd ~/greenlight
    docker exec greenlight-v2 bundle exec rake admin:create["name","email","password","admin"]
    Installer un serveur TURN pour que les utilisateur protégé par un firewall puisse utiliser BBB

    Cela permet à tous les utilisateurs d'utiliser bbb sans erreur

    Cela nécessite de prendre un petit VPS supplémentaire

    1. Installer Coturn sur un petit VPS
    2. Le paramétrer pour BBB en mettant une secret Value
    3. Lancer le script d'installation de BBB sur le dédié en mettant la même "secret Value"

    https://docs.bigbluebutton.org/2.2/setup-turn-server.html

    wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v xenial-22 -s bbb.example.com -c turn.example.com:SECRETVALUE -e info@example.com -g
    Que faire si BBB plante après une MAJ serveur ?

    Simplement refaire la ligne de code pour réinstaller BBB et Greenlight, ça n'efface pas la database (user, login, enregistrement conservé)

    Mais où est donc le .env file?

    dans le dossier greenlight