La nube: análisis a fondo de sus ventajas y peligros

Al igual que en el resto de la economía, el comercio descansa cada vez menos en el desarrollo de productos y cada vez adquiere mayor importancia el desarrollo de servicios. Uno de los fenómenos de la web 2.0 es el surgimiento del “cloud computing”, que permite a los usuarios correr aplicaciones alojadas en un servidor, así como guardar sus archivos personales en él.

La computación en la nube (cloud computing)

En este tipo de computación todo lo que puede ofrecer un sistema informático se ofrece como servicio, de modo que los usuarios puedan acceder a los servicios disponibles “en la nube de Internet” sin conocimientos (o, al menos sin ser expertos) en la gestión de los recursos que usan. Según el IEEE Computer Society, es un paradigma en el que la información se almacena de manera permanente en servidores en Internet y se envía a cachés temporales de cliente, lo que incluye equipos de escritorio, centros de ocio, portátiles, etc. Esto se debe a que, pese a que las capacidades de los PC han mejorado sustancialmente, gran parte de su potencia se desaprovecha, al ser máquinas de propósito general.

La computación en nube es un concepto que incorpora el software como servicio, como en la Web 2.0 y otros conceptos recientes, también conocidos como tendencias tecnológicas, que tienen en común el que confían en Internet para satisfacer las necesidades de cómputo de los usuarios.

Como ejemplos de Computación en Nube se puede destacar Amazon EC2, Google Apps, eyeOS, Microsoft Azure y Ubuntu One que proveen aplicaciones comunes de negocio en línea accesibles desde un navegador web, mientras el software y los datos se almacenan en los servidores.

Beneficios

  • Integración probada de servicios Web. Por su naturaleza, la tecnología de Cloud Computing se puede integrar con mucha mayor facilidad y rapidez con el resto de las aplicaciones, ya sean desarrolladas de manera interna o externa.
  • Prestación de servicios a nivel mundial. Las infraestructuras de Cloud Computing proporcionan mayor capacidad de adaptación, recuperación de desastres completa y reducción al mínimo de los tiempos de inactividad.
  • Una infraestructura 100% de Cloud Computing no necesita instalar ningún tipo de hardware. La belleza de la tecnología de Cloud Computing es su simplicidad… y el hecho de que requiera mucha menor inversión para empezar a trabajar.
  • Implementación más rápida y con menos riesgos. Las aplicaciones en tecnología de Cloud Computing estarán disponibles en cuestión de semanas o meses, incluso con un nivel considerable de personalización o integración.
  • Permite realizar un backup de la información valiosa. En caso de que el usuario haya sufrido algún problema con su computadora (fue robada, infectada por un virus, o simplemente no tiene acceso a ella en este momento) puede acceder a su información en forma instantánea, desde cualquier otra computadora, en cualquier lugar del mundo en que se encuentre.
  • Compartir información es muy fácil. Gracias a la nube los usuarios pueden crear documentos en forma simultánea y colaborativa usando Google Docs o cualquier solución similar. Pueden, a su vez, compartir archivos usando DropBox o Ubuntu One y similares.
  • Mayor seguridad. Tanto los administradores como los usuarios pueden detener el software espía y los virus que se originan en la Web antes de que se infiltren en su red privada y pongan en riesgo o inhabiliten los equipos, entre otras funciones. Por otra parte, si tenemos en cuenta que el 60% de la información de las empresas se encuentra en sistemas no protegidos; que 1 de cada 10 notebooks es robada 10 meses después de su compra; y que el 60% de los propietarios de pendrives dice haber perdido el dispositivo, resulta lógico que es mejor que la información se mantenga en la nube y no dentro de un equipo físico.
  • Actualizaciones automáticas que no afectan negativamente a los recursos de TI. Si actualizamos a la última versión de la aplicación, nos veremos obligados a dedicar tiempo y recursos (que no tenemos) a volver a crear nuestras personalizaciones e integraciones. La tecnología de Cloud Computing no le obliga a decidir entre actualizar y conservar su trabajo, porque esas personalizaciones e integraciones se conservan automáticamente durante la actualización.

Una introducción a los peligros de la nube: ¿a quién sirve el servidor?

