Cómo crear un usuario de base de datos con privilegios en Plesk
¿Qué es un usuario de base de datos en Plesk y por qué necesitas uno?
Cuando creas una base de datos en Plesk, el sistema genera automáticamente un usuario principal con todos los permisos. Sin embargo, es una práctica habitual y muy recomendable crear usuarios adicionales con privilegios limitados. ¿Por qué? Imagina que tienes una aplicación web (como WordPress, PrestaShop o una tienda online) que solo necesita leer y escribir datos, pero no modificar la estructura de las tablas.
Si esa aplicación se ve comprometida por un ataque, el atacante solo podrá hacer lo que ese usuario puede hacer. Si usas el usuario principal con todos los privilegios, el daño potencial es mucho mayor. Por eso, crear usuarios con privilegios específicos es una de las mejores prácticas de seguridad en la gestión de bases de datos MySQL.
En este artículo, te explicaré paso a paso cómo crear un usuario de base de datos con privilegios en Plesk, qué significa cada tipo de privilegio y cómo gestionarlos correctamente. No necesitas ser un experto técnico, solo seguir las instrucciones al pie de la letra.
Requisitos previos antes de empezar
Antes de lanzarnos a crear usuarios, asegúrate de tener lo siguiente:
- Acceso al panel de control de Plesk (normalmente a través de
https://tu-dominio.com:8443). - Una suscripción o dominio activo en tu cuenta.
- Una base de datos ya creada en Plesk (MySQL o MariaDB, que es lo mismo a efectos prácticos).
- Credenciales de administrador o permisos suficientes para gestionar bases de datos.
Si no tienes una base de datos creada, puedes hacerlo desde Bases de datos en el panel principal de Plesk. Una vez que la tengas, sigue estos pasos.
Paso 1: Accede a la sección de Bases de Datos en Plesk
Lo primero que debes hacer es iniciar sesión en tu panel de Plesk. Una vez dentro, busca en el menú lateral la opción Bases de datos. Haz clic en ella y verás un listado de todas las bases de datos que tienes asociadas a tu dominio o suscripción.
Selecciona la base de datos a la que quieres añadir un nuevo usuario. Normalmente, verás un icono o un enlace con el nombre de la base de datos. Haz clic sobre ella para entrar en su gestión.
Paso 2: Localiza la opción de Añadir Usuario
Dentro de la página de gestión de tu base de datos, verás varias pestañas o secciones. Busca la que dice Usuarios o Usuarios de base de datos. En la mayoría de las versiones de Plesk, encontrarás un botón azul que dice Añadir usuario o Crear nuevo usuario. Haz clic en él.
Paso 3: Configura los datos del nuevo usuario
Ahora se abrirá un formulario donde deberás completar la información del nuevo usuario. Los campos típicos son:
- Nombre de usuario: Elige un nombre descriptivo, por ejemplo
app_lecturaotienda_web. Evita usar caracteres especiales o espacios. Solo letras, números y guiones bajos. - Contraseña: Genera una contraseña segura. Plesk tiene un generador automático que puedes usar haciendo clic en el icono del ojo o en el botón de generar. Te recomiendo que uses una combinación de mayúsculas, minúsculas, números y símbolos.
- Confirmar contraseña: Repite la contraseña para asegurarte de que no hay errores.
Una vez completados estos campos, pasa al siguiente apartado: los privilegios.
Paso 4: Elige los privilegios del usuario (la parte más importante)
Este es el corazón del asunto. Aquí decides qué puede hacer este usuario dentro de la base de datos. Plesk te muestra una lista de privilegios que puedes marcar o desmarcar. Te explico los más comunes para que sepas qué estás haciendo:
Privilegios de datos (los más usados)
- SELECT: Permite leer datos de las tablas. Es el privilegio más básico y necesario para cualquier aplicación que muestre información.
- INSERT: Permite añadir nuevos registros a las tablas. Lo necesitas si la aplicación crea contenido nuevo (por ejemplo, un formulario de contacto).
- UPDATE: Permite modificar registros existentes. Útil para editar contenido.
- DELETE: Permite eliminar registros. Ten cuidado con este privilegio, ya que es destructivo.
Privilegios de estructura (más avanzados)
- CREATE: Permite crear nuevas tablas o bases de datos. Solo deberías darlo a usuarios que necesiten instalar o actualizar módulos.
- ALTER: Permite modificar la estructura de las tablas (añadir columnas, cambiar tipos de datos, etc.).
- DROP: Permite eliminar tablas o bases de datos completas. Este privilegio es extremadamente peligroso. No lo des a menos que sea absolutamente necesario.
- INDEX: Permite crear y eliminar índices, lo que puede mejorar el rendimiento de las consultas.
Privilegios administrativos (avanzados)
- GRANT: Permite al usuario otorgar privilegios a otros usuarios. No lo des a menos que sea un usuario administrador.
- LOCK TABLES: Permite bloquear tablas durante operaciones de mantenimiento.
- REFERENCES: Permite crear claves foráneas, útil en bases de datos relacionales complejas.
La opción "Todos los privilegios"
Al final de la lista, encontrarás una casilla que dice Todos los privilegios. Si la marcas, el usuario tendrá control total sobre la base de datos. No la marques a menos que sepas exactamente lo que haces. Para la mayoría de aplicaciones web, un conjunto de privilegios como SELECT, INSERT, UPDATE y DELETE es más que suficiente.
Paso 5: Guarda el usuario y verifica los cambios
Una vez que hayas seleccionado los privilegios deseados, haz clic en Aceptar o Guardar. Plesk creará el usuario y lo añadirá a la lista de usuarios de la base de datos.
Ahora, cuando configures una aplicación (por ejemplo, WordPress), podrás usar este nuevo usuario en lugar del principal. Solo necesitas el nombre de usuario, la contraseña y el nombre de la base de datos.
Cómo modificar o eliminar un usuario de base de datos
Puede que en el futuro necesites cambiar los privilegios de un usuario o eliminarlo por completo. El proceso es muy sencillo:
Modificar privilegios
- Ve a la lista de usuarios de tu base de datos.
- Haz clic en el nombre del usuario que quieres modificar.
- Verás la misma pantalla de privilegios que al crearlo. Marca o desmarca las casillas según tus necesidades.
- Guarda los cambios.
Eliminar un usuario
- En la lista de usuarios, localiza el que quieres eliminar.
- Haz clic en la casilla de verificación junto a su nombre.
- Haz clic en el botón Eliminar (normalmente con un icono de papelera).
- Confirma la acción. Ten en cuenta que esta acción no se puede deshacer.
Ejemplo práctico: crear un usuario para una tienda online
Vamos a ponerlo en práctica con un ejemplo real. Supón que tienes una tienda online llamada mitienda.com y su base de datos se llama mitienda_db. La aplicación necesita:
- Leer productos (SELECT).
- Registrar pedidos (INSERT).
- Actualizar el stock (UPDATE).
- Eliminar carritos abandonados (DELETE).
No necesita crear tablas nuevas ni modificar la estructura. Entonces, el usuario ideal sería:
- Nombre de usuario:
tienda_app - Contraseña:
Str0ng#Pass2024 - Privilegios: SELECT, INSERT, UPDATE, DELETE
Con esto, la aplicación funciona perfectamente y, si alguien compromete ese usuario, no podrá borrar tablas ni alterar la estructura de la base de datos.
Errores comunes y cómo solucionarlos
Error: "Access denied for user"
Este error suele aparecer cuando el usuario no tiene permisos suficientes para la operación que intenta realizar. Revisa los privilegios que le has asignado y añade los que necesite.
Error: "User already exists"
Si intentas crear un usuario con un nombre que ya existe, Plesk te dará este error. Elige otro nombre o modifica el usuario existente.
No recuerdo la contraseña del usuario
No te preocupes. En Plesk, puedes cambiar la contraseña de cualquier usuario desde la lista de usuarios. Solo tienes que hacer clic en el icono de edición y escribir una nueva contraseña.
Preguntas frecuentes (FAQ)
¿Puedo crear un usuario que acceda a varias bases de datos?
Sí, en Plesk puedes asignar el mismo usuario a diferentes bases de datos. Solo tienes que repetir el proceso de creación o edición en cada base de datos y usar el mismo nombre de usuario. Eso sí, los privilegios se configuran por base de datos, así que deberás definirlos en cada una.
¿Qué diferencia hay entre MySQL y MariaDB?
A efectos prácticos, ninguna. MariaDB es un fork de MySQL y Plesk lo gestiona de la misma manera. Los privilegios y la gestión son idénticos.
¿Es seguro usar el usuario principal para mi aplicación web?
No es lo más recomendable. Si la aplicación tiene una vulnerabilidad, el atacante tendría control total sobre la base de datos. Crear usuarios con privilegios limitados es una capa extra de seguridad muy valiosa.
¿Puedo crear un usuario con acceso remoto desde otra IP?
Plesk permite restringir el acceso por IP en algunos casos, pero la configuración avanzada de hosts se realiza a nivel de servidor. Si necesitas acceso remoto, consulta con tu proveedor de hosting.
¿Qué hago si mi aplicación necesita más privilegios de los que le he dado?
Simplemente edita el usuario en Plesk y añade los privilegios que necesite. No hay límite en la cantidad de cambios que puedes hacer.
Consejos finales para una gestión segura
- Usa contraseñas únicas y seguras para cada usuario de base de datos. No reutilices la misma contraseña para todo.
- Revisa periódicamente los privilegios de tus usuarios. Si una aplicación ya no necesita ciertos permisos, revócalos.
- No compartas las credenciales de tus bases de datos por correo electrónico o mensajes no cifrados.
- Si usas un panel alternativo como Syspanel (antes conocido como HestiaCP), recuerda que el acceso se realiza a través del puerto 2106 (por ejemplo,
https://tu-servidor:2106). Los conceptos de gestión de usuarios y privilegios son similares, aunque la interfaz puede variar ligeramente.
Conclusión
Crear un usuario de base de datos con privilegios en Plesk es un proceso sencillo pero muy poderoso. Te permite controlar exactamente qué puede hacer cada aplicación con tus datos, mejorando la seguridad y el rendimiento de tus proyectos. Solo necesitas entender qué privilegios requiere tu aplicación y configurarlos en unos pocos clics.
Recuerda: la gestión de bases de datos no es solo crear tablas y guardar datos. Es también saber quién puede hacer qué con ellos. Con esta guía, ya tienes las herramientas para hacerlo de forma correcta y segura.
Si tienes cualquier duda, no dudes en consultar la documentación oficial de Plesk o contactar con tu proveedor de hosting. ¡Buena suerte con tus bases de datos!
