BigBlueButton es un grandioso software de código abierto que te permite ofrecer un aula virtual compuesta de diversas herramientas para dictar cursos y clases tales como: sala de chat, videoconferencias, llamadas, compartir escritorio, mostrar presentaciones, decidir quien va hablar entre otros. Al estar desarrollado para la plataforma web, muchas de estas herramientas utilizan WebRTC para realizar la transmisión de datos, pero en las últimas versiones de Firefox y Chrome para establecer conexiones directas, se requiere que la transmisión se haga por HTTPS por lo tanto requerirás un certificado para ello, hoy en día lo puedes hacer gratis con Let’s Encrypt.

¿Qué es Let’s Encrypt?

Let’s Encrypt es un servicio apoyado por múltiples organizaciones (entre ellas Mozilla), para brindar certificados de forma gratuita para que puedas ofrecer tus sitios bajo el protocolo HTTPS, el cual, permite servir páginas web de forma cifrada así nadie puede interceptar la información transmitida.

Actualmente Google premia con mejor valoración a aquellas páginas que funcionan con HTTPS y poco a poco será la norma en la web, por lo tanto, es recomendable su uso en un futuro inmediato. Para implementarlo, necesitas algo llamado «certificado»que te permite validar que tu sitio es realmente quien dice ser (evitando usurpaciones de identidad), a pesar de puedes comprar uno, puedes generar un certificado gratis con Let’s Encrypt cada 3 meses.

Let's Encrypt logo

Let’s Encrypt

Generando el certificado para BigBlueButton

Let’s Encrypt incluye una herramienta llamada certbot-auto para generar un certificado firmado por Let’s Encrypt, para validar el dominio utilice el parámetro –webroot, el cual, instala un archivo de comprobación en la raíz de tu servidor web para ser comprobado remotamente y así validar que realmente te encuentras en el servidor de ese dominio (existen otros medios como a través de DNS que omitiremos acá).

Cabe destacar, que el servidor web de BigBlueButton es nginx y posee una configuración para la raíz del dominio y otra para el servidor de BBB, en mi caso certbot no lo detectó y tuve que especificar la ruta de la raíz del servidor web utilizando el parámetro -w, ademas especificar el dominio para el cual deseas crear el certificado con el parámetro -d .

certbot-auto --webroot -w /usr/share/nginx/html -d tu-dominio.com certonly

Y el certificado se debería crear automáticamente en la ruta:

/etc/letsencrypt/live/TU_DOMINIO_WEB/fullchain.pem

Luego podrás seguir los pasos de la guía oficial sobre como Configurar HTTPS en BigBlueButton, previamente te recomiendo hacer un respaldo de cada archivo de configuración antes de modificarlo, pues me parece que es fácil equivocarse, ocasionando que BBB no arranque.

Luego, en el archivo /etc/nginx/sites-available/bigbluebutton debes especificar la ubicación del certificado y de la llave privada colocando las siguientes rutas:

ssl_certificate /etc/letsencrypt/live/tu_dominio_web/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/tu_dominio_web/privkey.pem;

Una vez finalizado todos los pasos de la guía,reinicia el servicio y tendrás HTTPS en BigBlueButton, con ello podrás ofrecer la cámara web y diálogos a través de HTML5 sin depender de Flash.

Conclusiones

Espero que te sirva esta guía para tener tu certificado en el servidor de BigBlueButton, con esto asegurarás que el trafico en tu aula virtual esté cifrada y segura. Además, al realizar conexiones directas, notarás que la comunicación es mas rápida, sin retrasos porque algunas comunicaciones se harán directas y no deben pasar a través del servidor.

Participando en un proyecto reciente, los clientes decidieron expandir su servicio (actualmente solo en Latinoamérica) a España y nos encontramos con una latencia de los datos y calidad ligeramente menor debido a que el servidor actual no se encontraba en Europa. Por ello, se decidió montar un servidor en España para que las conexiones de los clientes en ese país no salieran del continente y fuesen mas rápidas. Buscando encontré a Clouding.io, cuyo servicio me gustó pues poseen los servicios que busco al comprar un servidor virtual privado.