Richard M. Stallman, el padre del movimiento del “software libre”, se hace esta pregunta en un interesantísimo artículo publicado en el Boston Review.

La tecnología digital puede darte libertad; pero también puede quitártela. La primer amenaza a nuestra libertad al usar una computadora vino del “software propietario”: software que los usuarios no pueden controlar simplemente porque su “creador” y dueño absoluto (una empresa como Apple o Microsoft) lo controla. El usuario sólo tiene una “licencia” para su uso, siempre bajo ciertas condicionalidades muy concretas, y generalmente no tiene acceso a su código fuente ni puede modificarlo o distribuir copias de él. El “dueño”, en cambio, puede sacar ventaja de ese poder injusto insertando características maliciosas en sus programas, tal como spyware, back doors, y DRM.

La solución a este problema es el desarrollo de “software libre” y rechazar el “software propietario”. El software libre es aquel que incluya las 4 libertades esenciales: (0) poder correr el programa como uno quiera, (1) poder estudiar y cambiar el código fuente como uno quiera, (2) poder distribuir copias de la versión original, y (3) poder redistribuir copias de las versiones modificadas.

Con el software libre, los usuarios puede retomar el control sobre su computadora. El software propietario sigue existiendo, pero existen alternativas libres que permiten a mucha gente vivir bien sin él.

Sin embargo, ahora enfrentamos una nueva amenaza a nuestro control sobre la computadora: el software como un servicio. Según Stallman, deberíamos condenar esto también.

El problema principal del “cloud computing”

El software como un servicio (SaaS, son sus siglas en inglés) implica que alguien almacena en un servidor un programa que le permite a los usuarios realizar ciertas tareas computacionales -editar hojas de cálculo, traducir textos, administrar correos electrónicos, etc.- invitando a los usuarios a usarlo. Los usuarios envían su información al servidor, éste realiza la tarea solicitada, y finalmente envía los resultados al usuario.

Estos servidores quitan aún más control a los usuarios que el software propietario. Con el software propietario, los usuarios típicamente adquirían un archivo ejecutable pero no su código fuente. Esto dificulta a los programadores poder estudiar el código fuente, por lo que no se puede saber a ciencia cierta qué hace el programa realmente y es muy complicado poder modificarlo para que se adapte a las necesidades del usuario.

Con el SaaS, los usuarios ni siquiera reciben un archivo ejecutable: éste está alojado en el servidor, donde los usuarios no pueden verlo ni acceder a él. Por lo tanto, es imposible para ellos saber qué hacen realmente y eliminan toda posibilidad de que puedan cambiarlo.

Es más, el SaaS nos lleva a consecuencias dañinas equivalentes a las características maliciosas muchas veces incluidas en el software propietario. Por ejemplo, algunos programas propietarios son “spyware”: el programa envía información de las actividades, gustos y preferencias del usuario a algún lugar desconocido. Un ejemplo de ello es Microsoft Windows, que envía información de las actividades de los usuarios a Microsoft. Windows Media Player y RealPlayer reportan todo aquello que los usuarios reproduzcan.

A diferencia del software propietario, el SaaS no requiere código “encubierto” para obtener información del usuario. En vez de ello, los usuarios deben enviar información de modo de poder usar esos programas. Esto tiene el mismo efecto que el spyware: el servidor obtiene nuestra información. La obtiene sin ningún esfuerzo adicional, por la naturaleza del SaaS.

Algunos programas propietarios pueden “maltratar” a los usuarios a través de un control remoto de sus computadoras. Por ejemplo, Windows tiene un back door con el que Microsoft puede forzar cambios en cualquier software instalado en esa máquina. El lector de e-books Kindle de Amazon tiene un back door que Amazon utilizó en 2009 para borrar en forma remota todas las copias del “1984” y “Rebelión en la Granja” de Orwell que los usuarios habían adquirido legalmente en Amazon.

El SaaS le otorga un poder increíble al operador del servidor para cambiar el software utilizado y “toquetear” la información que el usuario envió. Una vez más, no hace falta ningún código especial para hacer esto.

En síntesis, para Stallman, el SaaS es equivalente a un enorme spyware y un back door grande como una casa, otorgándole control total al operador del servidor de forma injusta para el usuario.

Pasando el limpio: los peligros del SaaS son muchos

