martes, 31 de enero de 2017

Seguridad Pasiva: Almacenamiento


Estrategias de almacenamiento

Para una empresa, la parte más importante de la informática son los datos: sus datos.
Porque:
  • El hardware es caro, pero se puede volver a comprar.
  • Un informático muy bueno puede despedirse, pero es posible contratar otro.
  • Si una máquina no arranca porque se ha corrompido el sistema de ficheros (el típico BSOD), puedes instalar de nuevo el sistema operativo y las aplicaciones desde los CD o DVD originales.
Bien, puesto que los datos son tan importantes, hay que esforzarse especialmente en mejorar su integridad y disponibilidad

  • Podemos comprar los mejores discos del mercado en calidad (MTBF) y velocidad; aunque nunca debemos olvidar que son máquinas y pueden fallar (salvo los SSD, todos los discos tienen partes móviles). En un puesto de usuario nos lo podemos permitir (lo cambiamos y listo): en un servidor hemos visto que no.
  • Podemos concentrar los discos en unos servidores especializados en almacenamiento.
  • Podemos replicar la información varias veces y repartirla por ciudades distintas.
  • Podemos contratar el servicio de respaldo de datos a otra empresa, conectados por Internet, para no depender de nuestros equipos y personal.

Rendimiento y redundancia. RAID en Windows y Linux

Los ordenadores pueden conectar varios discos internos porque las placas base suelen traer integrada una controladora de discos para dos o tres conexiones. Y si pinchamos más controladoras

Crear unidades más grandes. Dos discos de 500 GB juntos nos pueden dar una unidad de 1 TB. Con tres discos tenemos 1,5 TB, etc. Por ejemplo, si queremos ripear un Blu-ray de 25 GB y solo tenemos discos de 20 GB, necesitamos juntar dos en una unidad de 40 GB.

Crear unidades más rápidas. Si tenemos dos discos de 500 GB y configuramos el sistema para que, en cada fichero, los bloques pares se escriban en un disco y los impares en otro, después podremos hacer lecturas y escrituras en paralelo.
Crear unidades más fiables. Si configuramos los dos discos anteriores para que, en cada fichero, los bloques se escriban a la vez en ambos discos, podemos estar tranquilos porque, si falla un disco, los datos estarán a salvo en el otro.

Pues una de las tecnologías que lo consigue se llama RAID. Hay varios niveles de RAID.
Los más importantes son:

  • RAID 0. Agrupamos discos para tener un disco más grande, incluso más rápido. Desde ese momento, los bloques que lleguen al disco RAID 0 se escribirán en alguno de los discos del grupo. Por supuesto, para el usuario este proceso es transparente: él solo ve un disco de 1 TB donde antes había dos discos de 500 GB. En el RAID 0 podemos elegir entre spanning y striping (que es lo más común). En cualquier caso, si falla uno de los discos, lo perdemos todo.
  • RAID 1. Se le suele llamar mirror o espejo. Agrupamos discos por parejas, de manera que cada bloque que llegue al disco RAID 1 se escribirá en los dos discos a la vez. Si falla uno de los discos, no perdemos la información, porque estará en el otro. A cambio, sacrificamos la mitad de la capacidad (el usuario ha conectado dos discos de 500 GB y solo tiene disponibles 500 GB, en lugar de 1 TB) y no ganamos rendimiento.
  • RAID 5. Hemos visto que el RAID 0 es más rápido que cada uno de los discos, pero tan seguro como cualquiera de ellos. El RAID 1 es más seguro que los discos por separado, pero con el mismo rendimiento. El RAID 5 consigue ambas cosas aplicando dos mecanismos:
Para cada dato que el sistema quiere almacenar en el RAID, este aplica un procedimiento matemático para obtener información complementaria a ese dato, de tal manera que se puede recuperar el dato en caso de perder cualquier disco

Una vez obtenida la paridad, se hace striping para repartir el dato y su paridad por los discos conectados al RAID.

