Introducción al Cloud Computing Concepto de cloud computing >Origen del nombre En los mapas de arquitectura de red, Internet se representa como una nube. Es una convención. Referencia 1: iconos de red de CISCO >Origen del nombre
Referencia 2: búsqueda en Google de imágenes referidas a los términos network, topology e internet. >Definición del término La definición no está clara porque está en evolución. La industria del cloud computing es un ecosistema de soluciones y tecnologías de lo más variado.
NIST:National Institute of Standards and Technology mission is to promote U.S. innovation and industrial competitiveness by advancing measurement science, standards, and technology in ways that enhance economic security and improve our quality of life. Programa específico para la investigación de seguridad de sistemas y tecnologías emergentes en el que se investiga el cloud computing Se establece una definición de cloud computing. Concepto de cloud computing >Cloud computing son el conjunto de tecnologías que permiten, a través de la red, habilitar un conjunto de recursos TIC compartidos (servidores, almacenamiento, aplicaciones, etc) que presten servicio rápidamente, bajo demanda y con una mínima intervención por parte del proveedor. >Hablar de cloud computing es hablar de
disponibilidad y flexibilidad de recursos TIC. >Características esenciales Autoservicio bajo demanda El cliente del servicio determina qué recursos y cuándo los necesita. Aprovisionamiento automatizado. Acceso a través de la red desde múltiples dispositivos. Conjunto de recursos compartidos El conjunto de recursos es compartido por distintos clientes. El conjunto está compuesto de recursos físicos y virtuales. Es distribuido y no tiene una localización física única (disponibilidad). Infraestructuras descomunales. >Características esenciales Elasticidad y rapidez El cliente tiene la ilusión de disponer de recursos infinitos. El cliente varía la cantidad recursos en función de sus necesidades. La respuesta a la petición aprovisionamiento es inmediata; pero la provisión no tiene por qué. Servicio monitorizado
Para satisfacer las condiciones de servicio. Sistemas autónomos. Posibilidad de pago por uso. >Características esenciales
>Tipos de servicio en cloud computing SaaS = Software as a Service En vez de comprar software, instalarlo y gestionarlo, contrato su uso a través de Internet.
Ejemplo: Salesforce CRM PaaS = Platform as a Service En vez de instalar un software desarrollado por mí en mi infraestructura, lo instalo en una infraestructura en Internet. Ejemplo: Google App Engine IaaS = Infraestructure as a Service En vez de comprar y gestionar un servidor y su almacenamiento, lo alquilo en una infraestructura cloud en Internet. (VIRTUALIZACIÓN) Ejemplo: Amazon WS EC2 >Formas de despliegue o tipos de nube Nube privada: la gestionada y accedida en exclusiva por una organización. Nube comunitaria: la compartida por varias organizaciones (economía de escala). Ejemplo: Nube de la administración de EE.UU Nube pública: la que gestiona una organización para dar servicio o otras organizaciones o personas. Ejemplo: Google Nube híbrida: una combinación de las anteriores
>Taxonomía
No es cloud computing >Grid computing Un grid es un agregado de recursos informáticos pensado para cálculos científicos y estadísticos. También es distribuido. Puede estar formado toda clase de recursos, desde PCs a superordenadores. Diferencias: El número de usuarios es pequeño (comunidad científica). El acceso a los recursos no es inmediato; hay fila para acceder a los recursos (spool). Ambos conceptos nacen de la idea de la informática distribuida. 17 >Virtualización Un servidor con virtualización no es una cloud privada. La virtualización es un componente del cloud computing.
No hay aprovisionamiento inmediato y automatizado. No es distribuido y existen puntos únicos de fallo que no garantizan la disponibilidad. >Un hosting en un servidor dedicado o compartido Los recursos están limitados a una máquina normalmente. No es un sistema distribuido y existen puntos únicos de fallo que no garantizan la disponibilidad. El mercado de hosting va a tender hacia soluciones cloud. >Modelo de referencia
Ejemplo de IaaS: Amazon AWS EC2 > Qué me ofrece Amazon? Servidores virtuales en alta disponibilidad. Almacenamiento. Se paga por el uso de CPU, de memoria de espacio en disco y de
transferencia de datos. Es un centro de datos virtual. Está orientado a la flexibilidad (Elastic Computing) > A qué sustituye? Al centro de datos: servidores, almacenamiento, redes Al hosting tradicional. 29 Conceptos de Amazon AWS >Esquema del núcleo de AWS
>Ecosistema de Amazon AWS
>AMI = Amazon Machine Image Es una plantilla de un servidor virtual (basado en XEN). Existe un repositorio público de AMIs pregeneradas. Puedo transformar una de esas plantillas según mis necesidades
Puedo crear mi AMI y luego subirla a EC2 a través de S3 (avanzado). Existen AMIs de pago: MS Windows Server, Suse Linux Enterprise Server, Oracle, etc >Demo de plantillas (AMIs) y consola EC2 >Instancia = servidor virtual Una instancia es una AMI a la que le he asignado unos recursos. Los recursos (RAM y CPU) vienen determinadas por el tipo de
instancia (vienen por tallas). La instancia por defecto es efímera porque su disco lo es. No se puede parar la máquina; sólo reiniciar. Las instancias EBS si permanecen y se pueden parar. Terminate no es Stop. Dos direcciones temporales: una IP pública y otra privada. Elastic IP: una IP pública permanente. >Demo de servidor Linux y Windows en EC2.
>Regiones y zonas de EC2 Región: es una ubicación de recursos físicos para solucionar temas legales (LOPD) y de velocidad de acceso. EE.UU Oeste (California) EE.UU Este (Virginia)
Europa Occidental (Irlanda) Asia-Pacífico (Singapur) Zonas de disponibilidad: son áreas que pueden tener un punto único de fallo. Poner recursos en distintas zonas garantiza la disponibilidad. Corte de servicio en la región EE.UU Este del 21 de abril de 2011 la alta disponibilidad es responsabilidad del usuario. >Regiones y zonas de EC2
>Almacenamiento para AMIs EBS (Elastic Block Storage) es el almacenamiento para las instancia. Acceso directo desde el sistema operativo como un disco. Permite instantáneas de los volúmenes. Los volúmenes pueden hacerse independientes de la vida la instancia. Almacenamiento rápido.
S3 Para subir AMIs. Almacenamiento lento. Datos no son accesibles como un disco, sino mediante utilidades que atacan los datos vía API (S3FS). Puntos clave de EC2 >Ventajas Disponibilidad a precio asequible (cambio / $). Flexibilidad de los recursos. Gestión propia del sistema operativo. Gestión desde línea de comando y por consola web. Fabulosa documentación. >Desventajas Gran curva de aprendizaje. Esquema de facturación complejo y poco predecible. Atención a los aspectos legales. Forma de pago. Ejemplo de SaaS: Google Apps
> Qué me ofrece Google Apps? Es un servicio ligado al dominio: miempresa.com Correo (Gmail), calendario (Gcalendar) y contactos para mis usuarios. Sincronización con el móvil. Editor de texto, hojas de cálculo y presentaciones on-line (Gdocs) integrable con LibreOffice y MS Office. Intranet para proyectos y colaboraciones (Google Sites). Resto de aplicaciones Google: Reader, YouTube, Picasa... Edución estándar: gratis, limitada en funciones y número de usuarios. Con publicidad. Edición Bussiness: 40 / usuario y mes. Totalmente funcional. Gratis para organizaciones educativas. > A qué sustituye? Al hosting de correo. A soluciones de trabajo en grupo y correo interno como Microsoft Exchange, Microsoft Share Point o Lotus Notes. Parcialmente a herramientas ofimáticas como MS Office o
Openoffice. Parcialmente a servidores de ficheros sencillos. 48 Puntos clave de Google Apps >Ventajas Disponibilidad del servicio. Gmail corporativo. Gratuito para proyectos pequeños o en génesis. La forma más rápida y barato de disponer de correo. En breve integración con otros servicios de Google: Reader, Picasa, etc. >Desventajas Alta dependencia tecnológica. La ofimática on-line no da las prestaciones de una suite tradicional. 50 Ejemplo de SaaS:
Pixlr > Qué me ofrece Pixlr? Es un editor de imágenes on-line. Es gratuito. Se puede integrar con el navegador para hacer capturas de pantalla (Grabber). Trabajar con imágenes de Facebook, Picasa, Flickr. Basado en el plug-in Flash Player > A qué sustituye? A programas de edición de imágenes como Photoshop. Puntos clave de Pixlr >Ventajas Gratuito. Sencillo. Ideal para necesidades básicas de edición de imágenes. >Desventajas Dependencia tecnológica. No está disponible off-line. Proveedor pequeño.
Cumple los requisitos de la definición de cloud? Ejemplo de SaaS: Wordpress > Qué me ofrece Wordpress? Hosting gratuito de blog. Basado en la solución de software libre Wordpress. Edición básica gratuita. Opciones avanzadas de pago. Antispam de comentarios. Posibilidad de personalización. Integración con redes sociales. > A qué sustituye? A un hosting en el que instalo una herramienta blog. A una página web (parcialmente). Puntos clave de Wordpress >Ventajas Libertad tecnológica gracias al software libre. Puedo instalar Wordpress en mi infraestructura (por ejemplo EC2) o en un hosting
cuando quiera. Sencillez de uso. Posibilidad de disponer de un blog elegante sin conocimientos técnicos avanzados. >Desventajas No hay tantas opciones de personalización como en una instalación autogestionada. 57 Ejemplo de PaaS: Google App Engine GAE > Qué me ofrece GAE? Es una plataforma que me permite alojar aplicaciones propias o de terceros en la infraestructura de Google. Lenguajes de programación: Python y Java. Python: cualquier código que se adapte a CGI. Django es el framework más conocido. Java: Will it play in App Engine? PHP: a través de Quercus.
Orientada a programadores. Integrado con Google Apps. Gratis hasta 10 aplicaciones por cuenta de Google con 500 MB de almacenamiento y 5 106 visitas al mes cada una. > A qué sustituye? A la típica plataforma que alberga aplicaciones dentro de la empresa o en hosting. Plataforma = sistema operativo + BD + servidor de aplicaciones Múltiples combinaciones XAMPP = X + Apache + MySQL + PHP.NET = Windows + MS SQL + ISS J2EE: Cualquier sistema operativo. Cualquier BD: Oracle, Postgresql, MSQL, etc Cualquier servidor de aplicaciones JAVA: Tomcat, Jboss, Weblogic, Oracle AS, etc con Apache 62 Puntos clave de GAE >Ventajas
Disponibilidad y recursos. Utilizamos la misma tecnología que Google para prestar servicios. No hay costes de propiedad ni de hardware ni de software. Se reducen los costes de mantenimiento. Pago por uso. >Desventajas Dependencia tecnológica. Herramientas pensadas para desarrolladores, no para usuarios. Riesgos del cloud computing >La seguridad de los datos Los datos de la empresa ya no están en la sede de la misma. De hecho, su ubicación es indeterminada. Problemas de seguridad. Solución legal : revisar contratos y elegir proveedores fiables. Solución técnica: cifrar. Problemas legales (LOPD). Solución: Safe Harbor. Proveedores nacionales o del UE. Backup de los datos.
La nube sirve para dejar una copia de los datos internos. Debemos tener una copia de los datos de la nube en nuestro poder para poder usarlos según el plan de contigencia. El cloud computing complica el plan de copias de seguridad >La dependencia tecnológica Hasta qué punto es conveniente dejar procesos críticos de negocio en manos de un proveedor de servicios? Qué ocurre si el proveedor..? Cambia la configuración del servicio. Añade o elimina funciones del servicio. Altera las condiciones del servicio. Cancela el servicio unilateralmente por razones internas o externas. Las soluciones IaaS son menos dependientes que el PaaS o SaaS porque se centran en torno al sistema operativo. Amenazas cloud computing La Cloud Security Alliance se define como una organización internacional sin ánimo de lucro para promover el uso de mejores
prácticas para garantizar la seguridad en cloud. En marzo del 2010 publicó un informe «Top Threats to Cloud Computing V1.0» sobre las siete mayores amenazas de la infraestructuras cloud, con el propósito de asistir a las organizaciones en la toma de decisiones y en la adopción de estrategias que incluyan cloud computing. Estas amenazas se actualizan regularmente buscando el consenso de los expertos. A continuación, se resumen las amenazas descritas en este informe. >Abuso y mal uso del cloud computing Esta amenaza afecta principalmente a los modelos de servicio IaaS y PaaS y se relaciona con un registro de acceso a estas infraestructuras/plataformas poco restrictivo. Es decir, cualquiera con una tarjeta de crédito válida puede acceder al servicio, con la consecuente proliferación de spammers, creadores de código malicioso y otros criminales que utilizan la nube como centro de operaciones.
Recomendaciones: o implementar un sistema de registro de acceso más restrictivo o coordinar y monitorizar el fraude en tarjetas de crédito o monitorizar el trafico de clientes para la detección de posibles actividades ilícitas o comprobar las listas negras públicas para identificar si los rangos IP de la infraestructura han entrado en ellas >Interfaces y API poco seguros Generalmente los proveedores de servicios en la nube ofrecen una serie de interfaces y API (del inglés, Application Programming Interface) para controlar e interactuar con los recursos. De este modo, toda la organización, el control, la provisión y la monitorización de los servicios cloud se realiza a través de estos API o interfaces. Dado que todo (autenticación, acceso, cifrado de datos, etc.) se realiza a través de estas herramientas, se hace necesario que los
interfaces estén diseñados de forma segura, evitando así los problemas de seguridad, tanto los que son intencionados como los que se producen de forma accidental. Recomendaciones: Analizar los problemas de seguridad de las interfaces de los proveedores de servicio Asegurarse que la autenticación y los controles de acceso se implementan teniendo en cuenta el cifrado de los datos >Amenaza Interna Como en todos los sistemas de información, la amenaza que suponen los propios usuarios es una de las más importantes, dado que tienen acceso de forma natural a los datos y aplicaciones de la empresa. En un entorno cloud esto no es en absoluto diferente ya que se pueden desencadenar igualmente incidentes de seguridad provocados por empleados descontentos y accidentes por error o desconocimiento.
Además, en muchos casos, es el propio proveedor del servicio el que gestiona las altas y bajas de los usuarios, produciéndose brechas de seguridad cuando el consumidor del servicio no informa al proveedor de las bajas de personal en la empresa. Como es lógico, estos incidentes repercuten de forma importante en la imagen de la empresa y en los activos que son gestionados. Los proveedores de servicio deberán proveer a los consumidores del servicio de medios y métodos para el control de las amenazas internas. Recomendaciones: especificar cláusulas legales y de confidencialidad en los contratos laborales determinar los posibles problemas en los procesos de notificación >Problemas derivados de las tecnologias compartidas Esta amenaza afecta a los modelos IaaS, ya que en un modelo de Infraestructura como Servicio los componentes físicos (CPU, GPU,
etc.) no fueron diseñados específicamente para una arquitectura de aplicaciones compartidas. Se han dado casos en los que los hipervisores de virtualización podían acceder a los recursos físicos del anfitrión provocando, de esta forma, incidentes de seguridad. Para evitar este tipo de incidentes se recomienda implementar una defensa en profundidad con especial atención a los recursos de computación, almacenamiento y red. Además, se ha de generar una buena estrategia de seguridad que gestione correctamente los recursos para que las actividades de un usuario no puedan interferir en las del resto. Recomendaciones: o diseñar buenas prácticas para la instalación y configuración o monitorizar los entornos para detectar cambios no deseados en las configuraciones o la actividad o proporcionar autenticación fuerte y control de acceso para el acceso de administración o adecuar los acuerdos de nivel de servicio para controlar el
parcheado y la corrección de vulnerabilidades >Perdida o figa de información Existen muchas formas en las que los datos se pueden ver comprometidos. Por ejemplo, el borrado o modificación de datos sin tener una copia de seguridad de los originales, supone una pérdida de datos. En la nube, aumenta el riesgo de que los datos se vean comprometidos ya que el número de interacciones entre ellos se multiplica debido a la propia arquitectura de la misma. Esto deriva en pérdida de imagen de la compañía, daños económicos y, si se trata de fugas, problemas legales, infracciones de normas, etc. Recomendaciones: o implementar API potentes para el control de acceso o proteger el tránsito de datos mediante el cifrado de los mismos o analizar la protección de datos tanto en tiempo de diseño como en tiempo de ejecución
o proporcionar mecanismos potentes para la generación de claves, el almacenamiento y la destrucción de la información o definir, por contrato, la destrucción de los datos antes de que los medios de almacenamiento sean eliminados de la infraestructura, así como la política de copias de seguridad >Secuestro de sesión o servicio En un entorno en la nube, si un atacante obtiene las credenciales de un usuario del entorno puede acceder a actividades y transacciones, manipular datos, devolver información falsificada o redirigir a los clientes a sitios maliciosos. Recomendaciones: o prohibir, mediante políticas, compartir credenciales entre usuarios y servicios o aplicar técnicas de autenticación de doble factor siempre que sea posible o monitorizar las sesiones en busca de actividades inusuales
>Riesgos por desconocimiento Uno de los pilares de las infraestructuras cloud es reducir la cantidad de software y hardware que tienen que adquirir y mantener las compañías, para así poder centrarse en el negocio. Esto, si bien repercute en ahorros de costes tanto económicos como operacionales, no puede ser motivo para el deterioro de la seguridad por falta de conocimiento de esta infraestructura. Para asistir en la toma de decisiones sobre las medidas de seguridad que se han de implantar en un entorno cloud es conveniente conocer, al menos en parte, la información técnica de la plataforma. Datos como con quién se comparte la infraestructura o los intentos de acceso no autorizados pueden resultar muy importantes a la hora de decidir la estrategia de seguridad. La carencia de información de este tipo puede derivar en brechas de seguridad desconocidas por el afectado. Recomendaciones:
o tener acceso a los logs (registros de actividad) de aplicaciones y datos o estar al corriente, total o parcialmente, de los detalles de la infraestructura o monitorizar y recibir alertas sobre el uso de información