He aquí algunas de las razones por las que hay gente que piensa que el SaaS limita la libertad de los usuarios y los hace dependientes del proveedor de servicios.

  • Al no poseer poseer físicamente los dispositivos de almacenamiento de sus datos los usuarios dejan la responsabilidad del almacenamiento de datos y su control en manos del proveedor. Es decir, la computación en nube pone en peligro las libertades de los usuarios, porque éstos dejan su privacidad y datos personales en manos de terceros. Nadie sabe qué hacen las empresas con esa información. Google, por ejemplo, rastrea nuestro historial de búsquedas y con él arma un perfil que utiliza luego para acercar a los usuarios publicidad que le resulte interesante. De ese modo, ellos ganan más plata (porque los usuarios hacen más clics en la propaganda) y, según ellos, brindan un mejor servicio a los usuarios ya que reducen la “contaminación visual” que produce la publicidad irrelevante.
  • Al no tener acceso al código fuente ni al archivo ejecutable, es imposible para el usuario saber qué hace realmente el programa. No es preciso que estas cosas “malas” que hace el SaaS hayan sido pensadas o diseñadas en forma maliciosa; muy por el contrario, a veces surgen con la intención de ayudar al usuario. Un caso del que he escuchado recientemente es DropBox. Si uno suele subir archivos del Escritorio, por ejemplo, DropBox va a subir, sin que el usuario se entere, todos los archivos alojados en esa carpeta. La intención es buena, deduce que el usuario guarda archivos importantes en esa carpeta y le ayuda a hacer un backup de ellos de forma “transparente”, pero realmente da miedito que esto suceda sin que el usuario se entere de nada.
  • Sólo es posible usar las aplicaciones y servicios que el proveedor esté dispuesto a ofrecer. Así, el London Times compara la computación en nube con los sistemas centralizados de los años 50 y 60, en los que los usuarios se conectaban a través de terminales “tontos” con ordenadores centrales. Generalmente, los usuarios no tenían libertad para instalar nuevas aplicaciones, y necesitaban la aprobación de administradores para desempeñar determinadas tareas. En suma, se limitaba tanto la libertad como la creatividad. El Times argumenta que la computación en nube es un retorno a esa época.
  • El proveedor del servicio decide actualizar y modificar el servicio sin el consentimiento de los usuarios. Esto, muchas veces resulta beneficioso, al mejorar la seguridad del software. No obstante, también puede resultar perjudicial en los casos en que quita características y funcionalidades que el usuario precisa. De la noche a la mañana, el usuario tiene que salir a buscar una herramienta que reemplace a la anterior y que le ayude con su trabajo.
  • Riesgo para la seguridad. En tanto todos los datos de los usuarios estén almacenados en un servidor, no sólo no podrán controlar qué medidas de seguridad deberán llevarse a cabo para protegerlos (esas decisiones serán tomadas por la empresa que ofrece el servidio), sino que, de ser evadidas tales medidas, pondrá al alcance de la mano del intruso una cantidad inimaginable de información. En una palabra, existirían incentivos mucho mayores para que los hackers se infiltren en esos servidores ya que de ese modo podrían acceder a información correspondiente a millones de usuarios… todo en un sólo golpe. Existe el mito de que los usuarios son estúpidos y no saben protegerse correctamente de los virus y malwares, mientras que las empresas sí saben lo que hacen. En definitiva, es parte de su trabajo, ¿no? Si no lo hacen bien, la gente se va. Bueno, varias noticias en los últimos años confirman que esto es meramente un mito: prácticamente no hubo una empresa importante que no fuera hackeada (Hotmail, Google, Facebook, etc.).
  • No integra a la gente, la segrega. ¿Qué pasa con aquellos que no tienen dinero para pagar conexiones a internet de banda ancha? Bueno, quedan totalmente afuera de la nube y, de generalizarse su uso, no podrían utilizar ningún software, ya que todo estaría “basado en la web”.
  • La computación en nube es simplemente una trampa destinada a obligar a más gente a adquirir sistemas propietarios, bloqueados, que les costarán más y más conforme pase el tiempo. En el mejor de los casos, los usuarios tendrán acceso a “versiones menores” del software completo, que obviamente será pago.

¿ La creación de SaaS “libre” sería la solución?