Almacenamiento en red: NAS y SAN. Clústers

Pero en las empresas se suele trabajar en equipo, compartiendo ficheros entre varios ordenadores. Tenemos que pensar cómo compartir ficheros y cómo hacerlo con seguridad

  • Hacer de servidor de ficheros afectará al rendimiento de sus aplicaciones (Office, Chrome), y viceversa.
  • Estaríamos pendientes de si la otra persona lo ha apagado al salir de la oficina
  • Es un ordenador personal, luego es probable que no disponga de RAID ni copias de seguridad.
  • Estamos expuestos a que un virus entre en ese ordenador y borre todo.
  • Podemos instalar el software estrictamente necesario y tenerlo actualizado
  • Estará bajo la supervisión del personal del CPD, lo que garantiza estar encendido todo el tiempo, formar parte de la política de copias de seguridad de la empresa, detectar cuando el disco está próximo a llenarse, etc.
  • Si, además, es un servidor especializado en almacenamiento, dispondrá de hardware suficiente para desplegar configuraciones RAID, una memoria caché de alto rendimiento, etc.

Almacenamiento en la nube y P2P

  • Queremos colgar ficheros para nuestros clientes y proveedores.
  • Cuando estamos fuera de la oficina podemos necesitar algún fichero
  • Vamos a continuar en casa un trabajo que tenemos a medias.
  • Simplemente queremos una copia de unos documentos importantes en otro lugar que no sea la oficina.

Para un empleado, una solución simple es guardarlo todo en un pendrive USB. Pero se pierden con demasiada facilidad (y la información que va puede ser muy importante: conviene haberla cifrado) y además no podríamos trabajar simultáneamente con otros compañeros (aunque cada uno lleve su pendrive, los siguientes cambios no estarían sincronizados).
La solución habitual era abrir un acceso directo desde Internet hasta los discos de la empresa. Funciona, aunque es delicado, porque al final es una «puerta trasera» por donde pueden intentar entrar hackers, y llegar hasta esos discos o cualquier otro servidor nuestro.

La primera generación (Megaupload, FileServe, etc.) consiste en que un usuario sube un fichero a una web para que lo descarguen otros usuarios conectados a esa web.
Pero resulta incómodo, primero porque solo almacena ficheros, sin una estructura de carpetas; y, segundo, porque si queremos todos los ficheros de una carpeta, hay que ir uno por uno, o comprimirlos en un zip y subirlo.

La segunda generación  es más simple: directamente sincronizan carpetas de los dispositivos entre sí y con los servidores del proveedor. Cualquier cambio que hagas en cualquier dispositivo automáticamente ocurre en los demás dispositivos y en el disco del proveedor, sin necesidad de acordarse de conectar a una web y hacer la descarga.

Todos estos servicios tienen ventajas e inconvenientes:

Nuestros datos están fuera de nuestras instalaciones, por lo que podemos acceder a ellos a cualquier hora, sin estar allí, y con la tranquilidad de que cualquier desastre que ocurra en la oficina no les afectará.

La empresa proveedora del servicio de almacenamiento en la nube se preocupa por hacer copias de seguridad de los datos que subimos; incluso suelen conservar versiones anteriores de cada fichero que modificamos.

La conectividad a Internet de estas empresas suele ser muy superior a la nuestra, por lo que el acceso es rápido. Y al mismo tiempo no ocupamos ancho de banda de nuestra conexión.

Sin embargo, perdemos el control sobre el acceso a nuestra información. Tenemos que confiar en la capacidad técnica y humana del proveedor de almacenamiento en la nube para evitar ataques sobre sus servidores (de nuevo, conviene cifrar los archivos que subimos a la nube). Y confiar también en que no incurre en prácticas delictivas, como el caso Megaupload, que cierra el servicio a todos los clientes, inocentes o no.

