viernes, 3 de marzo de 2017

Seguridad Activa: Control de redes

Seguridad Activa: Control de redes.

1. Espiar nuestra red.

Vamos a espiarnos nosotros mismos, garantizando la disponibilidad de la red y detectar ataques en curso. Veamos las dos tipos de técnicas:
  • Monitorización: Trabaja a alto nivel, toma medidas agregadas, llamados controladores. Es habitual en las empresas por que:
    • Es fácil de activar en la red debido a que los equipos facilitan esta información sobre sus interfaces.
    • Genera poca información para transmitir y procesar.
    • Es suficiente para conocer la disponibilidad de la red o el tiempo de tráfico que transita.
  • Análisis: Trabaja a bajo nivel: Captura los paquetes que transitan por una interfaz (sniffer de red). Los paquetes solo son leídos, no interceptados: el paquete continúa su camino. El procesamiento de estos paquetes leídos permite generar medidas agregadas, pero sobre todo interesa analizar las conversaciones entre los equipos, comprobando que se ajustan al comportamiento esperado en el protocolo estándar (analizador de protocolos). La captura es muy costosa de activar en toda la red. Por eso solo se dedica a la detección de ataques.
E ambos casos necesitaremos herramientas que nos ayuden a recoger, analizar, procesar y presentar toda las información disponible.

Con estas herramientas hay que tener cuidado para conseguir un equilibrio entre los objetivos de seguridad y la carga extra que supone tratar esta información (CPU de los equipos de red, tráfico que ocupa en la red enviar los contadores o capturas hasta la herramienta, CPU del servidor de la herramienta, coste del software especializado, dedicación de personal de soporte a consultar los informes y tomar decisiones, etc).

Un problema típico para aplicar estas técnicas son una tormenta de broadcast, que podemos detectar en una interfaz. Y tan complejos como un DoS.

Además de estas dos técnicas tenemos un tercer elemento, la sonda. Una sonda es un equipo de la red que está programado para comportarse como un cliente normal de alguno de los servicios que tenemos desplegados. La sonda ejecuta sus operaciones periódicamente, de manera que, si alguna falla, podemos suponer que también le fallará al usuario y debemos corregir el problema.

Es fácil activar la monitorización ya que los equipos nos facilitan la información. Para capturar conversaciones es más compleja de activar. Las opciones son:
  • Conseguir el control sobre alguno de los extremos de la conexión para poder utilizar alguna de las herramientas tcpdump y wireshark.
  • Interceptar la conexión misma desde algún equipo de red por donde pasen los paquetes intercambiados.
  • Conectar de manera temporal un hub en el puerto que queremos vigilar, pero supondrá el dezplazamiento de equipos. Utilizamos un hub y no un switch porque el hub repite el tráfico de cada puerto a todos los demás, justo lo que necesitamos.
1.1. tcpdump.

Es una herramienta sencilla (disponible en Linux) que permite hacer un volcado de todo el tráfico que llega a una tarjeta de red. Captura todo el tráfico, no solo el tráfico TCP, como aparece en su nombre.
Los paquetes leídos se muestran en pantalla o se pueden almacenar en un fichero del disco para ser herramienta u otra más avanzada. Se necesitan privilegios para ejecutarla, porque necesitamos poner la tarjeta en modo promiscuo para que acepte todos los paquetes, no solo los destinados a suMAC.

1.2. WireShark.

Es una herramienta muy extendida (en Windows) para realizar capturas de tráfico y analizar el otros sniffer, como tcpdump. La interfaz de usuario es muy potente, así como el número de protocolos que es capaz de analizar.


1.3. Port mirroring. 

Suelen incorporar esta funcionalidad los switch gestionables. Consiste en modificar la configuración del switch para que replique todo el tráfico de un puerto a otro. En el segundo puerto conectaremos el sniffer. El equipo o equipos conectados en el primer puerto funcionan con normalidad, no saben que están siendo espiados.

Se puede elegir el tipo de tráfico:

  • Entrante: Desde el equipo hasta el switch.
  • Saliente: Desde el switch hasta el equipo.
En algunos modelos podemos hacer que varios puertos vuelquen su tráfico a un mismo puerto, aunque habrá que vigilar las prestaciones del conjunto porque pueden desbordar el ancho de banda de la interfaz o la capacidad de captura del sniffer, lo que ocasionaría la pérdida de paquetes, invalidando el análisis posterior.

1.4. IDS/IPS. Snort.

Existen diversas complicaciones a la hora de instalar dichos programas. Se necesitan muchos conocimientos y una buena experiencia en protocolos de comunicaciones para sacar el máximo partido a dichas aplicaciones. Para solucionar este problema existen:
  • IDS: Detectan ataques.
  • IPS: Actúan contra ellos.
Tenemos dos tipos de IDS/IPS:
  • NIDS/NIPS: Buscan ataques sobre servicios de comunicaciones. Se basan en el análisis de los paquetes que forman parte de la comunicación entre dos máquinas, comprobando que se ajustan al protocolo estándar.
  • HIDS/HIPS:  Buscan ataques sobre las aplicaciones y el sistema operativo de la máquina. Se basan en el análisis de los procesos actuales (ocupación de CPU y memoria, puertos abiertos) y la configuración y el log de cada uno de los servicios.
Estos sistemas procesan un fichero de captura de tráfico (o la realizan ellos mismos) y buscan patrones de comportamiento en los paquetes intercambiados entre los equipos. No se limitan a revisar las cabeceras del protocolo, sino que también miran en el contenido del paquete. Cuando detectan un posible ataque, si es un IDS solo avisa al usuario (como mínimo, fichero de log) y si es un IPS solo responde al ataque (también se puede hacer que los IPS avisen).


La respuesta de un IPS puede ser impedir que ese paquete y los siguientes de esa conexión lleguen a su destino. En los más avanzados se puede configurar que permitan que el paquete llegue, pero adecuadamente modificado para que no prospere el ataque.

La inteligencia de estas herramientas suele residir en un conjunto de reglas que se cargan en el programa desde un fichero de configuración. Las reglas son elaboradas por expertos en seguridad que, cuando han identificado un nuevo tipo de ataque, escriben la regla que permitirá al IDS detectarlo.

Veamos los problemas de los IDS:

  • Rendimiento: El número de reglas es creciente (hay nuevos ataques y no podemos descartar los antiguos) y el volumen de tráfico también, por lo que necesitamos un hardware muy potente para tener funcionando un IDS sobre capturas de tráfico en tiempo real.
  • Falsos positivos: Las reglas no son perfectas y puede que estemos alertando sobre comunicaciones que son perfectamente legales. Conviene probar muy bien una regla antes de meterla en un IPS.
2. Firewall.


