systemadmin.es » DBA » Substituir el usuario root de MySQL por otro (sysdba por ejemplo)

Substituir el usuario root de MySQL por otro (sysdba por ejemplo)

Para las bases de datos que por el tipo de acceso a estos es imprescindible tenerlos expuestos a Internet para cualquier usuario no resulta mala idea eliminar el usuario “root” para evitar ataques de diccionario.

Para ello primero de todo entramos como root y creamos el nuevo usuario, por ejemplo lo vamos a llamar sysdba:

$ mysql -uroot -prootpass
mysql> create user sysdba@localhost identified by 'passdba';
mysql> grant all on *.* to sysdba@localhost with grant option;

A continuación podemos comprobar su funcionamiento con:

$ mysql -usysdba -ppassdba

Finalmente podemos eliminar el usuario root:

$ for i in 127.0.0.1 localhost $(hostname); do drop user root@$i | mysql -usysdba -ppassdba; done

Relacionados

Imprimir Imprimir

3 comments to “Substituir el usuario root de MySQL por otro (sysdba por ejemplo)”

  1. Perfecto, me viene al dedo ahora que estoy con el tema de seguridad.

    Muchas Gracias.

    Carlos Guerra

  2. Si el servidor está expuesto a internet, pero la cuenta administrativa es ‘root’@'localhost’, dificilmente se podrá acceder a esa cuenta desde internet.

  3. Si tienes usuarios locales no te sirve este razonamiento. El objetivo es añadir complejidad, en este caso seria ofuscación, para evitar que alguien escale privilegios por ejemplo por fuerza bruta contra el usuario root (que no existiría).

Deja un comentario:

XHTML - Tags permitidos:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>