Bonjour,
J'ai régulièrement le message suivant dans mon application :
Impossible de se connecter : Host 'xxxxxxx' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'
(j'ai bien le nom d'hôte en question, ici remplacé par xxxxxxx)
Le flush-hosts
règle bien le problème, cependant je souhaiterais que cela ne se produise pas.
Le serveur MySQL en question héberge les BDD Centreon et tourne sous FAN 2.4 (CentOS)
J'ai été voir le fichier /var/log/mysqld.log mais je ne vois rien concernant des tentatives de connexion avortées…
Auriez-vous une piste à me proposer ?
# logs php
Posté par Joris Dedieu (site web personnel) . Évalué à 4.
Bonjour,
Il est probable qu'un script ait de mauvaises informations de connexion. Dans le cas du php, tu actives le error_reporting et tu place log_error à On. Ainsi tu auras dans les logs d'erreur du serveur web des "access denied" et le script d'origine
[^] # Re: logs php
Posté par Marotte ⛧ . Évalué à 2. Dernière modification le 19 septembre 2014 à 15:17.
J'ai déjà :
error_reporting = E_ALL
et
log_error = On
Je regarde /var/log/httpd/error_log sur le serveur sur lequel tourne PHP et /var/log/mysqld.log sur le serveur de BDD. Regardé-je au bon endroit ?
J'imagine que les tentatives de connexion qui bloquent l'accès n'émanent pas forcément d'un script PHP.
C'est plutôt du côté MySQL que je devrais chercher non ?
[^] # Re: logs php
Posté par Joris Dedieu (site web personnel) . Évalué à 2.
A partir de 5.5 tu peux mettre log_warning à 2 pour avoir cette info dans les logs. En dessous c'est mort à moins d'activer les log généraux (qui vous tout logguer y compris les requêtes).
[^] # Re: logs php
Posté par claudex . Évalué à 3.
Non, l'erreur que tu as vient bien des tentatives de connexions à MySQL. Si la machine ne doit écouter que sur localhost, vérifie bien que c'est le cas (et qu'il n'y a pas d'autres machines qui y font des tentatives de connexion). Si la machine doit écouter sur le réseau local, essaye de voir s'il n'y aurait pas des machines qui tentent de d'y connecter. Tu peux aussi essayer de changer le port par défaut, ça donne souvent de bon résultats contre les attaques automatisées.
« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: logs php
Posté par Marotte ⛧ . Évalué à 2.
Oui j'entends bien. Ce que je voulais dire c'est que cela ne vient pas forcément d'un script PHP. Ça peut être une tentative de connexion via le client MySQL en ligne de commande ou MySQL Workbench ou encore autre chose…
Le serveur MySQL qui bloque est le serveur de production base de données Centreon. Le script maison PHP tourne sur le serveur central Centreon de recette.
Ce n'est pas mon script maison qui provoque le blocage et je ne pense pas que cela vienne d'une connexion manuelle (client MySQL ou MySQL Workbench), j'en déduis (je subodore plutôt…) donc que c'est provoqué par l'application Centreon (de recette) qui tenteraient des connexions infructueuses sur le MySQL Centreon de production (ce qui paraît étonnant, mais possible vu l'expertise toute relative de l'équipe qui a mis en place la solution F.A.N…).
Je voudrais bien pouvoir en apporter la preuve grâce à un log…
En tous cas merci pour toutes vos idées. J'y retourne demain à l'aube, vais voir ça…
[^] # Re: logs php
Posté par claudex . Évalué à 5.
Si tu veux un log, je te conseille de faire tourner un tcpdump en filtrant sur le port mysql (
tcpdump -i eth0 -w /var/tmp/mysql_port.log port 3306
). En plus, tu verras peut-être des problèmes purement réseau au niveau de la connexion TCP qui expliquent pourquoi l'hôte se fait jeter..« Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche
[^] # Re: logs php
Posté par Marotte ⛧ . Évalué à 2.
Excellente idée. Encore merci.
[^] # Re: logs php
Posté par NeoX . Évalué à 2.
si la recette est une copie de la production et que les serveurs/login/pass n'ont pas été modifiés c'est bien possible que la recette tente de se connecter au serveur de base de données de prod.
# Commentaire supprimé
Posté par kliff . Évalué à 1. Dernière modification le 03 avril 2021 à 22:12.
Ce commentaire a été supprimé par l’équipe de modération.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.