Saltar al contenido

Recuperar usuario y contraseña del ERP/CRM Dolibarr

Dolibarr es una buena opción como ERP y CRM para PYMEs ya que es software libre licenciado bajo GPL v3 y además es gratuito. Es habitual, por tanto, que unos cuantos usuarios comiencen a probar Dolibarr mediante DoliWamp, la versión de Dolibarr que incluye un servidor Apache, un sistema gestor de bases de datos relacionales MySQL y un entorno de ejecución para el lenguaje de programación PHP. Todo ello instalado sobre una misma máquina bajo el sistema operativo Windows que desempeña a la vez los roles de cliente y de servidor.

Es habitual también haber realizado una instalación poco cuidadosa, y el problema viene cuando una de las contraseñas se olvida y, aunque Dolibarr proporciona mecanismos de reestablecimiento de contraseña a través del correo electrónico, el no tener configurado el CRM ni un servidor de correo instalado no hace posible esta opción.

Otra forma sería reinstalar Dolibarr de nuevo pero se perdería todo lo configurado y gestionado con la aplicación. Por tanto, la única forma viable de obtener la contraseña es recuperarla de la base de datos (BD) y para ello, se necesita acceso de root.

Dolibar (la versión utilizada para redactar este artículo es la 3.6.2) propone una contraseña de root predeterminada por defecto para MySQ, por lo que lo primero será probar con esta por si no se hubiera cambiado. En Inicio > Buscar programas y archivos escribir cmd y pulsar intro y nos situaremos en el directorio MySQL de la instalación de Dolibarr.

cd C:\dolibarr\bin\mysql\mysql15.0.45\bin

Ahora se intenta identificarse como root con la contraseña changeme:

mysql -u root -pchangeme

Si no se consigue acceder hay que pasar al plan b: restaurar la contraseña de root:

  1. En Inicio > Buscar programas y archivos escribir services.msc y pulsar intro.
  2. En la ventana que se inicia localizar el servicio doliwampmysqld, doble clic sobre el y en la nueva ventana pulsar sobre el botón Detener y Aceptar.

    doliwampmysqld en services.msc
    Es importante detener el servicio asociado a MySQL para poder reiniciar la contraseña de root.
  3. Ahora toca escribir un pequeño script para reiniciar la contraseña de root. Para ello se utiliza un editor de texto plano como el Bloc de notas de Microsoft Windows o Notepad++. El script debe contener lo siguiente:
    UPDATE mysql.user SET Password = PASSWORD( 'IngenieroInformatico' ) WHERE User = 'root';
    FLUSH PRIVILEGES;
  4. Guardar el script con un nombre cualquiera, por ejemplo reset_root.txt y se copia en el directorio raíz C:\ por ejemplo (Windows pediría permisos de administrador en dicho caso).
  5. Volver a la consola usada anteriormente e introducir el siguiente comando:
    mysqld-nt --init-file=C:\\reset_root.txt --console
  6. Abrir otra consola y en el directorio del mysql de Dolibarr acceder con la contraseña indicada en el fichero de texto.
    mysql -u root -pIngenieroInformatico

Ahora con pleno acceso a la BD ejecutando las siguientes sentencias se localiza la BD que usa Dolibarr, la tabla que almacena los usuarios y finalmente con una sentencia de consulta SQL obtendremos la contraseña olvidada por el usuario.

select user, pass from dolibarr.llx_user;

Obteniendo así los nombres de los usuarios y sus contraseñas:

+-------+---------+
| login | pass    |
+-------+---------+
| admin | secreto |
+-------+---------+
1 row in set (0.00 sec)

Ahora ya es posible iniciar Dolibarr e iniciar sesión con el usuario y la contraseña olvidada. Eso sí, Dolibarr debería encriptar las contraseñas para evitar almacenarlas sin cifrar en la BD mediante algún algoritmo de resumen de mensaje como MD5 para evitar el riesgo de seguridad que ello supone.

 

 


Publicado enAdministración de sistemasArtículosManualRecuperación de datosSeguridad de Sistemas