Otra forma de defensa es tomar medidas en las máquinas que tengamos bajo nuestro control para que reaccionen adecuadamente ante la presencia de estos paquetes sospechosos. Tendían que superar un control más: firewall o cortafuegos.




2.1. ¿Qué hace?.

Firewall: Es un software que se interpone entre las aplicaciones y el software de red para hacer un filtrado de paquetes:

  • En el tráfico entrante: La tarjeta de red recibe el paquete y lo identifica, pero antes de entregarlo a la aplicación correspondiente, pasa por el firewall para que decida si prospera o no.
  • En el tráfico saliente: Las aplicaciones elaboran sus paquetes de datos, pero antes de entregarlo al software de red para que lo envíe, pasa por el firewall.
Normalmente, en las máquinas servidor actúa como tráfico entrante. La inteligencia del firewall se expresa mediante reglas de configuración. El administrador de la máquina puede individualmente activarlas, desactivarlas, modificarlas o añadir nuevas.

Las reglas del firewall son mucho más sencillas que las reglas de un IPS y generalmente se aplican solo a las cabeceras TCP/IP de las capas 3 (red) y 4 (transporte): el firewall básicamente mira direcciones IP y puertos, aunque también puede reconocer conversaciones entre dos equipos y controlarlas.

Si queremos aumentar la complejidad de las reglas o mirar el contenido de cada paquete, existe el firewall de nivel de aplicación, donde sí se entra a mirar en los datos de usuario que hay más allá de las cabeceras.

2.2. ¿Dónde situarlo?.

Toda máquina de una empresa conectada a la red necesita tener activado el firewall. El software no deseado, es bloqueado por el firewal de la máquina (bloquea paquetes de red no solicitados).

Esta medida sería suficiente; pero, para evitar que se inunde la red con paquetes que no llegarán a su destino, o para ayudar a máquinas que no tienen firewall en los puntos críticos de la red se suelen colocar máquinas independientes ejecutando tareas de firewall.


En empresas pequeñas este firewall de red seguramente ejecutará en una máquina que también hace las funciones de router; incluso puede que también aloje determinados servicios de la empresa en Internet. En las empresas grandes hay máquinas distintas para cada servicio, todas situadas en una subred especial llamada DMZ (Demilitarized Zone, zona desmilitarizada).

2.3. Firewall en Linux. Iptables.

Veamos las decisiones que puede tomar un firewall cuando llega un paquete a la red:

  • Descartarlo: Si el destinatario del paquete no es nuestra máquina o, aunque lo sea, ningún proceso actual lo espera, el paquete termina aquí.
  • Aceptarlo: Es para nosotros y hay un proceso que sabe qué hacer con ese paquete.
  • Aceptarlo porque es para nosotros y somos un router: Vamos a enviarlo por otra interfaz. En algunos casos llegaremos a modificar las cabeceras del paquete.
  • Aceptarlo aunque no es para nosotros y no somos un router: Estamos escuchando todos los paquetes porque somos un sniffer de red.
En el caso de Linux, la utilidad iptables permite introducir reglas para cada una de estas fases.
  • Cuando llega el paquete para un proceso nuestro pero todavía no se lo hemos entregado, en iptables hablamos de input.
  • Cuando somos un router y estamos a punto de traspasar el paquete de una interfaz a otra, en iptables hablamos de forward.
  • Cuando un paquete está listo para salir por una interfaz, en iptables hablamos de output.
Veamos algunas etapas más:
  • Prerouting: Se ejecuta antes de input. Sirve para obviar el enrutamiento porque sabemos exactamente qué tratamiento dar a esos paquetes.
  • Postrouting:  Se utiliza para aplicar alguna modificación a los paquetes que están a punto de abandonar la máquina.

Las reglas de iptables tienen una lista de condiciones y una acción, de manera que, cuando un paquete cumple todas las condiciones de una regla, se ejecuta la acción. En las condiciones podemos utilizar la interfaz por la que entró, la interfaz por la que va a salir, la dirección IP o la subred del paquete, el tipo de protocolo, el puerto origen o destino, etc. Las acciones pueden ser simplemente aceptar o rechazar el paquete, o también modificarlo.

Las reglas son agrupadas en tres tablas:
  • Filter: Tabla principal. Acepta o rechaza paquetes (es el firewall).
  • Nat: Permiten cambiar la dirección de origen o destino de los paquetes.
  • Mangle: Podemos alterar varios campos de cabecera IP.
2.4. Firewall en Windows 7.

Los sistemas operativos Windows siempre han tenido mala fama en cuanto a seguridad ante malware; sin embargo, la versión XP introdujo un firewall muy robusto y sencillo. Las versiones posteriores (Vista, Windows 7) han mantenido la robustez, aunque han sacrificado la sencillez para elaborar reglas complejas que permitan cubrir todas las necesidades del usuario.


Comparado con iptables, el firewall de Windows 7 es más sencillo (no hay tantas tablas ni etapas) y más agradable de usar (interfaz de ventanas en lugar de comandos). A diferencia de Linux, la configuración por defecto para las conexiones entrantes es rechazarlas, no aceptarlas.

3. Proxy.

Existe otra forma de enfrentarse al problema de controlar las comunicaciones de diversas máquinas. Podemos introducir un nuevo interlocutor en medio de la conversación. Ese nuevo intermediario es un proxy, y como tiene acceso a todos los paquetes intercambiados, puede aplicar medidas de seguridad.



Proxy: es un servicio de red que hace de intermediario en un determinado protocolo. El proxy más habitual es el proxy HTTP: un navegador en una máquina cliente que quiere descargarse una página web de un servidor no lo hace directamente, sino que le pide a un proxy que lo haga por él. El servidor no se ve afectado porque le da igual quién consulta sus páginas.

Veamos los motivos por lo que las empresas deben de tener instalado proxy:
  • Seguridad para el software del cliente: Puede ocurrir que el software del ordenador cliente esté hecho para una versión antigua del protocolo o tenga vulnerabilidades. Pasando por un proxy actualizado evitamos estos problemas.
  • Rendimiento: Si en una LAN varios equipos acceden a la misma página, haciendo que pasen por el proxy podemos conseguir que la conexión al servidor se haga solo la primera vez, y el resto recibe una copia de la página que ha sido almacenada por el proxy.
  • Anonimato: En determinados países hay censura a las comunicaciones, por lo que utilizar un proxy del extranjero les permite navegar con libertad.
  • Acceso restringido: Si en nuestra LAN no está activado el routing a Internet, sino que solo puede salir un equipo, podemos dar navegación al resto instalando un proxy en ese equipo.
3.1. ¿Qué hace?.

Cortar la comunicación. Este comportamiento se decide mediante reglas. En estas reglas podemos filtrar determinadas direcciones de origen o destino, algunas directivas del protocolo (palabras dentro de la URL de una página web), incluso contenidos (imágenes). Como podemos suponer, cuanto más compleja sea la regla, más tardará el proxy en aplicarla a las peticiones que le llegan, lo que puede ralentizar en exceso la comunicación.

