Ahora que las videollamadas están creciendo, uno de los servicios que también lo hace es Jitsi, un sistema de código abierto e instalable en tu propio servidor al más puro estilo Google Hangouts donde todo el mundo puede acceder y charlar en multipantalla.
Instalar Jitsi es relativamente sencillo, y lo mejor es hacerlo en VPS. Dependerá de la cantidad de usuarios concurrentes que vayas a tener para necesitar más o menos recursos, aunque en principio con una máquina de 1 CPU, 2 GB de RAM y 10 GB de SSD es más que suficiente para hacer pruebas y soportar unos cuantos usuarios. En este ejemplo voy a usar Ubuntu 18.
Instalación de Jitsi
Lo primero que haremos será poner el servidor en hora y actualizar el sistema operativo y todo en general, además de algunas utilidades útiles.
$ timedatectl set-timezone UTC
$ timedatectl set-ntp on
$ apt -y update && apt -y upgrade && apt -y dist-upgrade && apt -y autoremove
$ apt -y install software-properties-common curl vim unzip
Para trabajar en la parte web vamos a instalar nginx. En este caso usaremos una rama que no es la del sistema operativo y lo configuraremos para que al reiniciar el servidor se inicie automáticamente.
$ add-apt-repository ppa:ondrej/nginx
$ apt -y update && apt -y upgrade && apt -y dist-upgrade && apt -y autoremove
$ apt -y install nginx
$ systemctl stop nginx.service
$ systemctl enable nginx.service
$ systemctl start nginx.service
Y casi, para acabar, instalaremos Jitsi. Al final de la instalación nos pedirá el hostname (dominio / subdominio) en el que queremos que funcione y donde deberíamos instalar el HTTPS. Es recomendable tenerlo preparado previamente.
$ wget -qO - https://download.jitsi.org/jitsi-key.gpg.key | sudo apt-key add -
$ sh -c "echo 'deb https://download.jitsi.org stable/' > /etc/apt/sources.list.d/jitsi-stable.list"
$ apt -y update && apt -y upgrade && apt -y dist-upgrade && apt -y autoremove
$ apt -y install apt-transport-https jitsi-meet jitsi-videobridge2
A mitad de instalación nos pedirá el hostname que vamos a utilizar.
chat.example.com
Además, en una siguiente pantalla nos pedirá qué certificado queremos usar. A menos que tengas ya un certificado premium previo, lo mejor es elegir la opción de un auto-certificado.
Generate a new self-signed certificate
Una vez acabe la instalación podemos configurar de forma automática un certificado Let’s Encrypt que permita navegar de forma cifrada por el sitio.
Para ello sólo hemos de ejecutar el comando (recuerda haber apuntado el hostname a la IP previamente, si no será difícil que funcione).
$ /usr/share/jitsi-meet/scripts/install-letsencrypt-cert.sh
En este momento podemos saltar a la última sección de «Finalizar la instalación», pero básicamente ya podríamos entrar en el sitio y usarlo.
Configurar para más de 100 usuarios
Si queremos tener muchos usuarios necesitaremos hacer algunos cambios en el sistema. Para ello hemos de abrir el fichero de configuración y modificar algunos valores.
vim /etc/systemd/system.conf
Allí buscaremos estos 3 valores y los modificaremos (o activaremos si están comentados).
DefaultLimitNOFILE=65000
DefaultLimitNPROC=65000
DefaultTasksMax=65000
Esta instalación por defecto está pensada para unos 100 usuarios y de forma pública (sin contraseñas ni usuarios registrados). Así que vamos a dar algunos pasos y cambiar la configuración si es necesario.
Hay que tener en cuenta que si vas a tener más de 100 usuarios deberás incrementar los recursos del sitio, principalmente la CPU y la RAM.
Segurizar tu Jitsi
Una de las cosas que permite Jitsi es tener un sistema de control de los canales. He de reconocer que he seguido varias veces la documentación, por activa y por pasiva, pero no he conseguido hacer que funcione (al final acababa con el sitio igualmente público y sin ningún tipo de control sobre los usuarios registrados).
Sin duda creo que los desarrolladores deberían mejorar esa parte de la documentación, ya que tal y como viene Jitsi de serie es bastante absurdo y no tiene ningún sentido… está muy bien tener un sistema abierto, pero que esté 100% abierto y que no haya control no me parece muy razonable.
Si alguien encuentra documentación (me da igual en qué idioma) sobre cómo mejorar la seguridad, por favor, que me lo pase que intentaré implementarlo y documentarlo de forma sencilla paso a paso.
Finalizar la instalación
En principio en este momento ya tenemos todo listo, pero para que no se haya quedado nada pillado, reiniciaremos la máquina virtual y tendremos la instalación y los recursos frescos, previa una actualización de todo, por si hay alguna biblioteca que requiere compatibilidad con algo de lo que hemos instalado.
$ apt -y update && apt -y upgrade && apt -y dist-upgrade && apt -y autoremove
$ reboot
Una vez la máquina se haya reiniciado, podemos visitar el hostname que hemos configurado, entrando en https://chat.example.com/
, por ejemplo. Esto nos mostrará una pantalla tal que así:
Deja una respuesta