Quel est le port MySQL par défaut ? Comment le vérifier, le modifier et le sécuriser (3306 expliqué)

1. Quel est le port MySQL par défaut ?

Numéro de port MySQL et son rôle

MySQL utilise le port 3306 par défaut pour la communication. Un numéro de port sert à distinguer plusieurs services sur un réseau et constitue un élément essentiel du protocole TCP/IP. En attribuant des numéros de port différents à chaque service, plusieurs processus peuvent fonctionner simultanément sur le même serveur.

Dans le cas de MySQL, les clients se connectent au serveur via le port 3306 pour effectuer des opérations sur la base de données. Par exemple, MySQL Workbench et d’autres outils de bases de données utilisent ce port pour accéder à la base.

Pourquoi le port 3306 est‑il utilisé ?

Le port 3306 est le port standard de MySQL et est utilisé dans de nombreuses configurations par défaut. En utilisant ce port, les développeurs d’applications peuvent accéder à la base de données sans configuration spéciale, ce qui rend l’installation simple et pratique. Cependant, comme il peut présenter des risques de sécurité, une gestion appropriée est requise.

2. Comment vérifier le port MySQL

Vérification via la ligne de commande

Pour vérifier le port actuellement utilisé par le serveur MySQL, exécutez la commande suivante :

SHOW VARIABLES LIKE 'port';

Cette commande indique quel port le serveur utilise. Dans de nombreux cas, il s’agit du port par défaut 3306, mais il peut avoir été modifié selon la configuration.

Vérification dans le fichier de configuration

Vous pouvez également confirmer le numéro de port en consultant les paramètres du fichier my.cnf (ou my.ini sous Windows). Ce fichier de configuration se trouve généralement aux emplacements suivants :

  • Linux : /etc/mysql/my.cnf
  • Windows : C:\ProgramData\MySQL\MySQL Server\my.ini

Le paramètre port dans ce fichier définit le numéro de port en cours d’utilisation.

[mysqld]
port=3306

En examinant ce fichier, vous pouvez identifier le numéro de port actuellement configuré.

3. Comment changer le port MySQL

Raisons de modifier le port

Il existe plusieurs raisons de changer le port MySQL par défaut. Tout d’abord, comme mesure de sécurité, les attaquants ciblent souvent le port 3306 ; le modifier réduit donc le risque. De plus, si vous exécutez plusieurs instances MySQL sur le même serveur, chaque instance doit disposer d’un port différent.

Étapes pour changer le port

Pour modifier le port MySQL, éditez le fichier de configuration my.cnf. Par exemple, si vous souhaitez passer le port à 3307, modifiez le paramètre comme suit :

[mysqld]
port=3307

Après avoir enregistré la configuration, redémarrez le serveur MySQL. Sous Linux, vous pouvez le faire avec la commande suivante :

sudo systemctl restart mysql

Sous Windows, il faut redémarrer le service MySQL. N’oubliez pas non plus de mettre à jour les règles de votre pare‑feu afin d’autoriser le trafic sur le nouveau numéro de port.

4. Mesures de sécurité

Risques liés à l’ouverture du port

Ouvrir le port MySQL aux accès externes introduit des risques de sécurité. Les attaquants peuvent réaliser des scans de ports et tenter un accès non autorisé en ciblant le port 3306. Il est donc essentiel de mettre en place des mesures de protection pour sécuriser votre serveur.

Configuration du pare‑feu et restrictions d’accès

En configurant un pare‑feu et en n’autorisant les connexions qu’à partir d’adresses IP spécifiques, vous pouvez empêcher les accès non autorisés. Par exemple, avec iptables sous Linux, vous pouvez configurer le serveur de façon à ce qu’une adresse IP donnée soit la seule à pouvoir accéder au port 3306.

sudo iptables -A INPUT -p tcp -s <allowed_ip_address> --dport 3306 -j ACCEPT

Il est également recommandé d’utiliser un tunnel SSH pour chiffrer l’accès à MySQL. Ainsi, les connexions externes n’accèdent pas directement au port, mais passent par un canal sécurisé et chiffré.

Mise en place de SSL/TLS

Il est aussi conseillé d’implémenter SSL/TLS afin de chiffrer les communications entre le serveur MySQL et les clients. Cela protège les données transitant sur le réseau et réduit le risque d’interception ou de falsification.

5. Dépannage des problèmes de port MySQL

Conflits de ports

Si le port utilisé par MySQL entre en conflit avec un autre service, vous devrez changer le port. Par exemple, si une autre application utilise le même port, MySQL peut échouer à démarrer ou à fonctionner correctement. Dans ce cas, suivez les étapes précédemment décrites pour changer le numéro de port.

Problèmes de Connexion Externe

Si vous ne pouvez pas vous connecter à MySQL depuis un hôte externe, le problème peut être lié aux paramètres du pare-feu ou au fichier de configuration de MySQL. Pour autoriser les connexions externes, définissez bind-address sur 0.0.0.0 dans le fichier de configuration de MySQL pour accepter les connexions de toutes les adresses.

[mysqld]
bind-address = 0.0.0.0

De plus, assurez-vous que le port approprié est ouvert dans les paramètres de votre pare-feu.

6. Meilleures Pratiques pour les Ports MySQL

Utilisation d’un Port Personnalisé

Si vous choisissez de ne pas utiliser le port par défaut 3306, définir un numéro de port élevé aléatoire est considéré comme une meilleure pratique de sécurité. Cette approche aide à réduire l’exposition aux attaques de scan de ports automatisées, surtout lorsque l’accès externe est autorisé.

Surveillance des Journaux

Surveiller régulièrement les journaux de connexion MySQL et les journaux d’erreurs vous aide à détecter les incidents de sécurité à un stade précoce. Si un accès anormal est identifié, il est important de répondre immédiatement. La surveillance des journaux devrait faire partie de votre stratégie globale de gestion de la sécurité.

7. Conclusion

Dans cet article, nous avons couvert les bases des ports MySQL et les mesures de sécurité essentielles. Bien que le port par défaut 3306 soit couramment utilisé, il est important de changer le port lorsque nécessaire et de mettre en œuvre des mesures de sécurité telles que la configuration du pare-feu et le tunneling SSH. Nous avons également discuté des étapes courantes de dépannage pour les problèmes de connexion externe. En effectuant une surveillance régulière des journaux et des vérifications de sécurité, vous pouvez exploiter votre serveur MySQL en toute sécurité.