Servicios al buscar un servidor

Cuando busco un proveedor de servidores, me tomo mi tiempo porque la calidad del servicio que ofrezco a mis clientes dependerá de la calidad del proveedor del servidor. Por lo que busco los servicios como:

  • Cloud VPS dinámicos: los requerimientos de software pueden cambiar con el tiempo, si recibes mas visitas necesitarás mas equipo para procesar las solicitudes, o si vas a sacar la base de datos a otro servidor necesitarás crear un nuevo servidor virtual y tal vez reducir las prestaciones del servidor donde estaba originalmente. Por esta razón, me gustó Clouding.io, pues te permiten definir las características de tu servidor para planificar parte de la arquitectura y junto al costo, de este modo, sabrás cuanto pagarías al mes antes de crear esa instancia de servidor.
Calculadora de precio de VPS
Calculadora de precio de VPS
  • Soporte profesional: mi principal área de experiencia es ser desarrollador web, entonces, en algunas ocasiones requiero ayuda profesional para realizar ciertas tareas de optimización, pues es mas rentable pagar a alguien que sé que las hará en poco tiempo y con buena calidad, que perder tiempo de desarrollo y arriesgándome a no hacerlas muy bien. Clouding.io ofrece un servicio llamado Cloud Pro, a quienes puedes explicarles tus requisitos o problema y luego te ofrecen una solución de alta calidad a buen precio y en poco tiempo.
  • Documentación: por la misma razón anterior, suelo buscar guías para estar seguro de que lo que estoy haciendo es lo correcto. Clouding.io ofrece guías para instalar o configurar los servicios mas comunes en un servidor, además, a diferencia de la competencia, observé que tienen una comunidad donde puedes participar a través de foros o preguntas (a lo StackOverflow) por lo que si la documentación no es suficiente para ti, puedes recibir ayuda de otras personas con experiencia, o inclusive ayudar a otros a resolver su problema 🙂 .

Para mí estas son las razones mas importantes para elegir un proveedor de servidores virtuales y como Clouding.io encaja en todos (ademas de estar ubicados en Europa) decidí irme con ellos. Ademas, al adquirir el servicio con discos SSD, noté como mejora la carga de las páginas y el rendimiento de la BD, hoy en día, creo que es obligatorio usar esta tecnología de almacenamiento en tus servidores, pues ya está a un precio asequible y es increíble el aumento del rendimiento de escritura y lectura de datos.

Palabras finales

Espero que esta guía haya sido de utilidad para ti y puedas ofrecer a tus clientes en Europa, un servidor mas cercano para así mejorar la velocidad de carga de tu página. ¿Tienes alguna otra razón o característica que buscas en un servidor? Comenta y compártela.

Lamentablemente en el blog de docker y en los blogs de Debian anuncian la muerte de Ian Murdock. Quiénes hemos estado en el mundo del software libre desde hace años, seguimos su gran carrera principalmente por el desarrollo del proyecto Debian (del cual se basan la mayoría de distribuciones como Ubuntu), lideró el proyecto de Open Solaris, fue CTO de Linux Foundation y últimamente estaba trabajando con el equipo de Docker.

Aunque hace unos días compartió unos problemas personales en su cuenta de Twitter, su familia ha insistido en respetar su privacidad sobre todo en estos momentos. Por eso es mejor recordarlo por todas las grandes contribuciones realizadas al mundo del software libre.

Ian Murdock

Ian Murdock. Fuente: Wikipedia.org

Si no conoces quién es, te recomendamos leer un breve resumen de la carrera profesional de Ian Murdock en su página oficial.

Paz a sus restos.

Ser informático es una profesión con muchas ventajas, pero creo que un problema que nos afecta a todos nosotros, son las consecuencias de estar sentado muchas horas frente a la computadora. Aunque la mayoría sabemos que se incrementa el peso, se afecta el sueño, etc. Pocos toman medidas para reducir o evitar estas consecuencias.

