Ghost - Claves en MySQL

Trucos y Utilidades 7 de ene. de 2024

Tipo de clave en Ghost

Si tienes un blog creado con Ghost, debes saber que el formato en que se guardan las claves en la base de datos es en formato BCrypt.

Base de Datos y Tabla de Usuarios

Por defecto el nombre de la base de datos es: ghostdata ó ghost
Y la tabla que almacenan los usuarios es: users

El usuario que se crea por defecto con id=1 suele ser el usuario que será el administrador del blog en Ghost.

Cambiando Clave de un usuario a mano

Lo normal, es que las claves de los usuarios en ghost se realicen mediante el envío de un email al usuario, incluso para el usuario administrador.

Sin embargo puede ser que por algún motivo (mala configuración del servidor de email) no te llegue la url de validación para el cambio de la contraseña de tu usuario, en cuyo caso tendrás que modificar los datos de tu usuario o de otros usuarios manualmente.

  1. Clave BCRYPT

Lo primero que necesitas es generar la clave en el formato BCrypt que necesita Ghost, para ello abre un terminal y escribe lo siguiente:

# Generar clave BCrypt:
htpasswd -bnBC 10 "" MiClave | tr -d ':\n' | sed 's/$2y/$2a/';echo


$2a$10$ky3zB4V3JGmpgqmTKSm56.24k0i9RAXK9mxS8IzwdcuCPUJ9DBare
Generar clave en formato BCrypt

Apunta la clave BCrypt generada, pues la vas a necesitar luego.

2. Modificar el usuario

Conectate a la Base de datos con el usuario root o el usuario con privilegios como administrador de la base de datos de Ghost y escribe la contraseña del usuario indicado para conectarte:

mysql -u root -p
mysql -u ghostuser -p

Averigua el nombre del esquema que usaste para crear la base de datos de Ghost:

show databases;
Listar bases de datos

Cambiate a la base de datos/esquema para usar las tablas de ghost (ghostdata ó ghost):

# Si tu esquema es 'ghost':
use ghost;

# Si tu esquema es 'ghostadata':
use ghostdata;

Ahora revisaremos los usuarios que tiene nuestra base de datos, para ello simplemente escribe:

select * from users;

Vamos a suponer que queremos modificar el usuario 'administrador' generalmente con id=1, podemos modificar su clave, email y estado.

Simplemente escribiremos:

# Actualizar Clave *BCrypt* (generada antes) del usuario con id=1:
update users set password='CLAVE-BCRYPT' WHERE id=1;

# Actualizar eMail del usuario con id=1:
update users set email='cuenta@email' WHERE id=1;

# Actualizar estado a 'activo' al usuario con id=1:
update users set status='active' WHERE id=1;


# FORZAMOS COMMIT (por si acaso)
commit;

# Salimos
exit;

Y con esto tendremos modificado el usuario en Ghost.

Etiquetas

Luis GuLo

🐧 SysAdmin GNU/Linux - 🐳 Docker - 🖥️ Bash Scripting - 🐪 Perl - 🐬 MySQL - 👥 Formador de TI - 👥 Formador de SysAdmin's - 💢 Ansible - ☁️ Cloud Computing - ❤️ Debian GNU/Linux