Recientemente he tenido un problema aparentemente insalvable, y es que uno de mis hostings, basado en Apache, al tratarse de hosting compartido, además sobre máquinas virtuales, se hace muy difícil cifrar por SSL la comunicación, ya que el servidor tiene que utilizar el mismo certificado para cada una de las webs que dependen del mismo servicio, no siendo posible asignar certificados distintos. Esto invalida mi idea de instalar un certificado autofirmado por mi propia Entidad Certificadora, que aunque me diera error en mi navegador, por no estar registrada, me sirviera para cifrar la conexión, que al fin y al cabo es lo que necesito.

Y lo cierto es que tengo “la mosca detrás de la oreja” desde que accedo con la cuenta de administrador a través de Internet en claro, o sea, sin cifrar la conexión, ya que es algo que va totalmente en contra de cualquier medida de seguridad. No quisiera encontrarme al “man in the middle” y que me haga una jugarreta.

Por otra parte, no está en mis planes por el momento, adquirir un certificado del proveedor de servicios para la web, que es algo que solucionaría el problema, ya que el proveedor del hosting dispone de ese servicio, pero tiene su coste.

Después de darle muchas vueltas a este asunto, y viendo que este problema no es posible abordarlo directamente, sino que más bien habrá que bordearlo, se me ha ocurrido buscar una alternativa basada en un segundo factor de autenticación. O sea, una segunda clave, pero que no sea siempre la misma, sino que vaya cambiando.

El sistema de autenticación basado en OTP (One Time Password) funciona de la siguiente manera: por un lado, el sistema de acceso continúa pidiendo una clave fija, la de siempre, o un PIN que únicamente sepamos nosotros, pero además solicita una segunda contraseña, que es distinta para cada sesión. ¿Y cómo sabemos nosotros qué contraseña debe ser la correcta en cada ocasión? Pues porque tenemos un pequeño dispositivo, que llevamos encima y podemos consultar en cualquier momento, que va generando exactamente las mismas contraseñas en base a la misma semilla establecida previamente en el servidor. Además de la semilla en común, utilizada en una función Hash, para ir generando la misma lista de contraseñas, se tiene en cuenta principalmente el factor tiempo (reloj del sistema y de nuestro dispositivo, que deberán tener la hora de forma correcta) o bien, un contador en común que irá pasando por todas y cada una de las contraseñas generadas con la semilla, en el mismo orden. El sistema también permite configuraciones de flexibilidad, para permitir contraseñas generadas con algún minuto de adelanto o retraso entre ambos sistemas, o con unidades por encima o por debajo de la cuenta, para el caso del contador.

Aunque pueda parecer complicado, a nivel de usuario no hay ninguna dificultad, bastará con mirar el dispositivo y estará esperándonos un numerito que deberemos introducir como segundo factor de autenticación.

Pero nada de dispositivos caros, ni de proyectos prohibitivos. Google Authenticator nos permite utilizar su aplicación para dispositivos móviles en Iphones, Ipads, dispositivos Android y Blackberry, tanto para autenticarnos con nuestra cuenta Google en los distintos servicios que nos ofrece, como para nuestro propio CMS (Content Management System) -Sistema Gestor de Contenidos-.

iphone

En mi caso, lo he instalado sobre mi teléfono móvil, que es un Iphone, y llevo siempre encima (de eso se trata):

Este es el enlace en la AppStore para los dispositivos como el mío:

googleauthenticator

https://itunes.apple.com/es/app/google-authenticator/id388497605?mt=8

Tras instalar el plugin sobre mi sistema, he configurado el acceso al mismo. Para establecer la semilla en común basta con escanear con el Smartphone el código QR de la pantalla de configuración:

qr-code

En el siguiente enlace, Google nos cuenta cómo instalar Authenticator en los distintos dispositivos:

https://support.google.com/accounts/answer/1066447?hl=es

Tras unos días de prueba, funciona de maravilla; es cómodo y me ofrece la dosis de seguridad que necesitaba. Lo recomiendo.

Si deseas estar informado sobre la publicación de nuevos artículos,

no dudes en subscribirte a E@pertos en Sistem@s.

 

J Carlos Salas

Ingeniero Técnico en Sistemas, Consultor en Tecnologías de la Información y Executive MBA por la EOI, desarrolla su carrera profesional coordinando y participando en proyectos para diferentes empresas del sector TIC, desde Advantta IT Services.


 

Compártelo si te ha gustado:

 

Todavía no hay comentarios.

Deja aquí tu comentario. Gracias.

Visit Us On FacebookVisit Us On TwitterVisit Us On LinkedinCheck Our Feed