En el Reject.JS 2015, hubo un charla que me llamó la atención porque a pesar de ser un evento con contenido técnico, esta ponencia habló sobre lo comentado en el párrafo anterior,  creando conciencia sobre problemas de salud comunes entre informáticos, medidas para evitarlos y mejorar nuestra salud en general. Les recomiendo verla para que conozcan sobre este tema y vayan aplicando los consejos para mejorar sus vidas.

Me pareció extraño ver una charla con ese tema en un evento técnico, pero como los asistentes somos informáticos, creo que sirvió para dar a conocer como mejorar la calidad de vida y salud de todos. Ojalá futuros eventos tomen la iniciativa e incluyan charlas interesantes para los informáticos pero con contenido fuera de lo técnico.

Les informo que VaSlibre, un grupo de usuarios de software libre radicados en la ciudad de Valencia, Venezuela; ahora tiene planeta (una página donde se muestran las entradas de distintos blogs) y me alegra que hayan decidido colocar el mío allí.

Así, recomiendo leer a Planeta VaSlibre y disfrutar de los artículos escritos por varios miembros de la comunidad. De esta forma, pueden leer contenido disponible en varios blogs de forma centralizada y que probablemente alguno de ellos no los conozcas por no haber estado involucrado al grupo.

El sitio es http://planeta.vaslibre.org.ve/ y recuerda guardarlo en tu lector de feeds favorito.

Hace unos días Dropbox (un servicio para almacenar archivos y fotos en Internet) anunció su plan de $9.99 mensuales por 1TB, algo muy atractivo para la mayoría, pero si no posees el dinero para adquirirlo, es insuficiente la cantidad de espacio disponible en el plan gratuito o te molesta saber que la NSA (la agencia de seguridad nacional de EE.UU.) tiene la posibilidad de acceder a tus archivos, entonces te recomiendo instalar tu propio servicio con ownCloud, donde tienes control de tus datos.

Owncloud es un proyecto de código abierto que permite almacenar archivos, imágenes, contactos y actividades de un calendario en un servidor central, para sincronizarlos automáticamente en varios dispositivos tal como lo hace Dropbox.

¿Por que usar ownCloud?

Esta aplicación me parece excelente cuando quieres tener privacidad total en la nube o tener un servicio de sincronización de archivos/información en una red local. Porque puedes instalarlo en tu propio servidor web y a través de los clientes sincronizarlo automáticamente, de esta forma, siempre podrás acceder a tus archivos en cualquier parte donde exista conexión a Internet. El espacio disponible será el espacio libre en tu servidor, lo que es probablemente mayor al espacio ofrecido por los planes pagos de otros servicios.

El protocolo WebDAV

Una de las ventajas de ownCloud, es el acceso a los archivos a través del protocolo WebDAV. Esto permite que utilices aplicaciones de terceros para acceder a los archivos, puedes utilizar el explorador de archivos de Gnome/KDE/Mac para navegar en las carpetas y descargar solo el archivo que vas a usar (para el caso de Windows, toca instalar una aplicación para tener esta funcionalidad).

Esto es útil cuando tienes por ejemplo 40GB de archivos en la nube y en uno de los dispositivos donde deseas tener tus archivos sincronizados no tiene ese espacio disponible. Pues solo descargas el contenido que vas a utilizar.

Clientes

A pesar que existen clientes para diversos sistemas operativos, solo tuve oportunidad de probar la versión para teléfonos Android y la de Linux.

Web

Esta es el cliente que viene obviamente por defecto, la interfaz es agradable y tiene todas las funcionalidades básicas: navegación de archivos, consulta de contactos, calendario,  generar enlaces para compartir archivos a otras personas, configuración, etc. Algo que me gustó es la posibilidad de ver tus fotos en una galería como en servicios de terceros, permitiéndote ver tus fotos en cualquier parte, también tiene soporte para cuentas múltiples, el único detalle negativo fue la subida de archivos, que si me parece un poco arcaica pero funciona bien (aunque en algunos servidores da problemas con el límite de subida de archivos en PHP). Hace falta un editor de archivos, pero existen plugins con Libreoffice (no los he probado) para poder implementar esta funcionalidad que por los momentos está de pruebas.