Me pareció interesante terminar este post con una reflexión polémica de Richard Stallman. Según él, la creación de SaaS “libre” no soluciona el problema.

Muchas de las personas que apoyan el desarrollo de software libre asumen que el problema del SaaS se solucionará desarrollando software libre para servidores. Por el bien de los operadores de servidores, es mejor que estos programas sean libres; en caso de ser propietarios, sus desarrolladores (que no siempre son los que operan efectivamente el servidor) tendrían poder sobre el servidor. Esto es injusto para el operador, y no ayuda a los usuarios.

Pero si los programas en el servidor fueran libres, eso no protege a los usuarios de los efectos del SaaS. Le dan libertad al operador del servidor, no a los usuarios finales.

Poner a disponibilidad el código fuente de estos programas puede beneficiar a la comunidad: aquellos usuarios que dispongan de los conocimientos necesarios pueden montar un nuevo servidor, incluso cambiando el software original. Pero ninguno de esos servidores le permitiría al usuario tener el control sobre lo que hace el programa, a menos que sea su propio servidor. El Saas siempre somete a los usuarios al capricho del operador del servidor y el único remedio en ese caso es no usar SaaS.

Qué les parece, ¿tiene razón Stallman o podemos acusarlo de “extremismo”? Yo creo que en esta oportunidad lo banco…


9 comentarios

  1.   Usemos Linux dijo

    Wow…te envidio! No tuve el privilegio de conocerlo personalmente.

  2.   Thalskarth dijo

    Justamente la pregunta ¿ La creación de SaaS “libre” sería la solución? tuve la suerte de hacerla personalmente a Stallman en una de sus charlas 😉

  3.   JorgeBass dijo

    oh perdón qué significa la expresión “lo banco…”, ya sabes los modismos de cada país, no me quedó claro si estás de acuerdo con la postura de Stallman, gracias

  4.   Usemos Linux dijo

    Uy, perdón! Trato de no incluir muchos modismos pero se me escapan algunos. 🙂
    Bancar a alguien significa apoyarlo. Puede usarse de muchas maneras: “yo te banco!”, “te banco a muerte”, “no me banca nadie!”, etc.

  5.   perro usa linux dijo

    Pues yo lo acuso de extremismo…puede que sea una privacion a la libertad pero el SaaS es un concepto que puede cambiar la web y a las empresas, reducir costos dramaticamente y permitir a las PyMES competir con empresas grandes.
    Esta vez…y solo por esta vez no apoyo a RS y si al CLoud Computing…ademas que de eso se trata mi tesis 😛 tengo que defender a la nube 🙂

  6.   Inercina dijo

    Claro que Stallman tiene razón, lo del Kindle le dá toda la razón, además olvidaron comentar que si los servidores están en Estados Unidos, están sujetos a las leyes Metichismo de allá, y con la corrupción corporativa, si eres un competidor de una corporación conectada con la CIA o el FBI (Fuerza Burros Idiotas); tu información irá a dar a la competencia con unas cuantas llamadas telefónicas (o e-mails). Por ello dudo que las empresas europeas o asiáticas inteligentes usen la nube (te caes de una nube y te rompes toda la madre).
    Salu2 cordiales

  7.   Joaquin Copete dijo

    Me parece un artículo muy interesante, aunque poco centrado en la seguridad que a mi me parece fundamental. Otro de los problemas que yo veo es que normalmente ya tenemos ciertas aplicaciones en nuestras instalaciones (on-premise) y queremos que se integren con las aplicaciones que contratamos en la nube, por ejemplo http://lacabezaenlanube.wordpress.com/2014/05/17/integracion-con-la-nube

    Por ejemplo para integrar con seguridad con google, salesforce o microsoft puedes leer mas en mi blog.

    1.    usemoslinux dijo

      Interesante aporte. Gracias x tu comentario.
      Un abrazo! Pablo.

  8.   camila dijo

    ¿quisiera saber por que El rendimiento puede ser menor comparado al almacenamiento local? y VENTAJAS DEL ALMACENAMIENTO EN LA NUBE
    Las compañías sólo necesitan pagar por el almacenamiento que realmente utilizan.
    sólo las compañías o empresas? y los usuarios comunes como nosotros?

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *