Instalación de Jitsi Meet en un servidor privado

En estos tiempos marcados por la Covid 19, las videoconferencias han sido fundamentales en entornos profesionales, académicos y personales. El confinamiento y la implantación masiva del teletrabajo ha supuesto un gran aumento del tráfico de internet y, como consecuencia, la saturación puntual de las conexiones de internet, el colapso puntual de algunas de las plataformas de videoconferencias más utilizas y, notables problemas de seguridad en comunicaciones que se entienden privadas y confidenciales.

En el presente post se quiere destacar Jitsi-meet sobre todas las demás. Jitsi es un conjunto de proyectos de código abierto que permiten crear e implementar de manera sencilla soluciones de videoconferencia seguras, que engloba además aplicaciones de VoIP y mensajería instantánea a través de la web.

Es ampliamente conocida la plataforma de videoconferencia Jitsi Meet (meet.jit.si) que puede ser utilizada de forma totalmente gratuita. Lo que no es tan conocido que se trata de un proyecto de código abierto que está libremente disponible para su uso y desarrollo, con lo cual puede ser instalado en prácticamente cualquier servidor.

A continuación, se explica detalladamente como instalar Jitsi Meet en un servidor privado (se trata de una instancia VPS), de tal manera que se tenga una aplicación equivalente a la que está a disposición en meet.jit.si, pero que permite autogestionar los servicios de videoconferencia en momentos puntuales de sobrecarga de las aplicaciones más utilizadas, en condiciones de seguridad y privacidad.

La instalación de Jistsi Meet se ha efectuado en una instancia VPS con sistema operativo Ubuntu 18.04 y servidor web Apache.

Requisitos previos

Antes de realizar la instalación de Jitsi-meet, se debe configurar correctamente el host. En primer lugar debe registrarse la dirección IP del servidor en el dominio o subdominio que va a ser utilizado. El tipo de registro de DNS es A, tal y como se recoge en la siguiente tabla a modo de ejemplo.

Dominio o subdominioTipoIP
dominio.comA111.111.111.111
subdominio.dominio.comA111.111.111.111
Ejemplos de resgistro de las DNS.

Si no se tiene un dominio propio, se puede conseguir uno de forma gratuita en Feenom, con las extensiones .tk, .ml, ga, .cf y .gq.

Jitsi Meet utiliza Nginx como Proxy Inverso, aunque puede funcionar tanto con Nginx como Apache, aunque si no hay ninguno instalado, se instalará Ngnix por defecto. En este caso la instalación se realiza en una instancia VPS con el servidor web Apache ya instalado. Si Apache no está instalado, se instala de la siguiente manera a través de una conexión con el servidor mediante consola (recordar incluir el comando sudo si no se está como usuario root):

apt-get update
apt-get install apache2

Pasos para la instalación

A continuación, se muestran los pasos que hay que dar para la instalación de Jitsi Meet. Para ello hay que conectarse al servidor mediante consola, con usuario root o con permisos sudo.

1. Instalación de la llave de Jitsi para el repositorio.

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

2. Instalación del repositorio. En primer lugar se abre el siguiente archivo.

nano /etc/apt/sources.list.d/jitsi-stable.list

Se inserta la siguiente línea y se cierra.

deb https://download.jitsi.org stable/

3. Actualización del repositorio e instalación de Jitsi-meet.

apt-get update
apt-get install jitsi-meet

Durante la instalación se solicitará el nombre del host para poderse conectar a través de internet e instalar posteriormente el certificado let’s encrypt. Se debe insertar el mismo que se ha configurado con anterioridad. Por ejemplo: dominio.com o subdominio.dominio.com.

A continuación se dará la opción de generar un certificado autofirmado o instalar otro más tarde. Se selecciona la primera opción de generar un nuevo certificado autofirmado.

Apertura de puertos

Una vez instalado Jitsi Meet, el programa requiere que algunos puertos estén abiertos para poder comunicarse con los usuarios de videoconferencias y poderse autenticar en la solicitud del certificado.

PuertosUtilidad
80/tcpSolicitud del certificado TLS.
443/tcpCreación de salas de conferencias.
4443/tcp y 10000/udpTransmisión y recepción del tráfico cifrado de las llamadas.
Puertos que deben estar abiertos en la instancia VPS.

Los proveedores de servicios de instancias VPS suelen ofrecer herramientas para abrir y cerrar los distintos puertos.

Instalación del certificado let’s encrypt

Una vez que han sido abiertos los puertos correspondientes, procede la instalación del certificado let’s encrypt para que las comunicaciones sean cifradas y evitar la utilización de un certificado autofirmado, que los navegadores suelen interpretar como una amenaza, aunque no sea realmente así.

Si el programa certbot no está instalado, el primer paso es instalarlo mediante la siguiente línea de comandos.

add-apt-repository ppa:certbot/certbot
apt install certbot

A continuación se instala el certificado let’s encrypt.

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

El sistema pedirá insertar una cuenta de correo electrónico.

Final de la instalación

En principio, el programa ya estaría instalado y perfectamente operativo. Para ello, habría que escribir en un navegador la dirección del host utilizado. Por ejemplo: dominio.com o subdominio.dominio.com.

La configuración por defecto permite que cualquier usuario pueda crear una sesión de videoconferencia, convirtiéndose de esta manera en moderador de la sesión, tal y como sería si se utilizase la plataforma de videoconferencia Jitsi Meet (meet.jit.si).

Para aumentar la seguridad, se puede incorporar una contraseña que evite que puedan unirse usuarios no deseados, aunque existen maneras para poder limitar el derecho de creación de salas a través de la creación de un usuario y contraseña, que se abordará en un post posterior.

Hay que recordar que Jitsi-meet está optimizado para el navegador Chrome o su versión libre Chromium. La utilización con otros navegadores puede conllevar alteraciones del servicio de videoconferencia.

Espero que este post os haya servido de ayuda y os anime a crear vuestra propia instancia de Jitsi Meet. De todas formas, en el siguiente enlace se pueden encontrar instancias de Jitsi alternativas totalmente operativas.

Referencias

Collado, E. (2020). No sólo de hosting y redes vive el hombre. Recuperado de https://www.eduardocollado.com/2020/04/25/instalacion-y-configuracion-de-jitsi/

Cooper, E (2020). DigitalOcean: Cómo instalar Jitsi Meet en Ubuntu 18.04. Extraído de https://www.digitalocean.com/community/tutorials/how-to-install-jitsi-meet-on-ubuntu-18-04-es

Jitsi (s.f). Extraído de https://jitsi.org/

Voidnull (2019). Cómo instalar Jitsi en Ubuntu 18.04. Extraido de https://voidnull.es/como-instalar-jitsi-en-ubuntu-18-04/