Sincronizando la configuración de Elastix con Dropbox

Ahora que están de moda las nubes de todo tipo, comienzan a surgir muchas ideas de cómo sacarles provecho. Una de las ideas que más se está utilizando es la del respaldo de información. Así que mucha gente opta por sincronizar sus archivos con la nube como una forma de respaldo o de distribuir su información para hacerla accesible desde varias localidades o dispositivos.

Contado lo anterior, cae por su propio peso la idea de respaldar Elastix en la nube.

Para el presente artículo aprovecharemos del popular servicio de Dropbox para sincronizar los archivos de configuración de Elastix. De esta manera, en caso de algún desastre en nuestro servidor Elastix, podremos recuperar los archivos de la nube, o utilizar la nube como una herramienta de versionamiento, donde podremos consultar cómo han cambiado nuestros archivos de configuración a través del tiempo.

En inicio, una cuenta gratuita de Dropbox será más que suficiente. Al momento de escribir estas líneas, una cuenta gratuita ofrece 2GB de almacenamiento gratuito. Suponiendo que ya tenemos una cuenta en Dropbox, lo primero que haremos será descargar Dropbox para línea de comandos de Linux. No mucha gente conoce que existe una versión del cliente de Dropbox para línea de comando, pero sí, existe, y es oficial. La descargamos con el siguiente comando.


cd /opt/
wget http://www.dropbox.com/download?plat=lnx.x86

La ruta para 64 bits es esta: http://www.dropbox.com/download?plat=lnx.x86_64 Luego lo descomprimimos.

tar -xvzf dropbox-lnx.x86-1.2.49.tar.gz

El resultado será una carpeta oculta y esto puede confundir un poco. Para verla ejecutamos el comando ls con la opción “a”.


# ls -la
drwxr-xr-x 3 root root 4096 dic 16 13:38 .
drwxr-x--- 9 root root 4096 dic 16 13:35 ..
drwxr-xr-x 4 1000 1002 4096 dic 5 14:21 .dropbox-dist
-rw-r--r-- 1 root root 15789424 dic 16 13:37 dropbox-lnx.x86-1.2.49.tar.gz

Luego ejecutamos el programa dropboxd que reside dentro de la carpeta .dropbox-dist

./.dropbox-dist/dropboxd

Aquí veremos un mensaje que nos pide vincular nuestro computador con nuestra cuenta de Dropbox.

This computer isn't linked to any Dropbox account
Please visit http://www.dropbox.com/cli_link?host_id=abeee9b1b5448a8ddaa336832470601

Una vez visitado el vínculo que Dropbox nos pide (y de que hayamos ingresado los datos de nuestra cuenta), nuestra instalación de Dropbox nos dará un mensaje como el siguiente:

This computer is now linked to Dropbox. Welcome Edgar.

Luego de esto podemos enviar la aplicación al background para poder hacer otras cosas desde la consola. La aplicación dropboxd se dedicará a sincronizar el contenido de nuestra cuenta en el servidor Elastix. Para esto creará una carpeta llamada Dropbox en el home del usuario. Por ejemplo, para el usuario «edgar», la carpeta será /home/edgar/Dropbox.

A continuación creamos, dentro de la carpeta /home/edgar/Dropbox, un enlace simbólico a la carpeta donde Asterisk guarda sus archivos de configuración /etc/asterisk

cd /home/edgar/Dropbox
ln -s /etc/asterisk etc.asterisk.dropbox

A partir de este momento, todos los archivos de configuración de Asterisk se sincronizarán con “la nube” dentro de una carpeta que tendrá el nombre de «etc.asterisk.dropbox». Este nombre es arbitrario y ustedes pueden usar cualquier nombre que les guste.

De este mismo modo podríamos crear links simbólicos para otras carpetas de interés. Lo interesante es que casi inmediatamente después de que cambie un archivo dentro de estas carpetas, los cambios ya estarán disponibles en Dropbox y en caso de problemas con cierta configuración que hayamos cambiado, siempre podremos obtener una versión anterior de los archivos a través de Dropbox. Bonito, cierto?

Es importantísimo en este punto resaltar algo que a lo mejor el lector no ha caído en cuenta.

Cualquier cambio que haga en el contenido de los archivos de configuración (que he sincronizado con Dropbox), ya sea desde la interfaz Web de Dropbox o desde cualquier dispositivo, SERÁ SINCRONIZADO CON EL SERVIDOR ELASTIX!

Esto convierte este recurso en una poderosa herramienta de configuración remota de nuestro servidor Elastix, pero también añade una dosis de riesgo pues si realiza de manera errónea, podemos dejar a nuestro servidor VoIP sin servicio.

Espero que hayan disfrutado este artículo y les dejo con una captura de pantalla de los archivos de configuración ya sincronizados con una computadora, esperando que utilicen esta herramienta con prudencia 😉

Screen Shot 2014-05-10 at 1.44.38 AM