Tengo un nuevo proyecto con nombre molón …

Hard_Disk.png… y que responde a las pomposas siglas UCS. Y estas siglas corresponden a Unidad de Copias de Seguridad. Así, con un par.

¿ Y en qué consisten exactamente ? Pues en pequeñas unidades hardware, normalmente equipos NAS, que con el software indicado funcionan de forma autónoma para recuperar datos de la empresa y almacenarlos fuera de sus instalaciones.

qnap_ts212_6tb.jpgLa idea surge de una pregunta que me hacen los propietarios de la empresa donde trabajo. ¿ Tenemos los datos a salvo fuera de nuestras instalaciones ? Y mi respuesta en ese momento fue que no, que existen copias parciales actualizadas irregularmente, pero nada automatizado. Y entonces, percatándome de su desconfianza e intranquilidad, me puse a pensar en las opciones que tenía ante mi.

Podía, por una parte, adquirir discos vía USB e ir actualizándoselos regularmente; eso requería más interacción con ellos de lo que que puedo aceptar, así como un trasiego de dispositivos y ciertas visitas a sus domicilios para ajustar y resolver dudas dado que lo grabaría en volúmenes cifrados.

Siguiendo la vieja máxima que reza Copia de seguridad no automatizada es copia de seguridad no realizada creo que puedo escribir algunos scripts para que la sincronización sea más llevadera, algo del tipo enchufar y ejecutar, pero confieso que la pereza me puede. ¿ Tengo que ponerme a programar para resolver el trabajo ? Pues sí es así, ¿ qué tal si lo hago en condiciones y le doy un carácter más personalizado y duplicable ? Siendo dos los propietarios de la empresa no sería de extrañar que quisiesen tener cada uno su propia unidad, ¿ no ?

Requerimientos

Pero lo primero de todo es plantearme qué quiero que haga una UCS.

  1. Debe funcionar de forma autónoma. Bastará con enchufar, conectar a un router doméstico con salida al exterior, y ponerla en marcha.
  2. Debe conectarse ella solita a la empresa de la manera más segura posible. Una VPN es bastante adecuada para ello, aunque lo mismo basta con un túnel SSH.
  3. La unidad debe comenzar ella misma las copias en ciertos horarios que no impidan el funcionamiento de la empresa. El acceso a la red es el típico ADSL basura español que no permite muchas alegrías.
  4. Debe guardar un registro de las operaciones de copia y -más importante aún- debe ser capaz de mostrarlo de alguna manera a la red local a la que está conectada. Es decir, no sólo debe hacer las copias, también es muy importante que el custodio de la unidad (también llamado jefe) pueda ver que se están realizando.
  5. Como extras podríamos llegar a tener:
    1. La UCS tendría que ser capaz de permitir el acceso a los datos de forma local. No es imprescindible pero sí que le dotaría de muchísima más autonomía y valor de cara a los jefes.
    2. Se debería incluir software dentro de ella que permitiese reconstruir un servidor mínimo desde la base (bare metal restore).

La seguridad

Y éste es mi principal quebradero de cabeza en estos momentos. Creo que es un detalle de diseño muy importante y que no debo posponerlo para más adelante o estaré tirando trabajo.

Supongamos que los propietarios ya tienen cada uno su UCS en sus acogedores hogares. Entonces se quedan mirando el trasto y piensan: ¿ y si entran a robar ? Siempre se dice así, entrar a robar, como si lo normal no fuese allanar el local y hacerlo desde fuera. Bueno, el caso es que vuelven hacia mi sus ojitos y me interrogan al respecto.

Mi respuesta es convincente (discos cifrados, nivel militar, claves complejas, túneles privados y bla, bla, bla) porque no entienden casi nada pero a mi me deja un regusto amargo. Sí, puedo y debo cifrar los discos donde van a estar los datos (por cierto que son unidades configuradas como RAID 1) y sí, también tengo claro de que si la clave está en el mismo dispositivo no habremos avanzado mucho porque si alguien roba el artefacto se lleva los datos y la contraseña de descifrado.

Pero también me doy cuenta de que uno de los extras que he mencionado antes se va a volver muy importante en el futuro: visualizar de forma local los datos guardados. Para ello o las versiones visualizables están en claro o están cifrados y se debe introducir una clave. Si la clave es verdaderamente fuerte no va a haber manera de que los propietarios de la empresa la introduzcan correctamente cuando quieran consultar datos, y terminarán desechando el invento por la incomodidad que supone y, lo peor, tirando abajo todo mi invento. Un asco.

Y pensando, pensando sobre ello se me ocurre una idea: ¿ qué tal si se utiliza una memoria USB como llave de acceso ? El dispositivo con el que estoy creando el propotipo dispone de un puerto de este tipo y el proceso de montaje (como sólo lectura) es fácilmente automatizable. Memoria insertada, datos accesibles, memoria retirada, datos protegidos. ¡ Genial ! Además eso les da la oportunidad de disponer de algo físico que guardar aparte, con lo que la seguridad final recae en ellos. Soy un monstruo.

El interfaz web debería informar del estado de dicho acceso y permitir la utilización de la clave directamente por si acaso pierden el dispositivo. Buena idea. Me lo apunto.