Además de controlar las conexiones web, el proxy mejora el rendimiento global de la navegación porque guarda en disco las páginas que envía a los clientes. Es el llamado proxy caché. De esta manera, si esa misma máquina o cualquier otra solicita al proxy la misma página.

3.2. Dónde situarlo.

Si el volumen de tráfico que pasará por el proxy es reducido y las reglas definidas son sencillas, el servidor proxy necesitará pocos recursos (CPU, RAM, disco para la caché), por lo cual puede estar incluido en una máquina que ya ofrezca otros servicios (DHCP, DNS, disco en red, correo).

Si el volumen es elevado o las reglas que hemos definido son complejas, no podemos permitirnos afectar a otros servicios: necesitaremos una máquina en exclusividad (incluso más de una, formando un clúster). Aunque habrá que dimensionar adecuadamente el ancho de banda en esas máquinas dedicadas, porque van a recibir mucho tráfico.

En cualquier caso, el servidor proxy debe tener la mejor conectividad posible con los servidores para los que hace de intermediario (generalmente, servidores web en Internet).


3.3. Tipos de proxy.

Veamos los dos tipos de proxy:

  • Proxy explícito: Configuramos los navegadores de los usuarios para que se utilizen los proxy de la empresa.
  • Proxy transparente: En algún punto de la red un router filtrará ese tipo de tráfico y lo enviará al proxy, sin que el usuario tenga que hacer nada. Si estamos utilizando un router Linux, la solución óptima es instalarlo ahí, porque ahorramos sacar el tráfico hasta otra máquina.
Una tercera opción de navegación proxy al alcance de los usuarios es utilizar un proxy web. Esto es, una página web donde entramos para introducir la URL de la página web que realmente queremos visitar. El servidor del proxy web conecta con esa página y nos muestra el resultado. Este mecanismo es el más utilizado para evitar la censura en algunos países. En una empresa no es aceptable porque el tráfico de nuestros empleados está pasando por la máquina de una empresa desconocida y no sabemos qué puede hacer con esos datos.



Podemos incluir el macanismo de autenticación, para que solo algunos usuarios puedan acceder a Internet y solo a algunas web. En un proxy transparente no tiene sentido porque el usuario no tiene ninguna opción de introducir usuario y contraseña.

3.4. Proxy Squid: configuración y monitorización.

El software de servidor proxy más extendido es Squid. Tiene versión para Windows, pero aquí veremos la versión Linux, que es la más utilizada.

4. Spam.


Spam: Son los mensajes y correos electrónicos no solicitados o de procedencia desconocida, son sumamente molestosos. Todos estos correos llevan publicidad, pero también incluyen virus y troyanos que pueden venir en un fichero comprimido que aprovechan una vulnerabilidad del correo electrónico.



4.1. ¿Qué hace?.

Para determinar si un mensaje entra en una categoría peligrosa, el antispam utiliza:

  • Cabecera del mensaje: Buscando si el servidor de correo origen está en alguna lista negra de spammers reconocidos, si la fecha de envío utiliza un formato incorrecto.
  • Contenido del mensaje: Buscando palabras poco relacionadas con la actividad de la empresa, mensajes cuya versión de texto plano es muy diferente de la versión HTML.
  • Experiencia del programa: Según el tipo de mensajes que maneja el servidor de correo de nuestra empresa en concreto.

Cuando se detecta un correo spam, tenemos varias alternativas:
  • Bloquearlo e impedir que llegue hasta el usuario, así ahorramos molestias y evitamos posibles infecciones.
  • Dejarlo pasar, pero avisar al usuario que es un correo sospechoso.
  • Convirtiendo el texto del correo en un fichero adjunto para que sea más difícil engañar al usuario y solo lo abra si está seguro de que no es un mensaje peligroso.
4.2. SpamAssasin: configuración y monitorización.

Tiene una amplia eficacia y variedad de filtros para determinar si un correo es spam. Los filtros son especificados mediante reglas. Si el mensaje cumple dicha regla se le asigna una puntuación determinada. Cuando un mensaje supera un determinado lumbral (por defecto 5), se considera spam.      
                                                       

Además utiliza técnicas de inteligencia artificial (redes neuronales) para reducir el número de falsos positivos (correo spam que no lo es) y falsos negativos (correo spam que a sido detectado malicioso).


Vídeo:

sábado, 11 de febrero de 2017

Seguridad Activa: Acceso a Redes

Seguridad Activa: Acceso a Redes.

1. Redes cableadas.

Normalmente las máquinas están conectadas a una red de área local, para utilizar recursos de otras máquinas y para que otras máquinas se aprovechen de los suyos. Al igual que debemos de vigilar y mantener las máquinas, hay que mantener cuando los datos salen y entran por alguna de sus interfaces de red.

Obviamente también hay que protegerse de los ataques que provengan de la red. Las máquinas que ofrecen servicios TCP/IP debe abrir ciertos puertos. Estos puertos solicitan conexión de máquinas fiables siguiendo el protocolo estándar o máquinas maliciosas siguiendo una variación del protocolo que produce un fallo en nuestro servidor (en algunos casos se toma el control de la máquina, por eso se ejecutan con el mínimo de privilegios).

Las redes conmutadas tiene sus propias vulnerabilidades:

  • Hay que proteger el switch físicamente: Encerrarlo en un armario con llave dentro de una sala de control, así no evitaríamos solo el robo, si no también que alguien acceda al botón de reset y lo configure de otra forma.
  • Hay que proteger el switch lógicamente: Usuario y contraseña para acceder a su configuración.
  • Hay que hacer grupos de puertos: En switch suelen estar conectadas algunas máquinas que nunca se comunican entre sí. Debemos de aislarlas y evitaremos problemas de rendimiento y seguridad.
  • Controlar los equipos que se conectan y a qué puertos: En una empresa de procesadores solo pueden entrar máquinas de procesadores.
1.1. VLAN.

Los grupos de máquinas conectados a un switch constituyen una VLAN (LAN virtual). Lo llamamos virtual porque parece estar en una LAN propia, que la red montada para ellos solos. Utilizar VLAN mejora su rendimiento y seguridad, ya que únicamente las máquinas hablan entre ellas. Si ocurre un problema en una VLAN (ataques informáticos), las demás VLAN no se verán afectadas. Un ecxceso en el tráfico de red si afectaría a todos, debido que comparten switch.


Es raro que las VLAN estén completamente aisladas de el mundo, ya que necesitan acceso a Internet, así como conectarse con otros servidores internos de la empresa (discos, correo..). Para interconectar VLAN (capa 2), utilizaremos un router (capa 3).
  • Capa 2: Tiene una visión local de la red. Sabe como intercambiar los paquetes de datos con los equipos de su misma red. La comunicación es directa "origen-destino".
  • Capa 3: Tiene una visión global de la red. Sabe como llegar paquetes de datos hasta los equipos que no están en la misma red. La comunicación necesita pasar por el router.
