Adresse D'écoute Du Service

1 Description du problème

Un service MySQL a été installé sur ECS, le groupe de sécurité du pare-feu est correct, mais l’accès distant est impossible.

2 Dépannage

2.1 Vérification de la connectivité

Utilisez un ordinateur local pour scanner les ports du serveur, obtenant le résultat suivant :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
 ⚡yangz ❯❯ nmap -sS MD
Starting Nmap 7.93 ( https://nmap.org ) at 2023-01-26 19:23 中国标准时间
Nmap scan report for MD 
Host is up (0.045s latency).
Not shown: 996 filtered tcp ports (no-response)
PORT     STATE  SERVICE
22/tcp   open   ssh
80/tcp   open   http
443/tcp  closed https
3306/tcp closed   mysql

Le résultat indique que le port 3306 est autorisé, mais le service ne fonctionne pas correctement.

2.2 Vérification des ports

Vérifiez l’utilisation de tous les ports sur ECS :

1
2
3
4
root@minedl:~# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      24735/mysqld 

MySQL est lié à l’adresse de boucle locale, donc il ne peut pas fournir de service externe. C’est là que réside le problème.

3 Configuration de l’adresse de liaison

La configuration par défaut de MySQL est d’écouter l’adresse de service sur 127.0.0.1, ce qui ne permet pas de fournir de service externe. Changez l’adresse de liaison à 0.0.0.0 pour supporter l’accès distant, faites la configuration suivante :

1
vim /etc/mysql/mysql.conf.d/mysqld.cnf

Modifiez bind-address = 0.0.0.0, attention à ne pas simplement commenter, sinon cela pourrait entraîner le deuxième résultat suivant.

1
2
3
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      24735/mysqld # n'écoute que localhost
tcp6       0      0 :::3306                 :::*                    LISTEN      24794/mysqld # n'écoute que ipv6, pas ipv4
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      24877/mysqld # écoute tous les ipv4

Résultat trois obtenu, l’accès local est également réussi.

4 Résumé

De nombreux logiciels et cadres lient par défaut l’adresse à 127.0.0.1, ce qui empêche l’accès depuis d’autres machines. Il est nécessaire de changer pour 0.0.0.0 ou :::, le premier fournissant un service ipv4, le second un service ipv6.

Buy me a coffee~
Tim AlipayAlipay
Tim PayPalPayPal
Tim WeChat PayWeChat Pay
0%