•
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
•
3 comments to “Substituir el usuario root de MySQL por otro (sysdba por ejemplo)”
•
19. February 2010 at 9:40 am :
Perfecto, me viene al dedo ahora que estoy con el tema de seguridad.
Muchas Gracias.
Carlos Guerra
22. February 2010 at 11:45 am :
Si el servidor está expuesto a internet, pero la cuenta administrativa es ‘root’@'localhost’, dificilmente se podrá acceder a esa cuenta desde internet.
22. February 2010 at 11:52 am :
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).