El router necesitará conectarse con cada una de las VLAN, reservándose un puerto en cada uno, pero nos llevaría instalar muchas tarjetas en el router. La solución es utilizar un segundo tipo de VLAN (VLAN etiquetada).

1.2. Autenticación en el puerto . MAC y 802.1X.

Para evitar posibles desastres, los switch permiten establecer autenticación en el puerto. Solo podrá conectar aquel cuya MAC este dentro de lista realizada en el propio swictch, o, dado que las MAC se pueden falsificar, autentificarnos mediante RADIUS en el estándar 802.1X.


2. Redes inalámbricas.

El medio de transmisión (el aire) es compartido por todos los equipos y cualquier tarjeta en modo promiscuo puede perfectamente escuchar lo que no debe.


Lo más habitual son las redes de infraestructura, un equipo hace de switch, mientras los demás ordenadores se conectan a él, le envían sus paquetes y él decide como enviarlos (aire o cable). Por el cable es la configuración más habitual en empresas, donde WLAN es una extensión de la red cableada.

Al igual que ocurría con el switch, en la redes cableadas debemos de:

  • Proteger el access point físicamente: La protección es más complicada en cuanto al switch, porque el AP tiene que estar cerca de los usuarios para que puedan captar la señal, mientras que para conectar la toma de red de la mesa solo utilizamos un cable.
  • Proteger el access point lógicamente: Usuario y contraseña.
  • Controlar que clientes pueden conectarse: Autenticación.
  • Separar dos grupos de usuarios: El mismo AP emite varias SSID distintas, con autenticaciones distintas. Suelen tener asociadas una VLAN etiquetada.
  • Encriptar la transmisión: Entre el ordenador y el AP, para no sacar nada claro.
2.1. Asociación y transmisión.

En wifi se establecen dos fases:
  • Asociación.
  • Transmisión.
Durante la asociación el usuario elige la SSID a la que se quiere conectar y entonces su tarjeta inalámbrica contacta con el AP que ofrece esa SSID. Negocian varias características de la comunicación (protocolo b/g/n, velocidad, etc.), pero sobre todo el AP puede solicitar algún tipo de autenticación para decidir si debe dejarle asociarse o no. Generalmente es una clave alfanumérica que se registra en la confi guración del AP y que el usuario debe introducir para poder trabajar con él.


Los AP admiten varios tipos de autenticación:
  • Abierta: No hay autenticación, cualquiera puede asociarse con el AP
  • Compartida: La misma clave que usamos para cifrar la usamos para autenticar.
  • Acceso seguro: Usamos distintas claves para autenticar y cifrar. El usuario nsolo necesita saber la clave de autenticación: la clave de cifrado se genera automáticamente.
  • Autenticación por la MAC: El AP tiene una lista de MAC autorizadas y solo ellas pueden autorizarse.
Una vez asociados al AP, podemos empezar la fase de transmisión, durante la cual estableceremos conversaciones con el AP. Si queremos evitar que un tercero capture los paquetes intercambiados e intente conocer lo que transmitimos, el cliente y el AP deberán activar el cifrado de cada paquete. El tipo de cifrado (algoritmo, longitud de la clave, etc.) se negocia durante la asociación

El AP admite varias combinaciones: 
  • Autenticación abierta y sin cifrado: Utilizado en lugares públicos, la intención es no molestar al usuario tener que poner una clave.
  • Autenticación abierta y transmisión de cifrado: Esquema de las primeras redes wifi.
  • Autenticación compartida y transmisión de cifrado: Es una mala combinación, porque la autenticación es muy vulnerable y conocida esa clave tendrán acceso a descuifrar las comunicaciones de cualquier ordenador a ese AP.
  • Autenticación segura y transmisión de cifrado: Utiliza una clave distinta para cada cosa. La más conocida es WPA.
2.2. Cifrado: WEP, WPA, WPA2.

Se crean una serie de estándares, el primero se llamo WEP, intentando compensar las dos realidades:
  • En redes cableadas es difícil al acceso de cable, si alguien lo consigue puede capturas cualquier comunicación.
  • En redes inalámbricas cualquiera puede capturar comunicaciones, pero van cifradas.
Al poco tiempo se encontraron debilidades al algoritmo de cifrado WEP. Se creó un nuevo estándar llamado WPA. Dispone de las siguientes características:
  • Algoritmos más seguros: Aumento de la longitud de la clave, dificulta ataques.
  • Rotación automática de claves: Cada cierto tiempo el AP y el usuario negocian nuevas claves. 
  • Diferenciación entre ámbito personal y empresarial: En el ámbito personal es suficiente con una única clave. En el ámbito empresarial, WPA empresarial introduce un servidor RADIUS donde se puede almacenar un usuario y la clave correspondiente.
2.3. WPA empresarial: RADIUS.

Veamos el funcionamiento de el esquema empresarial:
  • Dentro de la LAN se ejecuta un software servidor RADIUS. En el servidor hay una base de datos de usuarios y contraseñas.
  • Los AP de la empresa tienen conexión con ese ordenador.
  • Los AP ejecutan un software cliente RADIUS (formula preguntas y analiza las respuestas).
  • El servidor RADIUS tiene una lista de direcciones IP de los AP que le pueden preguntar. El AP necesita que le configuremos una contraseña definida en el servidor.
  • Cuando un cliente intenta asociarse a un AP, le solicita usuario y contrasña. Pero no lo comprueba el mismo sino el servidor RADIUS.

Además de mejorar la seguridad, porque cada usuario tiene su contraseña (con su caducidad) y en cualquier momento podemos añadir o eliminar un usuario, con WPA empresarial podemos llevar un registro de quién entra a la red en cada momento.

3. VPN.

Podemos montar una VPN. El objetivo principal es que el empleado no note si está en la empresa o fuera de ella. En ambos casos recibe un configuración IP privada. El responsable de esto es el software de la VPN. En el ordenador del empleado hay que instalar un software cliente VPN. Este software instala un driver de red, de manera que para el sistema operativo es una tarjeta más. Ese driver se encarga de contactar con una máquina de la empresa, donde ejecuta un software servidor VPN que gestiona la conexión, para introducir los paquetes en la LAN. Consiste en:

  • Autentificar al cliente VPN: Se utiliza usuario y contraseña, tarjetas inteligentes, etc.
  • Establecer un túnel: El driver de la VPN en el cliente le ofrece una dirección privada de la LAN de la empresa pero cualquier paquete que intente salir por esa tarjeta es encapsulado dentro de otro paquete. Este segundo paquete viaja por Internet desde la IP pública del empleado hasta la IP pública del servidor VPN en la empresa. Una vez allí, se extrae el paquete y se inyecta en la LAN. Para que alguien de la LAN envíe un paquete a la IP el proceso es similar.
  • Proteger el túnel: Los paquetes encapsulados estarán encriptados.
  • Liberar el túnel: El cliente y el servidor pueden interrumpir la conexión cuando lo consideren necesario.

