Je vais vous expliquer étape par étape ce qu’est un port en informatique. Chaque port à une utilité. Découvrez à quoi ils servent, comment ils fonctionnent, et pourquoi ils sont essentiels. Ce tutoriel complet sur les ports informatique est composé d’exemples concrets pour bien comprendre.
- Qu’est-ce qu’un port en informatique ?
- Pourquoi avons-nous besoin des ports ?
- Comprendre les numéros de ports
- Exemple concret : comment fonctionne un port dans le développement web ?
- Les ports et la sécurité
- Le rôle des ports dans un serveur web local
- Pourquoi changer le port par défaut ?
- Que se passe-t-il si deux services utilisent le même port ?
- Comment savoir quels ports sont ouverts sur votre ordinateur ?
- Sécurité et cas d’usage dans le développement web
- Glossaire des ports importants en développement web : ce qu’il faut retenir
- Port 80 — HTTP (HyperText Transfer Protocol)
- Port 443 — HTTPS (HTTP Secure)
- Port 3306 — MySQL / MariaDB
- Port 21 — FTP (File Transfer Protocol)
- Port 22 — SSH (Secure Shell)
- Port 25 — SMTP (Simple Mail Transfer Protocol)
- Port 8080 — HTTP alternatif / Proxy
- Port 8888 et 8889 — Ports MAMP par défaut
- Port 3000, 4200, 5000… — Ports pour serveurs de développement modernes
- Tableau récapitulatif des numéros de port
Qu’est-ce qu’un port en informatique ?
Vous avez sûrement déjà entendu parler des « ports » en informatique, mais vous vous demandez peut-être ce que cela signifie vraiment, surtout si vous débutez. En termes simples, un port est comme une porte d’entrée numérique sur un ordinateur ou un serveur.
Imaginez que votre ordinateur est un grand bâtiment avec des centaines de portes. Chaque porte mène à une pièce différente, où des activités spécifiques se déroulent. Ces portes, ce sont les ports. Ils permettent à des programmes et à des services de communiquer entre eux ou avec d’autres ordinateurs.
Dans le monde du développement web, les ports sont très importants. Par exemple, quand vous ouvrez votre navigateur pour aller sur un site, votre ordinateur utilise un port pour envoyer et recevoir des informations. Les serveurs web, les bases de données comme MySQL, ou encore les services FTP utilisent eux aussi des ports spécifiques.
Pourquoi avons-nous besoin des ports ?
Pour bien comprendre pourquoi les ports sont nécessaires, imaginons une situation simple.
Votre ordinateur ou un serveur peut faire tourner plusieurs applications en même temps. Par exemple, vous pourriez avoir un serveur web qui sert des pages internet, un serveur de base de données MySQL qui stocke des données, et un serveur FTP qui permet de transférer des fichiers. Tous ces services ont besoin de pouvoir envoyer et recevoir des données en même temps.
Mais comment votre ordinateur sait-il à quel service envoyer chaque information reçue ? C’est là que les ports interviennent.
Chaque port est identifié par un numéro unique. Lorsqu’une application veut communiquer, elle « écoute » sur un port spécifique. Les données envoyées à cet ordinateur sont dirigées vers le bon service grâce au numéro de port.
C’est comme si chaque service avait sa propre boîte aux lettres. Si vous recevez un courrier, le numéro de boîte aux lettres vous dira à qui il est destiné.
Comprendre les numéros de ports
Un port est identifié par un numéro de port compris entre 0 et 65535. Ce nombre est stocké dans un champ spécial dans les paquets de données transmis sur le réseau.
Les ports sont généralement divisés en trois grandes catégories :
- Les ports bien connus (de 0 à 1023) : Ces ports sont réservés à des services standards très connus. Par exemple, le port 80 est utilisé par le serveur web HTTP, le port 443 est utilisé pour HTTPS (le HTTP sécurisé), et le port 3306 est utilisé par MySQL, le système de gestion de base de données.
- Les ports enregistrés (de 1024 à 49151) : Ces ports sont utilisés par des applications et des services qui ne sont pas forcément standards, mais qui ont besoin d’un numéro fixe.
- Les ports dynamiques ou privés (de 49152 à 65535) : Ces ports sont souvent utilisés temporairement par des applications lors de communications sortantes. Par exemple, quand vous visitez un site web, votre ordinateur utilise un port dynamique pour communiquer avec le serveur.
Exemple concret : comment fonctionne un port dans le développement web ?
Prenons un exemple très simple avec un serveur web local.
Supposons que vous avez installé un serveur Apache ou Nginx sur votre ordinateur pour créer un site web. Ce serveur écoute généralement sur le port 80 (pour HTTP) ou 443 (pour HTTPS). Cela veut dire que quand vous tapez http://localhost
dans votre navigateur, celui-ci va envoyer une requête vers le port 80 de votre ordinateur.
Le serveur, qui écoute sur ce port, reçoit la requête, cherche la page demandée et la renvoie au navigateur. Si vous voulez que le serveur web fonctionne sur un autre port, par exemple 8080, vous pouvez le configurer ainsi. Dans ce cas, il faudra taper http://localhost:8080
pour accéder à votre site.
De la même manière, si vous avez une base de données MySQL en local, elle écoute par défaut sur le port 3306. Votre application web qui veut récupérer ou stocker des données doit se connecter à ce port.
Les ports et la sécurité
Les ports sont aussi un élément clé en matière de sécurité informatique. Parce qu’ils sont des portes d’entrée sur votre ordinateur ou serveur, ils peuvent devenir des points faibles si on ne fait pas attention.
Par exemple, un serveur qui a un port ouvert et accessible depuis internet peut être la cible d’attaques. Des pirates peuvent essayer de se connecter via ces ports pour exploiter des failles ou prendre le contrôle.
C’est pourquoi il est très important de :
- Fermer les ports inutilisés : Si un service n’a pas besoin d’être accessible, mieux vaut fermer son port pour éviter les risques.
- Utiliser un pare-feu (firewall) : C’est un outil qui contrôle quels ports sont ouverts ou fermés selon des règles. Par exemple, vous pouvez autoriser uniquement les connexions sur le port 80 et 443 pour un serveur web, et bloquer tous les autres.
- Configurer les services pour qu’ils écoutent uniquement sur l’interface locale si vous ne voulez pas qu’ils soient accessibles depuis l’extérieur.
Le rôle des ports dans un serveur web local
Comme nous l’avons vu, un serveur web est une application qui écoute sur un port précis pour recevoir des requêtes HTTP (les requêtes des navigateurs). Sur votre ordinateur, vous pouvez installer un serveur web pour développer vos sites avant de les mettre en ligne.
Exemple avec Apache
Apache est l’un des serveurs web les plus utilisés. Par défaut, Apache écoute sur le port 80 pour les connexions HTTP. Cela signifie que lorsqu’on tape dans un navigateur l’adresse http://localhost
, le navigateur envoie une requête vers le port 80 de l’ordinateur local.
Comment vérifier ou modifier le port d’Apache ?
Si vous avez installé Apache (seul ou via un package comme XAMPP, MAMP, WAMP), vous pouvez vérifier le port d’écoute dans son fichier de configuration.
Sur la plupart des systèmes, ce fichier s’appelle httpd.conf
et se trouve dans le dossier d’installation d’Apache, par exemple :
- Sous Windows avec XAMPP :
C:\xampp\apache\conf\httpd.conf
- Sous macOS avec MAMP :
/Applications/MAMP/conf/apache/httpd.conf
- Sous Linux :
/etc/apache2/httpd.conf
ou/etc/apache2/apache2.conf
Dans ce fichier, cherchez la ligne qui commence par :
Listen 80
Cela signifie qu’Apache écoute sur le port 80. Si vous souhaitez changer ce port, par exemple en 8080, modifiez la ligne comme ceci :
Listen 8080
Puis sauvegardez et redémarrez le serveur Apache. Ensuite, pour accéder à votre site, vous devrez taper dans votre navigateur :
http://localhost:8080
Exemple avec MySQL
MySQL est un système de gestion de bases de données très utilisé dans le développement web, notamment avec PHP. Il fonctionne aussi avec un port, qui est par défaut le 3306.
Vérifier ou modifier le port MySQL
Le port de MySQL est défini dans son fichier de configuration appelé my.cnf
(Linux/macOS) ou my.ini
(Windows).
- Sur Linux/macOS, ce fichier est souvent dans
/etc/mysql/my.cnf
ou/etc/my.cnf
. - Sur Windows, il peut être dans le dossier d’installation MySQL, par exemple
C:\ProgramData\MySQL\MySQL Server X.Y\my.ini
.
Dans ce fichier, cherchez une section [mysqld]
, puis une ligne qui commence par port=
:
[mysqld]
port=3306
Vous pouvez modifier ce numéro de port si nécessaire, mais faites attention, car il faut ensuite aussi modifier la configuration des applications qui se connectent à MySQL pour utiliser ce nouveau port.
Exemple avec MAMP (Macintosh, Apache, MySQL et PHP)
MAMP est un environnement local très pratique pour macOS (mais aussi disponible sur Windows). Il intègre Apache, MySQL, et PHP prêts à l’emploi.
Par défaut, MAMP configure Apache sur le port 8888 et MySQL sur le port 8889. Cela évite les conflits si vous avez déjà un autre serveur ou base de données qui utilise les ports standards (80 et 3306).
Vérifier ou modifier les ports dans MAMP
Ouvrez l’application MAMP, puis allez dans les préférences (Préférences
> Ports
).
Vous y verrez les ports utilisés pour Apache (serveur web) et MySQL.
Par exemple :
- Apache : 8888
- MySQL : 8889
Si vous voulez utiliser les ports standards, vous pouvez cliquer sur « Réinitialiser les ports à la valeur par défaut » ou modifier manuellement.
Quand vous ouvrez votre navigateur pour tester un site local avec MAMP, il faudra indiquer le port Apache dans l’URL, par exemple :
http://localhost:8888
Pour se connecter à la base MySQL via un client ou un script, vous devrez spécifier le port 8889.
Pourquoi changer le port par défaut ?
Vous vous demandez peut-être pourquoi on changerait les ports par défaut ? Voici quelques raisons :
- Le port par défaut est déjà utilisé par une autre application sur votre machine. Par exemple, si vous avez un autre serveur web en marche, il pourrait utiliser le port 80.
- Pour avoir plusieurs serveurs web sur une même machine, chacun doit utiliser un port différent.
- Parfois, pour des raisons de sécurité, on peut vouloir cacher un service sur un port non standard, bien que ce ne soit pas une méthode de sécurité fiable à elle seule.
- Sur certains réseaux ou ordinateurs, certains ports peuvent être bloqués.
Que se passe-t-il si deux services utilisent le même port ?
C’est une situation qui provoque un conflit. Le système ne peut pas attribuer le même port à deux applications différentes au même moment.
Par exemple, si Apache est configuré pour écouter sur le port 80 et qu’un autre programme (comme Skype ou un autre serveur) utilise déjà ce port, Apache ne pourra pas démarrer correctement. Vous aurez un message d’erreur indiquant que le port est déjà utilisé.
Dans ce cas, il faut soit arrêter l’autre application qui utilise le port, soit changer le port d’écoute d’Apache.
Comment savoir quels ports sont ouverts sur votre ordinateur ?
Pour savoir quels ports sont actuellement utilisés sur votre machine, vous pouvez utiliser des commandes.
- Sous Windows, ouvrez l’invite de commande (cmd) et tapez :
netstat -a -n -o
Cette commande liste tous les ports ouverts et les processus qui les utilisent.
- Sous macOS ou Linux, ouvrez le Terminal et tapez :
sudo lsof -i -P -n | grep LISTEN
Cela affiche la liste des services qui écoutent sur des ports.
Vous savez désormais ce que sont les ports, pourquoi ils sont indispensables, et comment ils sont utilisés dans le cadre du développement web, notamment avec Apache, MySQL, et MAMP. Vous avez aussi appris comment vérifier et modifier ces ports selon vos besoins, ainsi que les problèmes que peuvent poser les conflits de ports.
Sécurité et cas d’usage dans le développement web
1. La sécurité des ports
Nous avons vu que les ports sont comme des portes d’entrée vers votre ordinateur ou votre serveur. Or, toute porte ouverte peut devenir un point faible si elle est mal protégée.
Pourquoi les ports ouverts peuvent poser problème
Quand un port est ouvert et accessible depuis Internet, cela signifie qu’un service derrière ce port est prêt à recevoir des connexions.
Si ce service est mal configuré, obsolète, ou contient une faille de sécurité, un attaquant peut l’exploiter pour accéder à votre machine ou à vos données.

