Recuperar Password de Administrador en Drupal 7

En algunas ocasiones, para ingresar a una aplicación, sitio web o simplemente para proteger nuestros datos importantes usamos un tipo de protección que fortalece la estabilidad de nuestra información.

Para limitar el acceso a un tipo de dato o archivo hay quienes usamos una contraseña.

Pero ¿qué pasa cuando por algún descuido la olvidamos?, por ejemplo ¿qué pasaría si olvidamos la contraseña de nuestro correo electrónico?...

Afortunadamente existen formas de recuperar o restablecer  contraseñas en caso de pérdida u olvido.

Para ello se realizan varios tipos de procesos, dependiendo de la aplicación de la cual queremos restaurar.  

En este caso me sucedió algo muy particular, instalé Drupal en mi ordenador Ubuntu 13.04 y creé mi usuario administrador con su respectiva contraseña; recordemos que los usuarios en Drupal se clasifican de la siguiente manera: SuperUsuario (1), Usuario Autenticado (2) y Visitante (3); también se describe su estado de la siguiente manera: Activo (1) ó Bloqueado (0).

Desde aquí otros tipos de usuarios podemos agregarlos con los permisos y estados que creamos pertinentes.

Existen muchas formas de instalar Drupal en nuestro ordenador, en mi caso tengo instalado Apache, PHP y MySQL en linux.

Mientras editaba y configuraba contenidos, no creía indispensable la contraseña. cuando terminaba la jornada apagaba mi ordenador sin cerrar las pestañas del navegador, esto lo hacía para cuando volviera a encenderlo solo me aparecía el mensaje de restaurar y continuaba con todas las aplicaciones y pestañas que tenía abiertas, esto me ahorraba el trabajo de volver a abrir cada pestaña con la información que necesitaba.

Un dia mi equipo cerró todas las sesiones del navegador. no le dí tanta importancia, solo pensé en volver a abrirlas con la información que necesitaba, pero al llegar a la interfaz de Drupal me dí cuenta del problema, había olvidado la contraseña de administrador (Admin), después de ingresarla 5 veces erróneamente el usuario se bloqueó; pero ese no era el único problema, cuando estaba en proceso de instalación de Drupal, debía ingresar un correo electrónico para poder restablecer la contraseña de admin, en realidad no lo creí tan necesario porque pensé que no iba a olvidar mi contraseña y que lo configuraría después.

Hasta ese momento la opción de restablecer la contraseña por correo electrónico estaba descartada.

Después de haberlo intentado de varias veces sin éxito, conseguí mi objetivo, encontré una manera muy común de hacer este tipo de operaciones.

Lo primero es Desbloquear mi Usuario,

Ingresé a MySQL desde una terminal.

Escribí el comando de ingreso a MySQL:

$ mysql -u root -p

y posteriormente ingresé mi contraseña de ingreso a MySQL.

De esa manera estando dentro de la consola de MySQL, escribí el siguiente código:

mysql>show databases; y pulsé enter. 

En este caso mi base de datos se llama usuario.

Para usar la base de datos usuario, ejecute la siguiente línea de código: use usuario;

Ahora es tiempo de ver que tablas contienen esta base de datos, para esto usé el comando: show tables;

Allí vi las tablas que había dentro de la base de satos usuario, y encontré la tabla users que facilitó el proceso de recuperación de mi conntraseña.

Al llegar a este punto ingresé el siguiente comando:

select *from users; y pulsé Enter.

A continuación ví que tipo de información iba a encontrar y en el orden que la iba a ver

Los datos que encontré fueron uid, name, pass.

uid: equivale al identificador de usuario; administrador siempre equivale al número 1.

name: muestra el nombre del usuario administrador.

pass: es lo que buscamos, la contraseña. en este caso la veremos encriptada.

Allí visualice los datos del usuario que quería recuperar, en este caso Admin..

Después de este proceso, escribí en la terminal el siguiente código:

UPDATE users SET status=1 whereUID=1;

presioné enter y espere un que procesará

De esta manera le ordenamos al usuario UID=1: que pase de estado 0 (bloqueado) a estado 1 (activo).

El siguiente paso, es generar una url de acceso automático para restablecer la contraseña, pero antes de continuar es necesario que hablemos de la herramienta que voy a utilizar. Drush (Drupal + Shell), es una shell de línea de comandos de Drupal que nos permite realizar tareas como la instalación, descarga o actualización de módulos y muchas funciones mas.

Para ejecutar  los siguientes comando debemos comprobar que Drush esta instalado en nuestro ordenador, de igual manera si no esta instalado, lo hacemos de la siguiente manera:

$ sudo apt-get install drush y presionamos enter.

tarda solo unos minutos, y cuando termine de instalar podemos continuar y ejecutar nuestro código sin ningún problema.

Concluyendo nuestro proceso de restauracion de contraseña, abrí una terminal, me situé en la ruta donde tenía mi proyecto Drupal y escribí el siguiente comando.

$ drush uli y pulsé enter.

Al terminar el proceso me mostró esto:

 

 

 

Para culminar  el proceso, se ha generado un enlace para la restauración de la contraseña

Lo que hice fue  copiar desde: /?q=user/… hasta donde termina la línea url.

En este caso como tengo Drupal instalado en :

localhost y la dirección de acceso es: localhost/drupal7

Tendrá que quedar de la siguiente manera:

localhost/drupal7/?q=user/reset/1/………./XT_vxbql………._E3CU305omej1gYCVnelWPL6Q/login

Esta url la copié y pegué en el navegador y pulsé enter.

De inmediato nos redirecciona al restablecimiento de la contraseña, donde debemos asegurarnos de ingresar una contraseña que no se nos olvide tan fácil o guardarla online con un gestor de contraseñas como: https://www.passpack.com/en/home/  y listo.

Gracias a esta experiencia aprendí que las contraseñas son muy importantes, que debo mantenerla al alcance y hacer una copia por seguridad, además de ello puse a prueba conocimientos en MySQL y Drush para poder restablecer mi contraseña.

Por: Cesar Duran

Desarrollador Drupal Jr

Seed EM