El software VPN en el cliente suele llevar una opción para que las conexiones a Internet se hagan directamente en la conexión del usuario, sin tener que pasar por el túnel y salir por la conexión a Internet de la empresa. Es decir, el túnel se usa solo para comunicaciones internas.

4. Servicios en red. Nmap y netstat.

La herramienta Nmap (para Windows y Linux), además del escaneo de puertos para determinar
los servicios disponibles en una máquina, podemos pedir a la herramienta que intente la conexión a cada uno de ellos. Después analiza los mensajes que generan estos servidores para identificar la versión concreta del sistema operativo y la versión concreta del software de servidor (server fingerprint) que está escuchando en cada puerto.


La información de versión es muy útil para un atacante porque puede consultar en su base de datos las vulnerabilidades de cada versión de un servicio y así elegir mejor el tipo de ataque que puede lanzar contra la máquina.

Para cada puerto la herramienta ofrece cuatro posibles estados:
  • Open: La máquina acepta paquetes dirigidos a ese puerto, donde algún servidor está escuchando y los procesará adecuadamente.
  • Closed: Ningún servidor escuchando.
  • Filtered: Nmap no puede decir si ese puerto está abierto o cerrado porque alguien está bloqueando el intento de conexión.
  • Unfiltered: El puerto no está bloqueado, pero no se puede saber si está abierto o cerrado.

Vídeo:

:

jueves, 26 de enero de 2017

Seguridad Activa: Sistema Operativo y Aplicaciones.

Seguridad Activa: Sistema Operativo y Aplicaciones.

1. Carrera de obstáculos.

Intentemos poner difícil a un hacker su trabajo, mediante las siguientes medidas de seguridad.

1.1. La caja del ordenador.

Lo principal es evitar que se lleve algunos de nuestros discos duros ya sean de portátiles o ordenadores.  La mayoría de las cajas de los ordenadores de sobremesa llevan un par de anclajes para colocar un candado normal. Tenemos también la opción de cambiar un tornillo normal por uno de llave.
Para los portátiles tenemos el mecanismo llamado Kensington: Tiene una cabeza que se introduce por una ranura especial de la caja del portátil. La cabeza continúa en un cable de acero para que lo enrollemos en alguna parte fija (la mesa o algún anclaje especial). La cabeza puede utilizar una llave o una combinación de números.

Estos candados son pocos efectivos, pero tiene algo de eficacia con respecto al ladrón, ya que tendría que perder tiempo. Incluso abriendo el disco duro tiene un detector que indica fecha y hora de la apertura en la BIOS.


1.2. La BIOS del ordenador.

Para evitar que un hacker haga una copia del disco duro mediante la técnica de arranque Live CD, entraremos en la BIOS y modificaremos el orden del arranque. Será configurado de tal manera que el disco duro sea el primero en arrancar en vez de el CD/DVD.

No debemos de olvidar cambiar las contraseñas del administrador, así el hacker no podrá modifica el arranque de la BIOS. En algunas empresas para arrancar la BIOS nos piden contraseña.

Si hemos olvidado la contraseña de la BIOS, la solución típica es retirar la pila que mantiene esos valores en memoria. En las placas base modernas directamente hay un jumper que, si está cerrado cuando el ordenador arranca, borra esos valores. Por ambos motivos (pila o jumper) hay que seguir evitando el acceso al interior de la caja del ordenador.


1.3. El boot manager.

Hemos conseguido que el hacker no arranque desde nuestra BIOS y solo acceda a nuestro disco duro local. En ese disco podemos tener varios sistemas operativos instalados mediante el programa boot manager. Ahora hay que establecer quién accede a cada opción.

1.4. Cifrado de particiones.

Después de todas las medidas realizadas, el hacker no se puede llevar nada y solo puede acceder al disco duro eligiendo unos de los sistemas operativos. Vamos a cifrar el contenido, de manera ilegible.




2. Autenticación en el sistema operativo.

Los sistemas operativos permiten incluir mucho más software de autenticación y más complejo. Veremos múltiples mecanismos para asegurarnos de que nuestro sistema solo lo usa quien está autorizado para ello.


2.1. Usuario/password.

Es el mecanismo más común. Aplicamos la estrategia "algo que sabes" (usuario y contraseña). Si la contraseña o usuario es erróneo, nos impide la entrada y nos deja intentarlo otra vez. En algunos sistemas nos ofrece una pista sobre la contraseña (si la pusimos la última vez que cambiamos la contraseña), y la mayoría tiene un límite de intentos. Alcanzado ese límite, el sistema se puede bloquear durante un tiempo o definitivamente (por ejemplo, los móviles tienen un límite de tres intentos para introducir el PIN). Con este límite evitamos ataques de fuerza bruta que prueben una a una todas las combinaciones de letras, números y caracteres especiales.

Otra medida de alta seguridad es cambiar el nombre por defecto de los usuarios con más privilegios en el sistema. De esta manera, tendrán que aplicar fuerza bruta para usuario y contraseña.

Aun así, siempre conviene utilizar contraseñas no triviales: palabras que no aparezcan en el diccionario de ninguna lengua, combinar letras mayúsculas con minúsculas, números, signos de puntuación, etc. Y cambiar la contraseña regularmente, porque no sabemos cuánto tiempo llevan intentando atacarla. Los sistemas operativos permiten obligar al usuario a cumplir todas estas norma.

2.2. Tarjetas.

En algunas ocasiones, el mecanismo de usuario y contraseña no es suficiente: es inseguro (alguien puede espiar qué teclas pulsamos) o simplemente molesto (por ejemplo, en los tornos de acceso a la entrada de la empresa no podemos perder el tiempo tecleando). Para estos casos aplicaremos la estrategia «algo que tienes» y repartiremos tarjetas entre los usuarios. Por ejemplo, los cajeros automáticos de los bancos aplican una seguridad doble: la tarjeta más un número PIN. Las tarjetas son de dos tipos: Sencillas o complejas, las magnéticas van desapareciendo.

Las tarjetas con chip son más seguras pero más caras, ya que son utilizadas en ocasiones especiales. Hay dos tipos:
  • Dispositivos de almacenamiento: Contienen nuestras claves para que las lea el dispositivo donde introducimos la tarjeta.
  • Dispositivos de procesamiento:  Contienen nuestras claves, pero nunca salen de la tarjeta. El chip se limita a cifrar con ellas algún desafío que lanza el dispositivo por donde introducimos la tarjeta.