Las soluciones P2P (peer to peer) están muy extendidas entre particulares (eMule, Torrent); las empresas no suelen recurrir a ellas para información confidencial porque, si en almacenamiento en la nube teníamos que desconfiar de un proveedor, en P2P son miles. Pero sí son interesantes para difusión de contenidos, como hace PandoNetworks.

Backup de datos

Ni el RAID 1 ni el RAID 5 nos permiten dormir tranquilos. Estamos protegidos ante el fallo de uno de los discos, pero no si fallan dos. O si se incendia la sala y arde el servidor. O si alguien accede a la máquina y la formatea. Podemos ver el RAID como una forma de seguir funcionando, aunque haya fallecido uno de los discos. Pero nuestros datos son más importantes y hay que seguir protegiéndolos. Por eso haremos copias y las llevaremos lo más lejos posible.

  • Primero vamos a distinguir entre:
    • Backup de datos. Copia de seguridad de los datos del usuario o empresa que están almacenados en un ordenador.
    • Imagen del sistema. Copia de seguridad de los programas (sistema operativo y aplicaciones) que están instalados en un ordenador.
Normalmente se hace una imagen del sistema justo después de instalarlo y configurarlo, o después de la instalación de una aplicación importante. En cambio, el backup de datos hay que hacerlo diariamente, incluso con más frecuencia, dependiendo de la actividad de la empresa.


  • El segundo paso es identificar los datos que tenemos que salvar. Aquí tenemos que distinguir entre:
    • Ficheros. Pueden ser unidades enteras, la típica carpeta Mis Documentos, etc. Existe la complicación de detectar los ficheros que están siendo modificados precisamente cuando se ha lanzado la copia.
    • Sistemas complejos. como las bases de datos, donde la concurrencia de cambios suele ser mucho más alta que con ficheros, porque una operación afecta a varias tablas. Por este motivo, los servidores de base de datos tienen sus propios mecanismos de exportación del contenido de las tablas.
  • Finalmente, para cada tipo de información identificada en el paso anterior, hay que acordar la frecuencia de respaldo. En un supermercado, para la base de datos de empleados puede ser suficiente efectuar una copia diaria o semanal; pero la base de datos de ventas no puede esperar tanto.

Tipos de dispositivos locales y remotos. Robot de cintas

  • Una vez hemos confirmado qué información del disco duro queremos conservar y con qué frecuencia, hay que decidir dónde hacemos la copia: soporte físico y ubicación de este soporte físico. En cuanto al soporte físico, podemos pensar en:
  • Usar otra partición del mismo disco duro. No es buena idea, porque si falla el disco, lo perdemos todo. Por cierto, esta es la solución de los ordenadores personales para evitar entregar DVD de instalación del sistema operativo.
  • Usar otro disco de esa máquina; pero si se destruye la máquina, lo perdemos todo.
  • Pasarlo a un disco duro extraíble para llevárnoslo, o quizá el disco duro de otra máquina al que accedemos por FTP. Sería aceptable, pero los discos duros son relativamente caros; por lo menos, mucho más que otras tecnologías de almacenamiento, como las cintas o los discos ópticos, que además son fáciles de transportar y realmente no necesitamos las elevadas prestaciones de un disco duro.
  • Si podemos elegir entre cintas y discos, mejor las cintas porque tienen más capacidad y son más fiables y reutilizables. Las cintas más usadas son las LTO

La facilidad de extraer un soporte y poner otro es vital. Primero porque evitamos estar siempre utilizando el mismo elemento, lo que acelera su deterioro, y sobre todo porque las copias de seguridad, si podemos, hay que conservarlas lo más alejadas posible del disco copiado, para evitar que un desastre en la sala de ordenadores también termine con las copias. Por ello:

  • Si nuestra empresa tiene dos sedes, conviene que las cintas de una sede se intercambien con las cintas de la otra por mensajería.
  • Si solo hay un edificio, en la parte opuesta al CPD.
  • Deben estar siempre en una sala con control de acceso, para evitar que cualquiera llegue hasta nuestros datos.
  • Dentro de la sala, hay que meterlas en un armario ignífugo.


