Puedes usar Google Authenticator o Yubikey
Desde el lanzamiento de Joomla! 3.2 a finales de 2013 ha sido posible para proteger sitios web basados en Joomla con un método de autenticación especial llamado autentificación de dos factores (o A2F para abreviar). El concepto de la autentificación de dos factores es proporcionar una capa adicional de seguridad al exigir el uso de dos componentes diferentes antes de poder acceder a tu sitio web.
Con Joomla! el primer componente es siempre una contraseña de usuario normal, pero el segundo puede variar dependiendo de tu solución preferida. La adición de un factor secundario al proceso de autentificación proporciona un impulso de seguridad sustancial para el sitio, y hace que sea casi imposible para los hackers acceder a tu sitio a través de ataques de diccionario; es decir, sin pasar con éxito las solicitudes de contraseña al intentar millones de probables posibilidades (como palabras de un diccionario, de ahí el nombre) a través de medios automatizados que, como puedes imaginar, es sólo un poco más rápido que tratar de adivinar manualmente una contraseña. Esta es la razón de la aceptación general de que las contraseñas deben contener una combinación de números, mayúculas y minúsculas, y caracteres especiales, lo que hace que sea mucho más difícil un ataque de diccionario para adivinarlas correctamente.
Volviendo al tema que nos ocupa. Lo más probable es que ya hayas utilizado la autentificación de dos factores en alguna parte de tu vida diaria. Servicios como Gmail incluyen una opción para recibir un código SMS después de iniciar sesión con tu nombre de usuario y contraseña, que se debe introducir antes de poder acceder a tu correo electrónico, y la mayoría de los bancos exigen una especie de capa de seguridad adicional si se trata de información secundaria, como contraseñas, o lectores de tarjetas que tiene códigos especiales de salida cuando se introduce el PIN. No hay duda de que es una forma más segura para iniciar la sesión, así que ¿por qué no utilizar este método en Joomla?
Joomla! y la autentificación de dos factores
Antes de llegar Joomla! 3.2 no había ningún mecanismo integrado para asegurar tu sitio web con una opción de autentificación secundaria. Sin embargo, como hemos llegado a esperar de la comunidad Joomla, había por supuesto una serie de plugins de terceros disponibles que se extendían a opciones de autentificación. Uno de los plugins más conocidos fue el plugin de 2FA de Akeeba (conocida hoy en día por su impresionante extensión Akeeba Backup), que se incorporó más tarde en el núcleo de Joomla!.
Un poco aparte, bien vale la pena mencionar que Joomla! es el primera gran CMS con A2F trabajando en el núcleo. Como el acceso al back-end en la comunidad de Joomla! como Super Usuario (Administrador) incluye la capacidad de hacer casi cualquier cosa con un sitio web es una buena idea, por lo menos, considerar la utilización de A2F para los super administradores.
Ahora, mientras que los nombres de usuario y contraseñas se pueden almacenar en un gestor de contraseñas o por el propio navegador para las conexiones rápidas, con la A2F inevitablemente va a ser un poco más incómodo. Sin embargo, la seguridad de tu sitio web hace que valga la pena este paso adicional, y las opciones disponibles para Joomla son un poco más fáciles de usar que un código SMS.
Además, no hay que olvidar que no siempre es necesario el uso de una cuenta de súper usuario para las tareas del día a día como la publicación de artículos. El uso de cuentas menores para estas tareas significa que no siempre se tiene que hacer frente a la autentificación adicional cuando estás haciendo pequeños cambios.
¿Qué métodos A2F se pueden utilizar en Joomla?
Si en tu sitio ya tienes una versión de Joomla! superior a 3.2 (y realmente recomendamos que la tengas, ya que las versiones más pequeñas y regulares de la moderna hoja de ruta de Joomla significan que hay menos riesgo que cuando se actualiza en comparación con versiones anteriores), entonces hay dos opciones disponibles para un factor secundario de autentificación. En Joomla! hay plugins de autentificación que proporcionan esta seguridad adicional. Básicamente, se puede elegir entre:
* Autentificación con Google Authenticator
* Yubikey
Estos métodos se pueden activar/desactivar en función de cada usuario, por lo que puedes restringir a ciertos usuarios y al mismo tiempo dejar a otros con métodos de entrada estándar. Este es un sistema muy flexible, especialmente cuando se utiliza el método Yubikey que requiere un dispositivo adicional (que explicaremos en breve!). Lo que es más, Joomla permite activar la autentificación de dos factores sólo para el back-end, o acceso a ambos front-end y back-end para una mayor protección.
Google Authenticator
El Google Authenticator es una especie de símbolo que genera un código de verificación (que consta de sólo caracteres numéricos) que deben ser llenados como segundo factor después de la pantalla de nombre de usuario/contraseña. Este método de autentificación utiliza marcas de tiempo para generar el código de verificación, lo que significa que la contraseña trabajará por un período de tiempo limitado por lo que tendrás que ser rápido en introducir el código generado en el campo correspondiente. Con Google Authenticator no hay contraseña de una sola vez, se genera en un bucle porque se utiliza el tiempo para verificar la contraseña en el servidor. Lo que es realmente práctico de este método de Google Authenticator es el hecho de que la aplicación está disponible para múltiples plataformas e incluso como una extensión del navegador que hace que sea fácil copiar el código generado en el portapapeles, así que puedes simplemente CTRL+V y pegar sin problemas el código en el campo extra.
Yubikey
Yubikey es un pequeño dispositivo de hardware que puede generar un código de una sola vez, y que debe ser introducido como el segundo paso de autentificación. Naturalmente hay un costo adicional en comparación con el Google Authenticator ya que tendrás que comprar el dispositivo correspondiente, pero este dispositivo se puede utilizar para múltiples propósitos más allá del acceso a Joomla, y es más seguro que una aplicación de teléfono que está sujeta a todas las vulnerabilidades inherentes en el sistema operativo del teléfono. Yubikey ofrece varias claves, pero para Joomla! incluso la más barata será suficiente. Yubikey es similar a un delgado pendrive con un botón de contacto en la parte superior. Tu sistema lo detectará como un dispositivo de teclado, y técnicamente es un teclado, pero con un solo botón. Al tocar este botón, se pega inmediatamente (donde se coloca el cursor) una larga cadena de hash y se pulsa Enter. Muy conveniente así como seguro porque en Joomla no es necesario hacer clic en el botón 'login': rellena el nombre de usuario + contraseña y toca el botón de Yubikey - tan fácil!
¿Dónde puedo activar la autentificación de dos factores?
En primer lugar tienen que ser habilitados todos los plugins de autentificación. Debes ir desde la Administración a "Extensiones" → "Plugins" para abrir la lista de plugins, y luego filtrarlos por el tipo autentificación.
Asegúrate de que están activados todos ellos, y luego ir a la configuración de usuario. En la última pestaña se encuentra la configuración de seguridad adicional, y puede especificar el método que deseas utilizar para cada usuario.
Una vez seleccionado será necesario confirmar estos ajustes rellenando una contraseña de una sola vez desde el Authenticator o Yubikey dependiendo del método que decidiste usar. También hay un escenario de retroceso: después de la configuración de Joomla! se mostrarán las contraseñas de emergencia que debes guardar en un lugar seguro para que puedas utilizarlas cuando no tienes acceso con tu dispositivo de segundo factor.
Es fácil cuando se sabe cómo, y si es posible la seguridad extra es algo digno de utilizar, sobre todo cuando los intentos de hacking en sitios web son cada vez más comunes. Como siempre, esperamos que este artículo haya demostrado ser útil para conseguir que comiences con la autentificación de dos factores, y si tienes algún consejo adicional háznolo saber en los comentarios!