Interfaz Web de Owncloud

Interfaz Web de Owncloud

Android

Cliente de Owncloud en Android

Cliente de ownCloud en Android

La aplicación oficial de Owncloud para Android es paga aunque su costo es pequeño, el dinero recaudado sirve para financiar el desarrollo proyecto por lo que deberías adquirir esta versión. Otra alternativa, es utilizar la tienda de Android llamada F-Droid, la cual está llena de aplicaciones de código abierto y allí descargar ownCloud gratuitamente.

Funciona muy parecida a la de Dropbox, te permite recorrer tus archivos, descargarlos o compartir un enlace para enviar a terceros, cargar automáticamente las fotos que tomes en el teléfono, por mencionar algunas. Una característica que me gustó fue un indicador de que el archivo ya se había descargado, permitiendo conocer que archivos se encuentran en el teléfono y cuáles en la nube, muy útil para ahorrar consumo de datos, respecto a este tema, te permite seleccionar que solo sincronice archivos en WiFi o que no suba vídeos con plan de datos, brindando mayor control sobre el tráfico de datos.

GNU/Linux

Owncloud en Linux

Owncloud en Linux

La versión de Linux está hecha en QT (parece estar integrada con KDE) y se ejecuta en segundo plano para chequear cambios en las carpetas, para posteriormente subir los archivos. Esta aplicación permite seleccionar sincronizar varias carpetas del servidor en distintas carpetas locales, dando mayor flexibilidad al momento de organizar los archivos. La única limitación observada fue la ausencia de soporte para enlaces simbólicos (Dropbox si los soporta) pero se pueden utilizar nombres de carpetas distintos en la nube o sincronizar múltiples carpetas para solventar este problema.

El único problema que vi en este cliente, fue la imposibilidad de sincronizar a través de la red local (LAN) con otras computadoras conectadas a la misma nube y la poca inteligencia para detectar cambios en archivos, pues algunos archivos que había subido los volvía a descargar pensando que era otro mas nuevo por la fecha de modificación. Pero aparte de ello, no encontré otro problema.

Integración con Dropbox y Google Drive

Migrar a ownCloud no significa que te aísles del resto de servicios, pues tiene opciones para agregar carpetas con archivos alojados en: Amazon S3, Dropbox, FTP, Google Drive, OpenStack Object Storage, otro servidor de ownCloud, SFTP, WebDAV, entro otros. Con tan solo agregar una carpeta remota en las opciones e iniciar sesión, tendrás una carpeta sincronizada con estos servicios, permitiendo acceder de forma centralizada a cada uno de estos servicios.

Conclusiones

Te recomiendo utilizar ownCloud si deseas administrar tu propia nube personal, tienes un servidor con mayor espacio que el ofrecido por Dropbox, deseas administrar tu calendario y contactos sin depender de terceros. El hecho de tener muchos GB de espacio, acceso a mis archivos desde cualquier lado y con gran privacidad, fue suficiente para mí la migración a este servicio, además ¡Es de código abierto!

Si han estado involucrados en el movimiento del software libre en latinoamérica, probablemente conocen a Maria «Tatica» Leandro por sus contribuciones a la comunidad de Fedora, Darktable, organización del Flisol en Venezuela, por mencionar algunas. Pues hace unos días publicó en su canal en Youtube (al que les recomiendo suscribirse por sus útiles consejos sobre tecnología en general ) un vídeo inspirador de como ser emprendedor utilizando tecnologías libres.

Aunque el vídeo está dirigido al público femenino, funciona para cualquier género, por eso, les recomiendo ver el vídeo para que se inspiren en ser buenos profesionales utilizando tecnologías libres.

Espero que con el tiempo, cada vez sea mayor la participación del público femenino en comunidades de software libre, sobre todo en latinoamérica, pues conozco las dificultades o incomodidades para la mayoría de mujeres ante diversas situaciones, pero poco a poco esos problemas están desapareciendo, y vemos comunidades como Mozilla donde vemos participación equitativa de mujeres y hombres en sus actividades.