2.3. Biometría.

Consiste en identificar alguna característica física del sujeto (huella dactilar, ojo, voz..). La persona o personas autorizadas deben grabar primero su característica física. Por ejemplo, en la huella se graban dedos de las dos manos, por si se sufre un accidente en una de ellas. Después, cada vez que quieran utilizar el ordenador, deberán situar el dedo encima del sensor.

Como hemos dicho antes, el control biométrico no es sustitutivo del usuario/contraseña, sino complementario: conviene tener los dos para aumentar la seguridad (estrategia «algo que sabes, algo que eres»). Aunque en algunas ocasiones sí se utiliza individualmente para ahorrar la molestia de estar pulsando teclas: por ejemplo, para acceder a alguna zona vip de la empresa.

2.4. Elevación de privilegios.

Ya estamos autentificados en el sistema operativo y podemos trabajar con el, pero limitaremos los privilegios a los distintos usuarios asociados con ele sistema. En las empresas la mayoría de las empresas utilizan usuarios que no tiene permisos para realizar tareas de administrador. 

Pero hay determinadas situaciones (instalación de nuevos programas, modificación de parámetros del sistema) para las que sí necesitamos ser administradores. Una solución es salir del usuario actual y entrar como administrador, pero es más sencillo solicitar, de manera puntual, una elevación de privilegios. Consiste en pedirle al sistema ejecutar un determinado programa con permisos de administrador. Se aplica solo a ese programa y solo a esa ejecución: no afecta a las aplicaciones abiertas antes o después, ni siquiera cuando abramos ese mismo programa más adelante.

En cuanto al usuario, dependiendo de la configuración del sistema, nos aparecerá una ventana de confirmación o una autentificación.

3. Cuotas.

Vamos a protegernos de las personas que "sí" están autorizadas debido a que nuestros usuarios ya sea intencionado o no pueden dañar el sistema. Para evitar esto, los sistemas se configuran para aplicar cuotas. Para el disco, se establece que cada usuario puede ocupar un número determinado de bytes (megabytes, gigabytes). Cuando excede ese límite, podemos configurar de modo que el sistema no le
permita extenderse más. Veamos como asignar las cuotas:

  • Si son muy bajas: Tendremos a los usuarios quejándose todos los días porque no les dejamos trabajar. Hay que tener especial cuidado con los usuarios que se crean porque son necesarios para arrancar una aplicación.
  • Si son muy altas: No tendrán el efecto disuasorio que se espera de ellas y, al final, terminaremos comprando más disco.

4. Actualizaciones y parches.


El CD/DVD utilizado para instalar Windows contiene una versión concreta liberada en una fecha concreta. Desde entonces, los programadores de Microsoft han seguido trabajando. El resultado son las actualizaciones, paquetes de software donde se introducen mejoras y corrigen defectos. Como administradores del sistema debemos de instalar esas actualizaciones (se descarga automáticamente de Internet).

Podemos elegir entre:
  • No buscar actualizaciones ni instalarlas (no recomendado).
  • Comprobar si hay actualizaciones, pero no descargarlas ni instalarlas.
  • Descargar actualizaciones, pero no instalarlas.
  • Descargar e instalar siempre (lo más habitual).
Los parches son parecidos a las actualizaciones, pero se utilizan solo para corregir defectos y suelen necesitar que el usuario lo descargue y lo instale. Cuando alguien detecta un problema en una aplicación, el fabricante avisa a todos los clientes afectados, les describe un workaround (si lo hay) y, cuando tiene el parche que lo arregla, les avisa para que lo descarguen de su web. Por esto es necesario tener copias originales de las aplicaciones.

5. Antivirus.

Aunque tengamos el sistema actualizado, hay muchos hacker que quiere perjudicarnos. Son los llamados virus informáticos. Estamos hablando de malware y tenemos que evitarlo. Los virus pueden instalarse en nuestra máquina sin que lo sepamos, aprovechando algún defecto del sistema operativo o las aplicaciones instaladas. Hay veces que les "abrimos la puerta" debido a que estamos haciendo una instalación de algún sitio no oficial.


El antivirus es un programa que está vigilando continuamente lo que ocurre en nuestra máquina. Concretamente, cualquier software que se intenta ejecutar (.exe, .dll) primero pasa por el antivirus. Él lo compara con su base de datos de virus y, si lo encuentra, impide que se ejecute y avisa al usuario. Aunque el antivirus siempre va por detrás del virus, es importante tenerlo actualizado. La actualización afecta tanto a la base de datos de virus conocidos como al software del propio antivirus.

6. Monitorización. 


Después de todas las medidas de seguridad, aún no estamos seguros. Debemos de vigilar que todo esté normal. Esto consiste en: 
  • Revisar los log del sistema y las aplicaciones.
  • Activar la copia sincronizada del log en otra máquina.
  • Revisar la ocupación del sistema (disco duro, CPU).
  • Suscribirse a las newsletters de los fabricantes de nuestro software y hardware para tener a mano las últimas actualizaciones, parches..
  • Participar en foros de usuarios de las mismas aplicaciones que nosotros.

La monitorización de los log consiste primero en diferenciar qué es un problema y qué no lo es. El texto de log ayuda porque suele tener un indicador de gravedad (crítica, alto, medio, bajo o simple aviso), aunque es la clasificación del fabricante. Para conocer la ocupación de recursos de una máquina podemos entrar en ella y lanzar herramientas locales.

Conviene instalar una herramienta de inventario y monitorización. El inventario es la lista de equipos y conexiones y la configuración de ambos. La monitorización es la supervisión en todo momento del estado de los elementos del inventario. En cuanto al sistema se comportan de la siguiente forma:
  • Rastrean la red buscando altas y bajas de equipos en el inventario.
  • Identificar los distintos equipos (ordenadores o red). Para ello es necesario que los equipos ofrezcan interfaces estándares.
  • Registran una base de datos para generar informes mediante la configuración de el sistema.
  • Incorporan alertas sobre la ocupación de discos, interfaz..
  • Podemos monitorizar en directo la actividad de las interfaces de red, CPU..


El punto de inflexión suele ser un límite en la proporción entre el número de equipos y el número de integrantes del departamento de soporte informático. Cuando el personal ya está desbordado de trabajo, introducen estas herramientas permite automatizar las tareas rutinarias y así dejar tiempo libre a  personas que atienden los problemas.



7. Aplicaciones web.

