You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

168 lines
5.5 KiB

---
weight: 4
title: "Instalación de Big Blue Button"
date: 2021-11-15T10:11:01+0100
draft: false
summary: "Desplegar un Big Blue Button"
categories:
- pildoras
tags:
- bbb
---
## Big Blue Button
### Instalación
Escogemos como imagen un Ubuntu 18.04 (es lo que recomiendan en la página oficial)
Una vez instalado nuestro VPS con Ubuntu 18.04 abrimos sesión y dejamos el sistema actualizado
```bash
apt update
apt upgrade
```
Es **super importante** que nuestro nuevo servidor tenga IPV6 activado. En mi caso basta con ejecutar `enable_ip6`. No sigas hasta tener esto activado por que fallará.
Deja instalado el `redis-server` con `sudo apt install redis-server`
Podemos comprobar el estado del servicio con `sudo service redis-server status`
Yo siempre añado un usuario para administración del sistema (vamos a prohibir el login de `root` más tarde)
```bash
adduser --uid=1111 hostadmin
gpasswd -a hostadmin sudo
```
Asegúrate de ser `root` y ejecuta:
```bash
wget -qO- https://ubuntu.bigbluebutton.org/bbb-install.sh | bash -s -- -v bionic-24 -s bbb.example.com -e correoCertificados@provider.com -w -g -a
```
Con este comando le estamos diciendo:
`-v bionic-24`
: Instalar la última version (2.4) en nuestro Ubuntu Bionic (18.04)
`-s bbb.example.com`
: Nuestro _site_ va a tener esta URL
`-e correoCertificados@provider.com`
: Correo de referencia para negociar los certificados con _Let's Encrypt_
`-w`
: Instalar y configurar UFW (_Uncomplicated FireWall_)
`-g`
: Instalar _Greenlight_: el interfaz web de nuestro servicio BBB
`-a`
: Instalar la API de pruebas de _Big Blue Button_
La instalación puede llevar hasta media hora, todo depende de lo rápido que sea tu servidor y tu proveedor.
Una vez terminada nos indica direcciones URL para hacer pruebas sin necesidad de hacer login. Comprobamos que podemos establecer conferencias.
Podemos sacar la lista de programas instalados:
```bash
dpkg -l | grep bbb-
ii bbb-apps-akka 2.4.0-103 all BigBlueButton Apps (Akka)
ii bbb-config 1:2.4.0-53 amd64 BigBlueButton configuration utilities
ii bbb-demo 1:2.4.0-3 amd64 BigBlueButton API demos
ii bbb-etherpad 1:2.4.0-14 amd64 The EtherPad Lite components for BigBlueButton
ii bbb-freeswitch-core 2:2.4.0-28 amd64 BigBlueButton build of FreeSWITCH
ii bbb-freeswitch-sounds 1:1.6.7-5 amd64 FreeSWITCH Sounds
ii bbb-fsesl-akka 2.4.0-43 all BigBlueButton FS-ESL (Akka)
ii bbb-html5 1:2.4.0-2561 amd64 The HTML5 components for BigBlueButton
ii bbb-learning-dashboard 1:2.4.0-29 amd64 BigBlueButton bbb-learning-dashboard
ii bbb-libreoffice-docker 1:2.4.0-9 amd64 BigBlueButton setup for LibreOffice running in docker
ii bbb-mkclean 1:0.8.7-1 amd64 Clean and optimize Matroska and WebM files
ii bbb-playback 1:2.4.0-19 amd64 BigBlueButton playback
ii bbb-playback-presentation 1:2.4.0-9 amd64 BigBluebutton playback of presentation
ii bbb-record-core 1:2.4.0-14 amd64 BigBlueButton record and playback
ii bbb-web 1:2.4.0-99 amd64 BigBlueButton API
ii bbb-webrtc-sfu 1:2.4.0-65 amd64 BigBlueButton WebRTC SFU
```
Cuando estemos satisfechos con las pruebas, eliminamos la API de pruebas con:
```bash
apt purge bbb-demo
bbb-conf --restart
bbb-conf --status
```
Creamos un usuario administrador para nuestra instancia de BBB:
```bash
docker exec greenlight-v2 bundle exec rake admin:create
Account successfully created.
Email: admin@example.com
Password: administrator
Role: admin
PLEASE CHANGE YOUR PASSWORD IMMEDIATELY
```
Hacemos caso del aviso y nos conectamos enseguida al BBB para cambiar la password del usario administrador.
Los comandos para crear nuevos administradores y/o usuarios con todos los datos son:
```bash
docker exec greenlight-v2 bundle exec rake user:create["name","email","password","admin"]
docker exec greenlight-v2 bundle exec rake user:create["name","email","password","user"]
```
Importante cambiar el registro a cualquier modalidad que no sea `Open Registration`, salvo que queramos gestionar las peticiones de registro claro.
Puede ser interesante añadir al usuario administrador al grupo `docker`:
```bash
gpasswd -a administrator docker
```
{{< admonition type=warning title="¡Asegura el servidor!" open=true >}}
Solo hemos descrito la instalación de BBB. Es responsabilidad tuya asegurar el servidor.
La instalación descrita se encarga de instalar el UFW (Uncomplicated Firewall) pero como mínimo deberías:
1. Prohibir el login de root en el sistema a través de ssh
2. Prohibir el login a través de ssh con contraseña y exigir certificados ssh
3. Instalar y configurar `fail2ban` o alguna herramienta similar.
{{< /admonition >}}
### Referencias para optimizar nuestro servidor:
- [Documentación Oficial: Custom Settings](https://gitlab.com/MaadiX/bbb-tuning/-/wikis/Big-Blue-Button-Custom-settings)
- [Multiples optimizaciones por Manish Katyan](https://github.com/manishkatyan/bbb-optimize)
- [Guía de BBB (por Higher Ed Lab)](https://higheredlab.com/bigbluebutton-guide/)
### Recetas
#### Resetear password de usuario
Nos conectamos al servidor de BBB
```bash
docker exec -it greenlight-v2 bash
bundle exec rails c
User.find_by(email: "<email of user to reset>").update_attribute(:password,"<new password>")
```