Una vez elegido el soporte, hay que decidir dónde ponerlo. Alguien debería ir máquina por máquina cambiando las cintas, y etiquetando perfectamente de qué máquina son y a qué día corresponden. Interesa centralizar estas tareas repetitivas y que las hagan máquinas, no personas. En las empresas se suele instalar una librería de cintas donde se hace el backup de todos los servidores de la empresa y también aquellos puestos de trabajo que lo necesiten. Cada cinta está etiquetada y el robot mantiene una base de datos donde registra qué cinta utilizó en cada momento. Las etiquetas suelen ser códigos de barras y también RFID.
Este dispositivo remoto está conectado a la LAN de la empresa o directamente a los servidores mediante SAN. Ejecuta un software servidor que conecta con un software cliente instalado en cada equipo seleccionado. Normalmente, la red que utiliza es una LAN o VLAN distinta a la LAN de trabajo (los ordenadores con función de servidor suelen llevar dos interfaces de red). Al utilizar una LAN diferente, la actividad de la empresa no se afectada por el tráfico de backup, y viceversa.

Tipos de copias 

  • Completa: Incluye toda la información identificada. Si era una unidad de disco, todos los archivos y carpetas que contiene; si era una base de datos, la exportación de todas sus tablas.
  • Diferencial: Incluye toda la información que ha cambiado desde la última vez que se hizo una copia de seguridad completa. Por ejemplo, si el lunes se hizo una completa y el martes solo ha cambiado el fichero a.txt, en la cinta del martes solo se escribe ese fichero. Si el miércoles solo ha cambiado el fichero b.doc, en la cinta del miércoles se escribirán a.txt y b.doc.
  • Incremental: Incluye toda la información que ha cambiado desde la última copia de seguridad, sea completa o incremental. En el ejemplo anterior, la cinta del martes llevará el fichero a.txt, pero la cinta del miércoles solo b.doc.

Imagen del sistema

La imagen del sistema no es tan importante como los datos, porque en último extremo podríamos instalar desde cero, con el CD/DVD del sistema operativo y las aplicaciones necesarias, y después aplicaríamos a ambos las opciones de configuración que tenemos documentadas. Pero este proceso es lento y generalmente necesita que un técnico esté presente (y también se puede equivocar); una imagen nos ayudará a recuperar el sistema rápidamente y sin errores.

La imagen de un sistema es un volcado del contenido del disco duro. Con todo: ejecutables y datos del sistema operativo, ejecutables y datos de las aplicaciones instaladas y datos personales de los usuarios. Generalmente se comprime en un único fichero que ocupa muchos gigabytes, dependiendo del tamaño del disco, la ocupación y el tipo de contenidos. Ese fichero suele estar cifrado y se almacena lejos del sistema original, como hacemos con las cintas del backup.


Como hemos explicado antes, la imagen no es un método adecuado de hacer copias de seguridad en una empresa. Es cierto que copiamos todo, programas y datos, pero es un proceso lento durante el cual el sistema no está operativo, lo que es incompatible con la misión crítica que la informática desempeña en una empresa

Creación y recuperación. LiveCD

Existen distintas herramientas para crear y recuperar imágenes, pero puede suponer inconvenientes. Veamos una solución sencilla para cualquier plataforma hardware habitual. Consiste en la utilización de un LiveCD Linux, con el cual arrancaremos el ordenador cuyo disco queremos clonar. Una vez dentro, elegiremos el dispositivo local o remoto donde almacenar la imagen (generalmente, un disco USB) y procederemos a ejecutar la copia. Por supuesto, una solución alternativa es apagar el ordenador, extraer el disco duro, pincharlo en otro ordenador y hacer la copia allí. El LiveCD nos ahorra esas manipulaciones.

