jueves, 2 de agosto de 2018

Linux y Onedrive.

En la actualidad, tener un espacio en la nube se ha convertido, al menos en el ámbito profesional, en algo casi imprescindible. La posibilidad de tener toda la información disponible a todas horas en el móvil, de poder enviar archivos de gran tamaño a un cliente, o simplemente de tener una copia de respaldo de los datos de la oficina son valores positivos que hay que tener en cuenta cuando se pretende cierto grado de eficiencia y de seguridad.

Ahora bien, cuando hablamos de entornos profesionales no vale cualquier servicio, sino que hay que tener especial cuidado en lo que a protección de datos se refiere, puesto que el manejo de datos personales de terceras personas (clientes, por ejemplo), requiere que se cumpla la legislación vigente. No hacerlo está sujeto a duras sanciones que, en la gran mayoría de los casos, supondría la ruina automática para muchos pegueños y medianos negocios.

Microsoft OneDrive

En el caso concreto de la abogacía, el Consejo General de la Abogacía ya ofrece desde hace tiempo una cuenta de Microsoft a cada colegiado, que incluye no sólo correo electrónico, sino Office 365 y también Onedrive empresarial, que cumple con la legislación española y europea de protección de datos y que, por tanto, puede usarse con toda confianza por parte de los abogados que así lo deseen.

El problema, como viene siendo habitual, es que Onedrive no tiene cliente oficial para linux. Sigue así la política de Google, que tampoco ha ofrecido jamás un cliente para linux de Drive, y eso que bien que les ha interesado usar linux para sus propios sistemas, para desarrollar Android, e incluso para sus Chromebooks. Pero, como dice el refranero, "Bien me quieres, bien te quiero, mas no te doy mi dinero". Es lo que hay y los que usamos linux desde hace tiempo ya sabemos que no podemos esperar mucho de ciertas compañías.

Existe, además, un problema añadido, y es que el Consejo General de la Abogacía Española ofrece una cuenta empresarial o business de Onedrive, que tiene requisitos distintos a las cuentas personales de dicho servicio. Existen opciones como Onedrive-D que gozan de cierta fama, pero sólo funciona con cuentas personales, no empresariales. Existen otras alternativas que dicen funcionar también en cuentas business, pero en general son proyectos mantenidos por una o dos personas, algunos ya descontinuados, y otros son muy inestables en su funcionamiento, lo que los inhabilita para su uso profesional. Por supuesto, hay que agradecer el esfuerzo de los desarrolladores que, de forma altruista, ofrecen al público en general el esfuerzo de su trabajo, pero estamos buscando una opción que dé cierta seguridad en un entorno de uso que requiere una mínima estabilidad, y lo cierto es que esos proyectos, aun muy loables, no son adecuados.

¿Es un pájaro? ¿Es un avión? ¡Es Rclone!

Todo aquél que tiene o ha tenido cierto contacto con linux conoce Rsync, un famosísimo programa de sincronización de archivos. Rclone viene a ser lo mismo, pero para sincronizar una carpeta del ordenador con un servicio en la nube.

Rclone funciona con 30 servicios diferentes, e incluso con protocolos como FTP, SFTP, WebDAV y directorios locales. Se puede acceder a toda la información disponible en su página web, y merece la pena echarle un vistazo. Además, se encuentra en los respositorios de las distribuciones más conocidas, por lo que no existe problema alguno en su instalación. Eso sí, en Debian estable (Debian 9.5 a la fecha de publicación de esta entrada), la versión de Rclone es la 1.35, que sólo es compatible con cuentas personales. Hay que descargarse la última versión de la página oficial (existen paquetes ".deb" preparados) para trabajar con cuentas profesionales.

Una vez descargado el paquete de su página oficial, tan sólo hay que ejecutar el siguiente comando (como root) para instalarlo:

dpkg -i [paquete.deb]

La concifuración es muy sencilla. Como usuario normal, hay que ejecutar el siguiente comando:

rclone config

El programa iniciará entonces una configuración interactiva que guiará incluso al más novato por todo el proceso. En primer lugar, elegimos crear un servicio nuevo y darle un nombre. Después, de entre todos los sistemas disponibles, hay que escribir el número correspondiente a Onedrive (el 10, en la versión que yo he manejado), elegir la opción Onedrive business, y decir que sí cuando nos pregunte si queremos la opción auto config. El programa entonces abrirá un navegador con la página de Onedrive, en el que tendremos que acceder con nuestro usuario y contraseña, darle permiso a Rclone para acceder y, finalmente, nos devolverá un cófigo que Rclone capturará automáticamente. Por último, decimos que sí si está todo OK y todo estará preparado.

De todas formas, para cualquier duda o problema, la página oficial tiene un completo tutorial al que puede accederse pinchando aquí.

Uso de Rclone

Rclone puede hacer múltiples operaciones en la nube configurada. Puede crear carpetas, copiar archivos, borrarlos, hacer un listado del contenido... En la ayuda del programa se pueden consultar todas las opciones pero, en nuestro caso, nos centraremos en la sincronización, es decir, en crear una copia idéntica de una carpeta en Onedrive. La opción para ello es la siguiente:

rclone sync -v [carpeta origen] [nombre de la nube:][carpeta de la nube]

Un ejemplo práctico. Supongamos que queremos copiar la carpeta "/home/Expedientes" de nuestro ordenador a la carpeta "Copia" de Onedrive. Y supongamos que, a la hora de configurar Onedrive en Rclone, le dimos el nombre de "minube". El comando sería así:

rclone sync -v /home/Expedientes minube:Copia

El programa hará una copia idéntica de la carpeta "home/Expedientes" en Onedrive, eliminando de la nube todos los archivos que hayan sido eliminados en la carpeta "/home/Expedientes". Así nos aseguramos tener en Onedrive una copia siempre igual a la última versión de todos los documentos. La opción "-v" la he utilizado para que vaya informando el programa de los cambios que va haciendo. Si se quita, el programa funcionará en completo silencio, sin dar ninguna información. A gusto del consumidor queda utilizarla o no.

Claro, habrá quien diga que menudo rollo tener que ir haciendo las copias a mano, y que es preferible que se haga automáticamente a ciertas horas. En ese caso, podemos utilizar cron para automatizar el proceso. Usamos, como usuario normal, el siguiente comando:

crontab -e

Ello abre el archivo de configuración de cron. Debajo de la última línea del archivo, y sin borrar nada, escribimos lo siguiente:

0 13,19 * * * rclone sync /home/Expedientes minube:Copia

Después, grabamos los cambios y ya está configurado cron. En el ejemplo expuesto, se harán dos copias de seguridad, una a las 13 horas y otra a las 19 horas, pero pueden especificarse las horas que uno quiera, o especificar sólo una copia o dos, o minutos o días concretos. Para aprender cómo usar cron, es mejor consultar esta página.

Esto es todo, amigos

Si todo va bien, aquéllos que utilicen linux y sean profesionales de la abogacía podrán, gracias a Rclone, utilizar los servicios que ofrece el Consejo General de la Abogacía Española para guardar o compartir documentos profesionales, cumpliendo además con la legislación sobre protección de datos, y con toda la tranquilidad que ello conlleva.