Veamos las distintas evoluciones de la informática:
  • En los años 60/70 eran monolíticas: La interfaz de usuario como la lógica de proceso, estaba en la misma máquina. La protección de una aplicación monolítica se centraba en proteger la máquina donde ejecutaban todos los programas.
  • En los años 80/90: Aparecen los ordenadores personales y las redes de comunicaciones dentro de las empresas. Se implementan las aplicaciones con arquitectura cliente-servidor, la interfaz de usuario y parte de la lógica de proceso están en el ordenador del usuario, y el resto de la lógica de proceso está en un ordenador central, al que conectan los ordenadores de usuario mediante la red local. La protección se complica: ahora hay que proteger a cada cliente, el servidor y la red local de la empresa.
  • A partir de los años 90: Internet permite extender las aplicaciones web. Las diferencias son que el cliente suele ser siempre el mismo (el navegador) y la comunicación utiliza redes públicas, sobre las que la empresa tiene nulo control. La protección es más difícil que nunca.

Las ventajas de implementar una aplicación mediante tecnologías web son:
  • No necesitamos instalar nada en el cliente: solo se necesita el navegador. Con esto evitamos instalar un cliente nuevo que pueda entrar en conflicto con otras aplicaciones de la máquina, el usuario no necesita privilegios especiales para instalar programas.
  • Cualquier actualización generada por nuestros programadores está inmediatamente disponible para los usuarios porque siempre descargan la página actualizada de la última versión. No hay que esperar a que todos los usuarios sean avisados de la actualización, la descarguen, instalen..

Pero debemos de tener cuidado con:
  • La máquina que aloja el servidor web y sus aplicaciones accesorias. Si un hacker toma esta máquina, tiene acceso a toda la información y todas las conexiones de los usuarios. Hay que aplicar las medidas de protección que hemos estudiado en este tema.
  • Si la máquina del servidor web no es nuestra, sino alquilada no tenemos control sobre las medidas de protección. Debemos confiar en la profesionalidad del proveedor.
  • La transmisión entre el cliente web (navegador) y el servidor web. Muchas aplicaciones todavía utilizan el protocolo HTTP, donde todo viaja en texto en claro. En algún tramo de red puede estar escuchando un hacker y conocer qué hacemos, incluso modificarlo. Optaremos por HTTPS.
  • La máquina de un usuario conectado puede haber sido hackeada y su navegador también. Es importante instalare un antivirus.

8. Cloud computing.


"Computación en la nube". Debemos de saber diferenciar entre computación en la nube y almacenamiento en la nube. El almacenamiento en la nube aporta flexibilidad (GB), pero se limita a guardar archivos y carpetas. La computación en la nube es más amplia, ejecuta programas que trabajan con archivos (base de datos, servidores..). Sin embargo la computación en la nube puede trabajar con archivos de almacenamiento en la nube.

A las empresas ya no les interesa conectar a Internet un servidor web de su CPD porque necesitan dedicar recursos (buena conectividad, servidores potentes..). Además, abrir al exterior las conexiones del CPD es una fuente de problemas por la cantidad de ataques que nos pueden llegar.

No convence alquilar espacio en un hosting porque, si es un servidor web compartido, el rendimiento es bajo; si es un hosting dedicado, suelen ser máquinas individuales de media potencia.

8.1. LaaS: Infrastructure as a Service.


La empresa quiere una máquina entera (Linux, Windows..) en un proveedor, pero con una diferencia al hosting dedicado: esa máquina ejecutará en un entorno virtual, de manera que podemos regular la potencia. Si la aplicación está en exceso de carga, contratamos más CPU y más RAM (más costes). Cuando ya no lo esté, volveremos a la configuración básica. Incluso se puede solicitar que arranquen más máquinas (instancias). El proceso es el mismo que las instalaciones de máquinas virtuales. Aun así, seguiremos necesitando personal autorizado para administrar las distintas máquinas.

8.2. SaaS: Software as a Service.

Las empresas que no tienen suficientes recursos para contratar LaaS, eligen SaaS, aplicaciones completas donde el mismo proveedor se encarga del desarrollo de la aplicación, su mantenimiento y también pone las máquinas y la conectividad.

En cuanto a la protección de las aplicaciones, en ambos casos (laaS, SaaS), como ya ocurría con el hosting, perdemos el control sobre la seguridad de la máquina y el software que ejecuta en ella. Confiamos en la profesionalidad del proveedor y redactar los SLA del contrato del servicio.




Vídeo:

martes, 20 de diciembre de 2016

Seguridad Pasiva: Almacenamiento.

Seguridad Pasiva: Almacenamiento.

1. Estrategias de almacenamiento.

Para una empresa, la parte más importante son 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.
En los casos anteriores, es fácil recuperar en tiempos razonables.

De todas formas, los datos de cada empresa son únicos: no se pueden comprar, contratar y no hay originales. Si se pierden, es difícil recuperarlos.

Ya que los datos son muy importantes, debemos mejorar su integridad y disponibilidad;
  • Podemos comprar los mejores discos en cuanto a calidad y velocidad.
  • Podemos concentrar los discos en servidores especializados en almacenamiento.
  • Podemos recopilar información varias veces y repetirla en distintas ciudades.
  • Podemos contratar un servidor de respaldo de datos a otra empresa, conectados a internet, para no depender de nuestros equipos y personales.
Cada empresa elegirá implantar alguna de estas medidas, según sus necesidades y presupuesto.

1.1. 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. Si conectamos más controladores, tendremos para conectar más dispositivos. Podemos aprovechar varios discos duros de un ordenador para:

  • Crear unidades más grandes: Cuantos más discos, más unidades de almacenamiento.
  • Crear unidades más rápidas: Consiste en configurar los discos de manera 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: Podemos configurar varios discos de manera que en cada fichero, los bloques se escriban una vez en ambos discos . Si uno falla, los datos estarán salvo con el otro.
Una de las tecnologías que consigue todo lo anterior se llama RAID. Existen varios niveles, 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: El RAID 0 es el más rápido de cada uno de los nombrados, pero tan seguro como cualquiera de ellos. El RAID 1 es más seguro que los discos separados, pe4ro 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 (en general, la paridad) para obtener información complementaria a ese dato, de tal manera que se puede recuperar el dato en caso de perder cualquier disco (sea disco de datos o paridad).
    • Una vez obtenida la paridad, se hace striping para repartir el dato y su paridad por los discos conectados al RAID.
Por tanto, necesitamos un disco más para almacenar la paridad. Si queremos 1 TB, necesitaremos 3 discos de 500 GB (o cincos de 250 GB).

Gracias al striping hemos conseguido mejor rendimiento que el disco individual, y gracias a la paridad estamos más seguros que en RAID 0. A cambio, sacrificamos la capacidad de un disco (aunque cuantos más discos, menos porcentaje de capacidad perdida).
Estamos viendo que el RAID para el sistema operativo es una especie de disco «virtual», que está organizado en stripes (bandas, filas). Al igual que el tamaño del bloque en los discos «físicos» (512 bytes, 4 096 bytes) y el tamaño del bloque del sistema de ficheros (4 096 bytes en NTFS), en el RAID es importante el tamaño de stripe. El valor recomendado es 64 KB.