Las ventajas de LiveCD son:
  • Permite clonar sistemas Windows o Linux porque trabajamos con el disco duro.
  • Es una solución válida para cualquier hardware.
  • El formato del fichero es estándar, de manera que un fichero creado con LiveCD se puede recuperar con otro LiveCD diferente.

Los inconvenientes son:
  • Como cualquier imagen hay que recuperarla entera.
  • Durante la recuperación estamos escribiendo en todo el disco.
  • El tamaño del disco donde recuperamos debe de ser el mismo que el disco original.
  • No incluye opciones avanzadas, como dejar la imagen en el mismo disco e instalar un gestor de arranque que permita recuperarla fácilmente, como ocurre en los ordenadores actuales. Aunque es una opción poco fiable, porque el daño del disco que nos lleva a recuperar la imagen le puede haber afectado a ella.

Congelación

En algunos entornos interesa dar una configuración estable al ordenador y después impedir cualquier cambio, venga del usuario o de algún intruso (virus, troyano, etc.). El ejemplo más típico son las salas de ordenadores de un cibercafé: cuando se acaba el tiempo de alquiler del puesto, hay que borrar cualquier rastro (ficheros personales).

Esta es la misión del software de congelación: una vez instalado, toma nota de cómo está el sistema (snapshot) y, desde ese instante, cualquier cambio que ocurra en el sistema podrá ser anulado cuando el administrador lo solicite (en el caso del cibercafé se configura para que ocurra de manera automática en el próximo arranque).

Los sistemas Windows también incluyen esta funcionalidad de crear puntos de restauración, pero la funcionalidad es limitada, porque solo se preocupan de programas, no de datos. Las herramientas de congelación suelen permitir mantener varios snapshots, para facilitar volver a otras situaciones pasadas; aunque el espacio ocupado en el disco puede llegar a ser un problema.

El principal inconveniente de esta solución aparece cuando queremos instalar un programa nuevo. En algunos programas hay que descongelar, instalar y volver a congelar; en otros simplemente recordar que, si alguna vez recuperamos un snapshot anterior, habría que volver a instalarlo. Y esto se agrava con el hecho de que la mayoría de los sistemas operativos y las aplicaciones se actualizan con mucha frecuencia (el famoso Patch Tuesday). Por tanto, las soluciones de congelación tienen una aplicabilidad bastante limitada porque es difícil administrar los distintos snapshots (nos pueden interesar unos ficheros de uno y otros de otro).

Registros de Windows y puntos de restauración

Los sistemas Windows incluyen una funcionalidad similar al software de congelación del apartado anterior: se llaman puntos de restauración y recogen el estado de los ejecutables y la configuración del sistema operativo (no se incluyen los documentos de los usuarios). Es importante crear un punto de restauración antes de efectuar cambios importantes en el sistema, como la instalación o sustitución de drivers o la aplicación de parches. De hecho, las actualizaciones automáticas de Windows siempre crean primero un punto de restauración.

Si el cambio aplicado ha sido un desastre, podemos volver a la situación anterior utilizando el punto de restauración. Es una operación irreversible: una vez lanzado, no podemos interrumpirlo y el sistema quedará con esa configuración. Por este motivo, en las versiones modernas, como Windows 7, podemos consultar exactamente los ficheros que se van a modificar.

Si el cambio solo afecta a la configuración, entonces nos podemos limitar a proteger el registro. El registro es una base de datos interna donde el sistema operativo y las aplicaciones anotan información de configuración. Si sufre algún daño o se manipula indebidamente, las aplicaciones afectadas pueden dejar de funcionar y necesitar ser instaladas de nuevo.

Herramientas del chequeo de discos

Ya sabemos cómo proteger nuestros datos frente a un fallo en un disco (RAID, backup, almacenamiento en la nube, etc.). Pero no deberíamos esperar sentados hasta que un disco falle y confiar en que entrará en funcionamiento el mecanismo de respaldo. Siempre es aconsejable tomar medidas preventivas, en este caso la detección temprana del fallo.