51 votes

Avertissement MySQL "L'adresse IP n'a pas pu être résolue".

J'ai installé MySQL Master/Slave et j'ai remarqué les avertissements suivants dans les fichiers journaux mysql sur les deux serveurs :

[Warning] IP address 'xxx.xxx.xxx.xxx' could not be resolved: Name or service not known

J'ai vérifié et les recherches DNS fonctionnent bien et la plupart de ces IP proviennent de Chine.

Je prévois de limiter l'accès au port 3306 sur le pare-feu, mais pourriez-vous m'aider à comprendre ce qu'ils essaient de faire ? Essaient-ils simplement de se connecter au serveur MySQL ? Où puis-je trouver plus de détails ?

Danke

65voto

Brad Points 3206

Lorsque vous créez un utilisateur MySQL username@example.com MySQL doit effectuer une recherche inversée sur chaque adresse IP qui se connecte à lui afin de déterminer si elle fait partie de example.com .

Bien entendu, il n'y a aucune restriction à la création de recherches inversées. Je peux donc tout à fait demander à mon fournisseur d'accès de définir la recherche inversée pour mon adresse IP comme suit google.com si je veux... ou example.com si je sais que c'est ce que les utilisateurs de votre base de données ont. Cela ne me permettra pas d'entrer, car MySQL effectue alors une recherche sur le domaine retourné pour s'assurer qu'il correspond à la même adresse IP que celle qui se connecte.

Vous pouvez désactiver cette fonction à l'aide de la touche skip_name_resolve dans votre my.cnf . Il y a de nombreuses bonnes raisons de le faire .

La raison pour laquelle vous obtenez cette erreur est que l'adresse IP en question n'est pas du tout inversée.

Vous avez également des attaquants malveillants venus de Chine qui tentent de pénétrer par force brute dans votre base de données. Cela devrait être votre priorité absolue.

15voto

harsh Points 51

Je pense que c'est une très mauvaise idée d'exposer vos serveurs de base de données directement sur l'internet.

Si vous répliquez vers un hôte distant et que vous avez besoin d'un accès internet pour y parvenir, je vous suggère de mettre en place un VPN entre les deux réseaux et de lier vos serveurs MySQL pour qu'ils n'écoutent que le réseau local.

Si vos deux hôtes se trouvent sur le même réseau local, vous pouvez en toute sécurité lier vos serveurs mysql à ce réseau.

3voto

Eugene Nogalsky Points 11

Je viens de me faire piéger par cela aussi sur Amazon RDS. Je voulais seulement me connecter à mon instance de base de données de test (ce qui suit est certainement non recommandé pour les bases de données de production) :

Les groupes de sécurité dans Amazon RDS fonctionnent un peu différemment des règles de pare-feu normales pour les instances EC2. Si vous ouvrez le port MySQL pour une IP spécifique, celle-ci doit être reconnue par votre serveur MySQL. Si ce n'est pas le cas, la connexion est refusée. La solution temporaire consiste à créer un nouveau groupe de sécurité, à savoir anyone_can_connect_to_mysql avec un seul élément - autoriser la connexion entrante MySQL/Aurora n'importe où depuis l'internet et attacher ce groupe de sécurité à votre base de données.

Inbound
-----------------------------------------
| MYSQL/Aurora | TCP | 3306 | 0.0.0.0/0 |
-----------------------------------------

Cela supprime la vérification de l'IP des connexions client et vous permet de vous connecter librement. N'oubliez pas de détacher l'élément anyone_can_connect_to_mysql de la base de données une fois les problèmes de résolution résolus.

2voto

Amin Sh Points 121

Lors de la connexion à Mysql à distance, j'ai obtenu une erreur. J'avais cet avertissement dans /var/log/mysqld.log :

[Warning] IP address 'X.X.X.X' could not be resolved: Temporary failure in name resolution

Je viens d'ajouter cette ligne à /etc/hosts fichier :

X.X.X.X some_name

Problème résolu ! sans utiliser skip-name-resolve Mais cela a provoqué des erreurs dans mon application locale, lors de la connexion à mysql.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X