Si tenemos tres ficheros y queremos almacenarlos en un RAID donde, por simplificar, el tamaño de stripe es el mismo que el tamaño de bloque del sistema operativo.




El primer fichero ocupa 3 bloques, el segundo 4 y el tercero 5. Todos los discos son de 1 TB.
  • Si tenemos cuatro discos y los configuramos en RAID 0, los bloques de los ficheros se reparten por los cuatro discos. La capacidad total es de 4 TB, y los bloques de un fichero se pueden recuperar simultáneamente por varios discos.
  • Si ponemos dos discos en RAID 1, los bloques de los ficheros se copian en los dos. La capacidad total es de 1 TB.
  • Si ponemos los cuatro discos en RAID 5, los bloques de los ficheros se reparten por los cuatro discos, pero hay que incluir un bloque R que representa la redundancia (la paridad). La paridad se calcula para cada fila (el stripe que hemos visto). Este bloque no se usa durante la lectura (salvo fallo de un disco), pero sí durante la escritura, porque hay que actualizarlo. Los bloques R no se dejan en el mismo disco para evitar cuellos de botella.
1.2 Almacenamiento en red: NAS y SAN. Clústers.

Tenemos que pensar cómo compartir ficheros y cómo hacerlo con seguridad (quién puede leer esos ficheros y quién puede modificarlos, borrarlos o incluir nuevos). Veamos las soluciones no recomendables:
  • Hacer de servidor de ficheros afectará al rendimiento de sus aplicaciones y viceversa.
  • Estaríamos pendientes de si la otra persona lo ha apagado al salir de la oficina.
  • En un ordenador personal, es posible que no se disponga de RAID ni copias de seguridad.
  • Estamos en peligro de que en el ordenador entre algún virus y lo borre todo.
Por tanto, lo mejor es ponerlo en un servidor dedicado y, a ser posible, especializado en almacenamiento. Veamos como:
  • Podemos instalar el software necesario y tenerlo actualizado.
  • Estará bajo la revisión del personal del CPD, lo que garantizará su funcionamiento (copias de seguridad, revisión de almacenamiento interno..).
  • Si se dispone de un servidor especializado en almacenamiento, dispondrá de suficiente hardware para desplegar configuraciones de RAID, memorias caché de alto rendimiento..
NAS se reconoce como almacenamiento conectado a la red. Veamos como un equipo con almacenamiento local desea ofrecerlo a otros equipos de la red: Este equipo servidor ejecutará un determinado software servidor que respon de a un determinado protocolo. Aquel equipo que necesite acceder a esa carpeta compartida, ejecutará un software cliente capaz de interactuar con el servidor de acuerdo con el protocolo del servidor

SAN se reconoce como red de almacenamiento integral. Funciona de la siguiente forma: En un SAN los discos están en lo que se llama un «armario», donde se realiza la configuración RAID. El armario dispone de cachés de alto rendimiento para reducir los tiempos de operación Los servidores se conectan al armario mediante conmutadores de fibra óptica (por eso hablamos de network). La configuración de los armarios es flexible: para cada equipo se pueden asignar unos discos concretos y reservarle cierta cantidad de caché. Y cambiarlo cuando sea necesario.


Un clúster es un cojunto de máquinas (llamadas nodos) coordinadas para realizar una tarea en común. Puede ser una base de datos, un servidor web, un sistema de gestión de redes, búsqueda de vida extraterrestre, almacenamiento compartido de Internet. Cada máquina ejecuta una parte de la funcionalidad y está coordinada con el resto de las máquinas. Para ello necesitan un determinado software de clúster instalado en todas ellas y, sobre todo, un almacenamiento fiable y de alto rendimiento, porque los nodos intercambian mucha información.

1.3. Almacenamiento en la nube y P2P.

Vamos a suponer que nuestra empresa ya tiene sus instalaciones NAS y SAN, aún así, hay más necesidades:
  • Queremos colgar ficheros para nuestros clientes y proveedores.
  • Cuando estamos fuera de la oficina podemos necesitar algún fichero (un presupuesto, un contrato).
  • 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.
Podríamos almacenarlo todo en un USB, pero no es recomendable ya que los datos pueden perderse con facilidad. 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. Veamos los servicios de almacenamiento en la nube:
  • La primera generación 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 es más fácil, directamente sincronizan carpetas de los dispositivos (ordenador personal, móvil, tableta) 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 (aunque también está disponible).
Pero todos estos servicios tienen sus 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 están muy extendidas entre particulares, 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.

2. Backup de datos.

Veamos la diferencia entre:
  • Backup de datos: Copias de seguridad de los usuarios o empresas.
  • Imagen del sistema: Copias de seguridad de los programas (S.O y aplicaciones).
Hay que crear una copia de seguridad diariamente, dependiendo de la actividad de la empresa. debemos de saber que tipo de datos hay que salvar:
  • 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.
Para cada tipo de información anterior hay que acordar la frecuencia de respaldo. Normalmente se suele efectuar una copia diariamente, dependiendo de la actividad empresarial.

2.1. Tipos de dispositivos locales y remotos. Robot de cintas.

Una vez decidido la frecuencia de copias de seguridad, hay que decidir donde se realizará la copia: soporte físico y ubicación de este soporte físico. en cuanto a soporte físico:
  • 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.
  • 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.
Si vamos a utilizar soportes extraíbles, que se pueden extraviar, debemos preocuparnos por cifrar el contenido. 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 la sede se sustituyan por 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.

2.2. 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.
Una empresa podría decidir hacer todos los días copia completa. Pero, si hay muchos datos, es un proceso lento y algo arriesgado, porque hay que vigilar que se esté haciendo una copia consistente de la información (mientras se hace la copia, el sistema sigue funcionando y en cualquier momento alguien puede introducir cambios). Con la copia diferencial o incremental tenemos las mismas garantías, porque recuperamos la información aplicando la última cinta completa y la última diferencial (o la última completa y todas las incrementales).

En una empresa normal,es habitual el esquema de 10 días:

  • Una para un Backup completo (viernes).
  • Cuatro para un Backup parcial diario. (diferencial o incremental, lunes a jueves).
  • Cinco para Backup completos anteriores (mensual, trimestral, anual..).

Elegir entre diferencial o incremental para el backup diario depende de cada empresa. Si hay poca actividad diaria, se puede permitir el diferencial, porque aporta la ventaja de que cada cinta diaria tiene toda la información necesaria para recuperar ese día (en el incremental, si perdemos la cinta de un día, puede que tenga ficheros que no estén en las cintas siguientes). Pero si hay mucha actividad, estamos de nuevo ante el problema de mantener la consistencia de la copia.

3. 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.

3.1. 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.
3.2. 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).

3.3. 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.

3.4. 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.







Vídeo: