A Django site.
Octubre 30, 2009

Leonardo Andrés Gallego
hombrepac
Leonardo Andrés Gallego trata sobre »
» Debian Lenny 5.0 actualiza phpMyAdmin y te sobre-escribe config.inc.php

Vaya dios a saber que paso, pero el mantenedor se olvido de omitir config.inc.php al actualizar el paquete.
Este es el error:

“#1045 – Access denied for user ‘root’@'localhost’ (using password: NO)”

Para solucionarlo, pasarse por:

/etc/phpmyadmin/config/config.inc.php

Y corregir la linea que dice:

$cfg['Servers'][$i]['auth_type'] = ‘config’;

Cambiarla por http o cookie, dependiendo de lo que prefieran:

$cfg['Servers'][$i]['auth_type'] = ‘http’;

Si tienen caracteres raros en la linea de host, entonces es probable que alguien haya explotado una vulnerabilidad en su servidor.

Actualización: Al final parece que no es un problema del desarrollador que mantiene el paquete de phpmyadmin, sino que es una vulnerabilidad de Debian en dicho paquete. Tengo que revisar un poco más, pero si es el caso, hay que tener especial cuidado!

Setiembre 4, 2008

Boris Quiroz
cereal_bars
wreeeeoooowww trata sobre »
» Mysql OLD_PASSWORD.

Hoy en una de esas configuraciones raras de MySql me apareció el siguiente error:

ERROR 1251: Client does not support authentication protocol
requested by server; consider upgrading MySQL client.

Qué hacer en ese caso? Dos opciones:

  1. Hacer un upgrade a MySql, lo cual no era factible porque necesitaba esa versión específica.
  2. Decirle a MySql que encripte la contraseña con un sistema anterior. Para esto existe OLD_PASSWORD.

El procedimiento para realizar este “cambio de encriptación” es relativamente simple, y lo describo a continuación:

xwing:~# mysql -u admin -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 72 to server version: 4.1.22-standard

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> SET PASSWORD FOR 'admin'@'localhost' = \
OLD_PASSWORD('**********');

Y listo. Con eso estamos usando una contraseña con un hash mas pequeño que finalmente solucionó el problema.