Des formations informatique pour tous !
Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…
Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.
Découvrez mes formations Qui suis-je ?Un pirate peut scanner les ports d’un serveur pour voir lesquels sont ouverts (c’est ce qu’on appelle un scan de ports) et tester différentes méthodes pour entrer.
Les bonnes pratiques de sécurité
Fermer les ports inutilisés
Si un service ne sert pas, il ne devrait pas être accessible. Par exemple, si vous avez un serveur MySQL installé sur un serveur web mais qu’il n’a pas besoin d’être accessible depuis l’extérieur, vous pouvez le configurer pour qu’il n’écoute que sur l’interface locale (127.0.0.1
) et ainsi fermer son port vers Internet.
Utiliser un pare-feu (firewall)
Le pare-feu est comme un vigile qui filtre les connexions entrantes et sortantes.
Sur un serveur, vous pouvez configurer un pare-feu pour n’autoriser que les ports nécessaires, par exemple :
- Port 80 (HTTP) et 443 (HTTPS) pour un site web.
- Port 22 (SSH) pour administrer le serveur à distance.
- Bloquer tous les autres ports.
Sous Linux, des outils comme ufw
(Uncomplicated Firewall) ou iptables
permettent de configurer cela facilement.
Sous Windows, le Pare-feu Windows permet aussi de créer des règles spécifiques pour bloquer ou autoriser des ports.
Mettre à jour régulièrement les services
Même si un port est protégé par un firewall, si le service derrière ce port est vulnérable, il reste une menace. Les mises à jour corrigent souvent des failles de sécurité.
Changer les ports par défaut (avec prudence)
Changer un port ne protège pas réellement (un pirate motivé le trouvera), mais cela peut réduire les attaques automatiques qui ciblent uniquement les ports standards (comme 22, 80, 443, 3306).
Le port forwarding et ses implications en sécurité
Le port forwarding (ou redirection de port) est une technique utilisée pour rendre un service local accessible depuis Internet.
Par exemple, si vous développez un site web sur votre machine locale et que vous voulez le montrer à un client, vous pouvez configurer votre routeur pour rediriger le port 8080 vers votre ordinateur.
Le problème, c’est que cela ouvre une porte directe vers votre machine.
Si votre serveur n’est pas sécurisé, cela peut être risqué. Il est donc recommandé de n’utiliser cette technique que de manière temporaire, et avec un pare-feu et un mot de passe fort.
2. Exemples concrets d’utilisation des ports dans le développement web
Cas n°1 : Développement local avec Apache et MySQL
Vous installez MAMP sur votre Mac. Apache écoute sur le port 8888, MySQL sur le port 8889.
Vous développez un site en PHP qui se connecte à la base MySQL via le port 8889.
Comme vous êtes en local, ces ports ne sont pas accessibles depuis l’extérieur, donc peu de risque.
Cas n°2 : Déploiement en ligne sur un serveur mutualisé
Sur un hébergement mutualisé (OVH, IONOS, Hostinger…), vous ne gérez pas directement les ports.
L’hébergeur laisse ouverts les ports nécessaires (80 et 443 pour votre site, parfois 21 pour FTP).
Le reste est bloqué pour protéger tous les clients.
Vous n’avez pas accès au port 3306 de MySQL depuis Internet, mais vous pouvez vous y connecter via PHP directement sur le serveur.
Cas n°3 : Serveur dédié ou VPS
Sur un VPS, vous avez la main sur tous les ports.
Par exemple :
- Vous laissez ouverts 80 et 443 pour le site web.
- Vous ouvrez 22 pour l’accès SSH, mais vous le limitez à certaines adresses IP.
- Vous fermez complètement le port 3306 de MySQL à l’extérieur pour éviter qu’il soit attaqué.
Ce type de configuration se fait souvent via un firewall (ufw
, iptables
) ou via l’interface de gestion du VPS.
Cas n°4 : Plusieurs serveurs web sur une même machine
Il arrive qu’on ait besoin de faire tourner deux serveurs web (Apache et Nginx, par exemple) sur un même ordinateur pour différents projets.
Comme ils ne peuvent pas utiliser le même port en même temps, on attribue à l’un le port 80, et à l’autre un port différent (par exemple 8080).
Vous pouvez alors accéder au premier site sur http://localhost
et au second sur http://localhost:8080
.
Cas n°5 : Application web avec accès externe à MySQL
Si vous voulez que votre application web sur un autre serveur se connecte directement à une base MySQL, il faut ouvrir le port 3306 sur le serveur qui héberge MySQL.
Mais attention : c’est risqué. Il faut limiter l’accès à des adresses IP précises et protéger la connexion avec un mot de passe fort, ou mieux, utiliser une connexion chiffrée (SSL/TLS).
Points clés à retenir
- Les ports sont essentiels pour faire communiquer les services et applications.
- En développement web, on utilise souvent les ports 80, 443, 3306, 8080, 8888…
- La sécurité passe par la fermeture des ports inutiles, la configuration d’un firewall, et la mise à jour des services.
- Le port forwarding doit être utilisé avec prudence.
- Chaque projet peut nécessiter une configuration spécifique des ports, selon qu’il est en local, en mutualisé ou sur un VPS.
Glossaire des ports importants en développement web : ce qu’il faut retenir
Port 80 — HTTP (HyperText Transfer Protocol)
Le port 80 est le port standard du protocole HTTP, qui est la base de la navigation web non sécurisée.
Quand vous tapez une adresse web sans https (par exemple http://monsite.com
), votre navigateur se connecte par défaut au port 80 du serveur web.
Exemple concret :
Un serveur Apache ou Nginx installé sur un ordinateur ou un serveur distant écoute souvent sur ce port pour recevoir les requêtes web.
Port 443 — HTTPS (HTTP Secure)
Le port 443 est celui utilisé pour le protocole HTTPS, qui est la version sécurisée du HTTP grâce au chiffrement SSL/TLS.
Cela garantit que les échanges entre le navigateur et le serveur sont privés et sécurisés.
Exemple concret :
Tous les sites avec une URL commençant par https://
utilisent ce port. Votre serveur doit donc écouter sur ce port pour gérer les connexions sécurisées.
Port 3306 — MySQL / MariaDB
Le port 3306 est le port par défaut utilisé par les bases de données MySQL et MariaDB.
C’est par ce port que les applications (comme un site PHP) se connectent pour interagir avec la base de données.
Important : Ce port ne doit généralement pas être accessible depuis Internet. Il doit être limité aux connexions locales ou aux IP autorisées pour éviter les intrusions.
Port 21 — FTP (File Transfer Protocol)
Le port 21 est utilisé par le protocole FTP, qui permet de transférer des fichiers entre un client et un serveur.
FTP est souvent utilisé pour envoyer ou récupérer des fichiers sur un serveur web.
Remarque : FTP n’est pas sécurisé car les données (y compris les mots de passe) circulent en clair. Il est recommandé d’utiliser FTPS ou SFTP à la place.
Port 22 — SSH (Secure Shell)
Le port 22 est utilisé pour le protocole SSH, qui permet d’administrer un serveur à distance en ligne de commande, de façon sécurisée.
C’est un port très important pour les développeurs et administrateurs système.
Précaution : Ce port doit être protégé avec un mot de passe fort ou mieux, avec une authentification par clé. Il peut être aussi configuré sur un port non standard pour réduire les attaques automatisées.
Port 25 — SMTP (Simple Mail Transfer Protocol)
Le port 25 sert à envoyer des emails via le protocole SMTP.
Il est utilisé par les serveurs de messagerie pour transmettre les emails entre eux.
Pour l’envoi sécurisé, on utilise souvent les ports 465 ou 587 avec chiffrement.
Port 8080 — HTTP alternatif / Proxy
Le port 8080 est souvent utilisé comme port alternatif pour un serveur web, notamment en développement ou pour un proxy.
Si le port 80 est occupé ou réservé, on peut utiliser le port 8080.
Exemple : Si vous lancez un serveur Apache local sur le port 8080, vous accéderez à votre site via http://localhost:8080
.
Port 8888 et 8889 — Ports MAMP par défaut
MAMP utilise par défaut :
- Le port 8888 pour Apache (serveur web).
- Le port 8889 pour MySQL.
Cela évite les conflits avec d’autres serveurs ou bases de données installés sur votre machine.
Port 3000, 4200, 5000… — Ports pour serveurs de développement modernes
Ces ports sont souvent utilisés par des serveurs de développement pour des frameworks modernes comme Node.js, Angular, React, ou Flask.
Par exemple :
- Le port 3000 est souvent le port par défaut d’un serveur Node.js.
- Le port 4200 est souvent utilisé par Angular CLI.
- Le port 5000 est celui par défaut de Flask (framework Python).
Ces ports sont principalement utilisés en local, pour tester des applications avant déploiement.
Tableau récapitulatif des numéros de port
Voici un tableau résumé des ports importants en développement web, avec leur usage et quelques précisions simples :
Port | Usage principal | Description / Remarques |
---|---|---|
80 | HTTP | Navigation web non sécurisée (site sans https). |
443 | HTTPS | Navigation web sécurisée (chiffrement SSL/TLS). |
3306 | MySQL / MariaDB | Base de données. Accès à limiter (souvent local uniquement). |
21 | FTP | Transfert de fichiers (non sécurisé, mieux vaut FTPS ou SFTP). |
22 | SSH | Administration serveur sécurisée (ligne de commande). |
25 | SMTP | Envoi d’emails (serveurs mail). |
8080 | HTTP alternatif / proxy | Port alternatif pour serveur web, souvent en dev. |
8888 | Apache (MAMP) | Port par défaut serveur web local sous MAMP. |
8889 | MySQL (MAMP) | Port par défaut base de données locale sous MAMP. |
3000 | Serveur Node.js / dev local | Serveur de développement pour Node.js et autres frameworks JS. |
4200 | Serveur Angular CLI / dev local | Serveur de développement pour Angular. |
5000 | Serveur Flask / dev local | Serveur de développement pour Flask (Python). |
Les ports sont des éléments fondamentaux pour la communication entre ordinateurs, et ils jouent un rôle central dans le développement web.
Bien les comprendre, savoir les configurer et les sécuriser vous permettra de :
- Développer et tester vos projets web efficacement en local.
- Déployer vos applications en toute sécurité.
- Protéger vos serveurs et données contre les attaques.
N’oubliez pas que la sécurité passe par la fermeture des ports inutilisés, l’utilisation de pare-feu, et la mise à jour régulière des services.
