Cómo crear un usuario con permisos específicos en una base de datos MySQL en Plesk
¿Por qué necesitas crear un usuario MySQL con permisos específicos en Plesk?
Cuando gestionas una web, una tienda online o una aplicación, la base de datos es el corazón de tu proyecto. Es donde se almacenan los usuarios, los productos, las entradas del blog o los pedidos. Sin embargo, dar acceso total a la base de datos a cualquier aplicación o persona puede ser un riesgo de seguridad enorme.
Imagina que tienes una aplicación de terceros que solo necesita leer datos, pero accidentalmente elimina una tabla completa porque tiene permisos de borrado. O imagina que un desarrollador externo necesita trabajar en una parte concreta de tu proyecto y no quieres que vea los datos de facturación de tus clientes. La solución es crear un usuario MySQL con permisos específicos, es decir, un usuario que solo pueda hacer lo que realmente necesita.
En este artículo, te voy a explicar paso a paso cómo crear un usuario MySQL en Plesk, cómo asignarle privilegios concretos y cómo evitar los errores más comunes. No necesitas ser un experto en bases de datos; solo sigue las instrucciones y tendrás tu base de datos segura y bien organizada en menos de diez minutos.
¿Qué es un usuario MySQL y por qué deberías usar permisos?
Un usuario MySQL es una cuenta que permite conectarse a una base de datos concreta. Cada usuario tiene un nombre y una contraseña, y lo más importante: tiene una serie de privilegios MySQL que determinan qué acciones puede realizar.
Los privilegios más comunes son:
- SELECT: solo puede consultar (leer) datos.
- INSERT: puede añadir nuevos registros.
- UPDATE: puede modificar registros existentes.
- DELETE: puede eliminar registros.
- CREATE: puede crear nuevas tablas o bases de datos.
- ALTER: puede modificar la estructura de las tablas.
- DROP: puede eliminar tablas o bases de datos completas.
- INDEX: puede crear o eliminar índices.
Crear un usuario MySQL en Plesk con permisos limitados es una práctica de seguridad básica. Por ejemplo, una aplicación web pública solo necesita SELECT, INSERT y UPDATE. No necesita DROP ni ALTER. Si un atacante consigue acceder a esa cuenta, el daño que puede hacer es mucho menor.
Además, si tienes varios sitios web en tu servidor, cada uno debería tener su propio usuario y su propia base de datos. Así, un problema en una web no afecta a las demás. Plesk facilita enormemente esta gestión, y en este tutorial te muestro exactamente cómo hacerlo.
Requisitos previos antes de crear tu usuario MySQL en Plesk
Antes de empezar, asegúrate de tener lo siguiente:
- Acceso a Plesk como administrador o como suscriptor con permisos para gestionar bases de datos.
- Una base de datos ya creada. Si aún no la tienes, puedes crearla desde el mismo panel en la sección "Bases de datos". El proceso es muy intuitivo: solo tienes que ponerle un nombre y elegir el tipo de base de datos (MySQL o MariaDB).
- Decidir qué tipo de permisos necesita tu usuario. Te recomiendo pensar en la función que va a desempeñar. Por ejemplo, si es para una aplicación web típica (WordPress, PrestaShop, etc.), lo normal es darle todos los privilegios sobre esa base de datos concreta, pero no sobre el resto del servidor. Si es para un usuario de solo lectura, limítalo a
SELECT.
Paso a paso: Cómo crear un usuario MySQL en Plesk
Vamos a ello. Sigue estos pasos y tendrás tu usuario creado en un momento.
Paso 1: Accede a la sección de Bases de datos
- Inicia sesión en tu panel de Plesk.
- En el menú lateral izquierdo, busca la sección "Bases de datos" y haz clic en ella.
- Verás un listado con todas las bases de datos que tienes. Localiza la base de datos en la que quieres crear el usuario y haz clic sobre su nombre.
Paso 2: Entra en la gestión de usuarios
Una vez dentro de la base de datos, verás varias pestañas o secciones: "Tablas", "Usuarios", "Herramientas", etc.
- Haz clic en la pestaña "Usuarios".
- Verás una tabla con los usuarios existentes (si hay alguno). En la parte superior derecha, encontrarás un botón que dice "Agregar usuario" o "Crear nuevo usuario". Haz clic en él.
Paso 3: Configura los datos del usuario
Aquí es donde empieza la parte interesante. Deberás rellenar un formulario con los siguientes campos:
- Nombre de usuario: elige un nombre descriptivo, como
webapp_userosololectura. Evita usar el nombre de la base de datos para no confundirte. - Contraseña: introduce una contraseña fuerte. Plesk suele tener un generador de contraseñas aleatorias. Si la generas, cópiala y guárdala en un lugar seguro porque no podrás verla de nuevo.
- Confirmar contraseña: repítela para evitar errores.
Paso 4: Selecciona los privilegios MySQL (la clave del asunto)
Aquí es donde decides qué permisos tendrá este usuario. Plesk te muestra una lista de privilegios MySQL con casillas de verificación. Puedes marcar o desmarcar según lo que necesites.
Te doy algunas combinaciones típicas:
- Usuario administrador de la base de datos: marca todas las casillas. Es útil si vas a importar backups, hacer cambios estructurales o desarrollar la aplicación.
- Usuario para una aplicación web estándar: marca
SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX,DROP. Es lo que suelen necesitar WordPress o PrestaShop. - Usuario de solo lectura: marca únicamente
SELECT. Perfecto para generar informes o para que un consultor externo pueda ver los datos sin poder modificarlos. - Usuario de escritura sin permisos estructurales: marca
SELECT,INSERT,UPDATE,DELETE. Ideal para aplicaciones que solo gestionan contenido pero no modifican la estructura de las tablas.
[TIP] Si no sabes qué opciones elegir, empieza con los permisos mínimos. Siempre puedes ampliarlos más adelante editando el usuario. Es más seguro ir de menos a más que tener un usuario con todos los privilegios y luego recortarlos.
Paso 5: Guarda el usuario
Cuando hayas seleccionado los privilegios, haz clic en "Aceptar" o "Crear" (el botón varía según la versión de Plesk). El sistema creará el usuario y te mostrará un mensaje de confirmación.
¡Enhorabuena! Ya has creado tu usuario MySQL en Plesk. Ahora puedes usar ese usuario y contraseña en tu aplicación o para conectarte desde herramientas como phpMyAdmin.
Cómo modificar los permisos de un usuario existente
¿Necesitas cambiar los permisos de un usuario que ya creaste? No hay problema. El proceso es muy similar.
- Ve a "Bases de datos" y entra en la base de datos correspondiente.
- Haz clic en la pestaña "Usuarios".
- Verás el listado de usuarios. Haz clic en el nombre del usuario que quieres modificar.
- Se abrirá una pantalla con los datos del usuario y la lista de privilegios. Marca o desmarca las casillas según necesites.
- Guarda los cambios.
[WARNING] Ten mucho cuidado al quitar privilegios. Si le quitas
SELECTa un usuario que usa una aplicación, la aplicación dejará de funcionar de inmediato. Haz los cambios en horas de poco tráfico y verifica que todo sigue funcionando correctamente.
Cómo eliminar un usuario MySQL en Plesk
Si ya no necesitas un usuario, lo mejor es eliminarlo para reducir la superficie de ataque.
- Entra en la base de datos y ve a la pestaña "Usuarios".
- Marca la casilla junto al usuario que quieres eliminar.
- Haz clic en el botón "Eliminar" (suele estar en la parte superior de la lista).
- Confirma la eliminación.
[INFO] Eliminar un usuario no borra la base de datos ni las tablas. Solo elimina el acceso. Si la aplicación que usaba ese usuario sigue activa, dejará de funcionar, así que asegúrate de actualizar la configuración antes de eliminar.
Errores comunes al crear usuarios MySQL en Plesk (y cómo evitarlos)
Aunque el proceso es sencillo, es fácil cometer errores. Aquí tienes los más frecuentes:
Error 1: Dar demasiados privilegios
Es tentador marcar todas las casillas para "que no haya problemas", pero esto es un error. Si la aplicación es comprometida, el atacante podrá borrar toda la base de datos. Empieza siempre con los permisos mínimos y ve ampliándolos solo si es estrictamente necesario.
Error 2: Olvidar la contraseña
Plesk no te muestra la contraseña después de crearla. Si la pierdes, tendrás que restablecerla. Para ello, entra en el usuario y en el campo de contraseña, introduce una nueva. No hay forma de recuperar la anterior.
Error 3: Confundir el nombre de la base de datos con el nombre del usuario
A menudo, las aplicaciones piden el nombre de la base de datos y el nombre del usuario. Son dos cosas distintas. Un error típico es poner el nombre de la base de datos en el campo de usuario. Revisa siempre la configuración de tu aplicación.
Error 4: No conectar el usuario a la base de datos correcta
En Plesk, cada usuario está vinculado a una base de datos concreta. Si intentas usar ese usuario en otra base de datos, te dará un error de acceso. Asegúrate de crear el usuario dentro de la base de datos correcta.
Preguntas frecuentes sobre usuarios y privilegios MySQL
¿Puedo usar el mismo usuario para varias bases de datos?
No directamente. En Plesk, cada usuario se crea dentro de una base de datos específica. Si necesitas que un usuario acceda a varias bases de datos, tendrás que crearlo en cada una de ellas con el mismo nombre y contraseña. Sin embargo, esto puede ser confuso, así que te recomiendo crear usuarios independientes.
¿Qué diferencia hay entre un usuario y un administrador de bases de datos?
Un administrador de bases de datos (a menudo el usuario root o admin) tiene acceso a todo el servidor de bases de datos. Un usuario normal solo tiene acceso a la base de datos a la que está vinculado. Para la mayoría de las aplicaciones, un usuario normal es suficiente y mucho más seguro.
¿Puedo cambiar el nombre de un usuario existente?
No, no puedes cambiar el nombre de un usuario una vez creado. Tendrás que crear uno nuevo con el nombre deseado y eliminar el antiguo. Recuerda actualizar la configuración de tu aplicación.
¿Cómo sé qué permisos tiene mi usuario?
En Plesk, entra en la base de datos, ve a la pestaña "Usuarios" y haz clic en el nombre del usuario. Verás todas las casillas marcadas. Es una forma rápida de auditar los permisos.
Buenas prácticas de seguridad para tus bases de datos en Plesk
Para terminar, te dejo una lista de buenas prácticas que deberías seguir siempre:
- Crea un usuario distinto para cada aplicación o servicio. No compartas usuarios entre webs.
- Usa contraseñas largas y únicas. Plesk tiene un generador integrado, úsalo.
- Revisa periódicamente los permisos de tus usuarios. Elimina los que ya no uses.
- No uses el usuario
rootpara aplicaciones web. Es un riesgo de seguridad grave. - Haz copias de seguridad de tus bases de datos con regularidad. Plesk tiene herramientas automáticas, actívalas.
- Si utilizas Syspanel (antes conocido como HestiaCP) en algún servidor alternativo, recuerda que el puerto de acceso es el 2106 y que el proceso de gestión de usuarios MySQL es similar, aunque con una interfaz distinta.
[INFO] La gestión de usuarios MySQL es una habilidad esencial para cualquier persona que administre sitios web. Dominarla te permitirá mantener tus proyectos seguros y bien organizados, además de evitar dolores de cabeza cuando algo falle.
Conclusión
Crear un usuario MySQL con permisos específicos en Plesk es un proceso rápido y sencillo, pero con un impacto enorme en la seguridad y el rendimiento de tus aplicaciones. Ahora ya sabes cómo hacerlo paso a paso, cómo elegir los privilegios adecuados y cómo evitar los errores más comunes.
Recuerda: menos permisos es siempre mejor. Empieza con lo mínimo, audita tus usuarios de vez en cuando y no compartas contraseñas. Con estas prácticas, tu base de datos estará protegida y tu aplicación funcionará sin problemas.
Si te ha quedado alguna duda, revisa la sección de preguntas frecuentes o consulta la documentación oficial de Plesk. ¡Buena suerte con tus bases de datos!
