Jitsi Meet es un software gratuito y de código abierto que le permite crear e implementar soluciones de videoconferencias. Jitsi Meet se basa en la tecnología estándar de WebRTC Open para conferencias basadas en navegadores. Además, con Jitsi, puede usar aplicaciones clientes para Linux, MacOS, Windows, iOS y Android para ejecutar reuniones de video.
¡Advertencia!
Tenga en cuenta que Jitsi Meet no se puede utilizar como una plataforma de videoconferencias completa. Es una solución gratuita, diseñada para demostrar las capacidades del servicio basado en la nube de 8×8. Los desarrolladores de Jitsi no planean agregar capacidades de nivel empresarial a su producto, mientras que la implementación de funciones comerciales esenciales como la integración de Active Directory/LDAP, NAT transversal, compatibilidad con SIP, grabación de conferencias, etc. requiere la instalación y configuración de complementos y paquetes de software adicionales. Además, Jitsi no proporciona una serie de funciones básicas, como la programación de reuniones (todas las reuniones de Jitsi son, de hecho, salas virtuales).
Finalmente, la instalación y el mantenimiento de Jitsi Meet requieren habilidades avanzadas de programación y administración de Linux.
Compare a Jitsi con la plataforma local de colaboración en video TrueConf Server
¿Quiere desplegar Jitsi Meet? ¡Ha venido al lugar correcto! Lea esta guía para aprender a instalarlo y configurarlo.
Tabla de contenido
Requisitos del sistema
Se requieren los siguientes paquetes para la instalación de Jitsi Meet:
- gnupg2
- nginx-full
- sudo
- OpenJDK 8/OpenJDK 11
A continuación, puede encontrar la lista de puertos que deberá abrir en su sistema operativo o reenviar a una red externa:
- 80/tcp – para verificar/renovar el certificado SSL con Let’s Encrypt
- 443/tcp – para el acceso general a Jitsi Meet
- 10000/udp – para comunicación de audio y video dentro de su red
- 22/tcp – si usa SSH para conectarse al servidor (es un valor predeterminado, si usa un puerto diferente, especifíquelo en lugar del 22).
Jitsi Meet puede desplegarse en Debian/Ubuntu y openSUSE. Por ejemplo, en este artículo instalaremos Jitsi Meet en Debian 10.
sudo -V
e instalarlo con apt install sudo
como usuario raíz. Si desea agregar un usuario con el nombre de usuario user
al grupo sudo
, use sudo usermod -a -G sudo user
.Módulos básicos de Jitsi Meet
Jicofo es un componente XMPP. Es un proceso responsable de conectar las aplicaciones clientes a las videollamadas. Durante las conferencias, puede enviar invitaciones, realizar balanceo de carga cuando se usan múltiples servidores XMPP, etc. Jicofo tiene su propia API HTTP /about/health
que permite verificar el estado de Jicofo.
Jitsi Videobridge es un componente clave del sistema. Al transmitir video y audio entre los participantes, actúa como intermediario, lo que significa que realiza la terminación RTP/RTCP y establece los límites de tasa de bits en ambas direcciones para cada cliente. Jitsi Videobridge contiene su propia API HTTP (/colibri/debug
) ) para monitoreo.
Basado en la arquitectura Simulcast , Jitsi Videobridge no es responsable de la transcodificación y consume relativamente pocos recursos de CPU. Sin embargo, Simulcast aumenta significativamente la carga del lado del cliente en comparación con otras arquitecturas.
Se pueden conectar varios puentes de video al sistema de videoconferencias Jitsi con cada nueva conferencia asignada a uno de ellos.
Jigasi – extensión externa diseñada para participar en conferencias Jitsi a través de telefonía SIP (se requiere una extensión separada).
Jibri es un conjunto de herramientas para grabar y/o transmitir una reunión organizada en Jitsi Meet. Funciona iniciando una instancia de Chrome renderizada en un framebuffer virtual y capturando y codificando la salida con ffmpeg. Está diseñado para ejecutarse en una máquina separada (o una máquina virtual), sin otras aplicaciones que utilicen los dispositivos de video o audio. Un Jibri solo admite una grabación al mismo tiempo.
Prosody es un servidor XMPP multiplataforma escrito en Lua.
Paso 1: Instalación de paquetes adicionales
- Obtenga una lista de actualizaciones disponibles para todos los paquetes de los repositorios conectados a su sistema operativo:
1 |
sudo apt update |
2. Instale los paquetes necesarios:
- apt-transport-https. Como el repositorio de Jitsi requiere una conexión HTTPS, debe instalar el paquete apt-transport-https en orden para que APT establezca una conexión HTTPS con el repositorio de Jitsi.
- gnupg2. Requerido para trabajar con llaves PGP.
- nginx-full. Servidor web de alto rendimiento. Requiere que el instalador configure un host virtual en el servidor web para mantener Jitsi Meet.
- curl. Herramienta de línea de comandos para transferir datos con sintaxis de URL. Es necesario para descargar la clave PGP.
- ufw. Firewall para apertura de puertos.
1 |
sudo apt install apt-transport-https gnupg2 nginx-full curl ufw -y |
Paso 2: Configuración de un nombre de dominio
Para el correcto funcionamiento de Jitsi Meet, el nombre de host del sistema debe corresponder con el nombre de dominio que se utilizará para su instancia de Jitsi Meet.
- Elija el dominio que se utilizará para su servidor. Por ejemplo
myjitsi.example.org
. - Para configurar el nombre de dominio, use la utilidad hostnamectl del kit de herramientas systemd para administrar el nombre de host del sistema:
1 |
sudo hostnamectl set-hostname myjitsi.example.org |
3. Agregue el mismo nombre de dominio al archivo /etc/hosts:
1 2 3 |
127.0.0.1 localhost x.x.x.x myjitsi.example.org |
where x.x.x.x.x is the public IP address of your server.
Paso 3: Configuración del firewall
Para conectar a los usuarios a su instancia de servidor Jitsi Meet, debe configurar el firewall abriendo los puertos necesarios con ufw. Para hacer esto, ejecute los comandos a continuación en la secuencia siguiente:
1 2 3 4 5 6 7 8 9 |
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw allow 10000/udp sudo ufw allow 22/tcp sudo ufw enable |
Verifique el estado del firewall con este comando:
1 |
sudo ufw status verbose |
Si estos puertos están abiertos, verá el siguiente resultado:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere 80/tcp ALLOW Anywhere 443/tcp ALLOW Anywhere 10000/udp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) 80/tcp (v6) ALLOW Anywhere (v6) 443/tcp (v6) ALLOW Anywhere (v6) 10000/udp (v6) ALLOW Anywhere (v6) |
Paso 4: Agregar el paquete Jitsi a la lista del repositorio
- Use curl para importar la clave GPG oficial del repositorio de Jitsi:
1 |
curl https://download.jitsi.org/jitsi-key.gpg.key | sudo sh -c 'gpg --dearmor > /usr/share/keyrings/jitsi-keyring.gpg' |
2. Agregue un enlace a un repositorio estable:
1 |
echo 'deb [signed-by=/usr/share/keyrings/jitsi-keyring.gpg] https://download.jitsi.org stable/' | sudo tee /etc/apt/sources.list.d/jitsi-stable.list > /dev/null |
Paso 5: Instalar Jitsi Meet
Antes del proceso de instalación, obtenga una lista de los paquetes disponibles del repositorio de Jitsi:
1 |
sudo apt update |
Instalar Jitsi Meet:
1 |
apt install jitsi-meet |
También se le pedirá que ingrese el nombre de host de su instancia de Jitsi Meet. Si tiene un dominio, puede usar su nombre de dominio, por ejemplo myjitsi.example.org. Alternativamente, puede ingresar la dirección IP de su computadora (si es estática).
Este nombre de host se usará para configurar el host virtual dentro de Jitsi Meet, así como para conectar a los usuarios a las conferencias.
Puede generar un certificado SSL autofirmado o rechazar esta opción si ya tiene un certificado comercial y lo va a utilizar en su lugar.
Paso 6: Autenticación del usuario
De forma predeterminada, Jitsi Meet está configurado para que cualquier usuario pueda conectarse a su servidor y crear una conferencia. Sin embargo, puede cambiar este escenario y permitir que solo los usuarios autorizados creen conferencias. En este caso, al crear una nueva sala, Jitsi Meet le pedirá un nombre de usuario y una contraseña. Para hacerlo, necesitarás editar los archivos de configuración.
En los siguientes ejemplos, se utilizará la variable your_hostname
en lugar del nombre de dominio.
Activar la autenticación obligatoria
- Usando cualquier editor de texto, abra el archivo
/etc/prosody/conf.avail/[your_hostname].cfg.lua
2. Busque la línea authentication = "anonymous"
en el bloque VirtualHost "[your_hostname]"
y reemplácelo con la siguiente línea:
1 |
authentication = "internal_hashed" |
Esto limitará el acceso de usuarios anónimos a su plataforma e introducirá la autenticación obligatoria mediante nombre de usuario y contraseña.
3. Agregue la siguiente sección al final del archivo:
1 2 3 4 5 6 7 |
... VirtualHost "guest.your_hostname" authentication = "anonymous" c2s_require_encryption = false |
Esto permite a usuarios anónimos unirse a una conferencia creada por un usuario autenticado en el servidor. El invitado debe conocer la dirección y la contraseña únicas de la conferencia (si está configurada).
4. Abra otro archivo etc/jitsi/meet/your_hostname-config.js
en un editor de texto y elimine el comentario de la línea // anonymousdomain: 'guest.example.com'
, reemplace guest.example.com
con el nombre de host real de su Jitsi Meet.
Estos datos son necesarios para indicar a Jitsi Meet qué nombre de host interno debe usarse para invitados no autenticados.
Después de eso, especifique el dominio que se usará para ejecutar Jicofo en la configuración del componente. Para los servicios de conferencias, Jicofo solo utilizará dominios registrados.
Para completar los cambios de configuración, agregue la siguiente línea al archivo
1 2 3 |
/etc/jitsi/jicofo/sip-communicator.properties org.jitsi.jicofo.auth.URL=XMPP:your_hostname |
Creación de cuentas de usuario
Use el servicio prosodyctl para crear usuarios:
1 |
sudo prosodyctl register <username> your_hostname <password> |
Reinicie los servicios de systemd para aplicar los cambios:
1 |
sudo systemctl restart jitsi-videobridge2 prosody jicofo |
Al crear una sala en Jitsi Meet, ahora deberá ingresar su nombre de usuario y contraseña.
Paso 7: Primeros pasos con Jitsi Meet
Una vez completada la instalación, inicie un navegador web (por ejemplo, Firefox, Chrome o Safari) e ingrese el nombre de host o la dirección IP en la barra de direcciones.
Si usó un certificado autofirmado, su navegador web le pedirá que confirme que confía en el certificado. Si se conecta a Jitsi usando una aplicación móvil iOS o Android, el intento de conexión puede terminar con un error de certificado autofirmado en este punto.
Puede ver una página web invitándole a iniciar una nueva reunión:
Asegúrese de que puede crear correctamente una reunión. Comparta el enlace, asegúrese de que otros miembros también puedan unirse y que todos los puertos se hayan abierto correctamente.