Dans le modèle OSI et TCP/IP et dans l’établissement d’une connexion réseau, on trouve la notion de port réseau.
Cela permet à plusieurs applications d’effectuer plusieurs connexions vers différentes ou vers une même machine distante.
Dans cet article, vous verrez ce qu’est un port réseau ainsi que la liste des ports réseaux avec les services réseaux correspondants.
Table des matières
Qu’est-ce qu’un port réseau ?
Dans le protocole TCP et UDP, un port réseau est un peu comme une porte à laquelle l’application d’un équipement se connecte à un autre équipement distant par le réseau.
Lorsqu’un équipement se connecter à un autre distant :
- Il ouvre un port réseau sur la machine, on parle de port local.
- Puis il se connecte au port d’un équipement distant, on parle alors de port distant.
Quand il s’agit d’une connexion entrant, on inverse, le port local devient le port distant et le port distant est le port local.
Enfin notez que la notion de local et distant s’applique aussi sur l’adresse IP.
Ainsi dans le cadre du protocole Internet, un port est associé à une adresse IP de l’hôte, ainsi qu’au type de protocole utilisé pour la communication.
Un port spécifique est identifié par :
- son numéro, communément appelé numéro de port,
- l’adresse IP à laquelle il est associé,
- et le protocole utilisé pour la communication (TCP ou UDP)
Chaque machine possède 65 536 ports distincts.
Pour plus de détails, lire la page :
La notation des ports réseaux
Les ports sont des numéros qui correspondent en général à un service applicatifs réseaux spécifiques.
Par exemple, le port 80 et 443 correspondent à HTTP et HTTPS.
Le port 22 est pour le SSH, etc.
Le port étant lié à une adresse IP, il est séparé par le caractère :
Ainsi par exemple, 172.217.22.131:443 correspondent à l’adresse 172.217.22.131 sur le port 443.
On retrouve cette notation assez fréquemment.
Par exemple, la commande netstat retourne l’IP avec le port séparé par :.
On trouve aussi l’état de connexions et donc du port, voir le paragraphe suivant.
A lire
Une autre notation pour les ports est aussi utilisés qui indique s’il s’agit d’un port local ou distant :
- dport (dpt) pour port de destination
- sport (spt) pour source port
Iptables utilise beaucoup celle-ci que ce soit dans les règles ou dans le journal.
Voici un extrait de logs iptables avec dport et sport. Comme on a la direction sur l’interface (ici IN), on sait alors quel est le port local ou distant.
Les états des ports
Les états des ports sont liés à l’état de la connexion.
On distingue ainsi plusieurs états d’un port réseau :
- Port Ouvert : une application a ouvert le port et ce dernier est en écoute. Un client peut alors se connecter à ce port.
- Port Fermé : Aucune application n’est en écoute sur ce port. Lorsque vous vous connectez à ce port, le système émet une réponse. Notez que cela donne une information sur la cible.
- Port Filtré : Une application réseau, dans la majorité des cas un pare-feu / firewall, filtre l’accès sur le port. Ainsi, vous n’êtes pas capable de déterminer si le port est ouvert ou fermé puisque la connexion est bloquée avant l’accès à ce dernier.
- Port non filtré : Le port est accessible mais le programme qui émet la connexion n’est pas capable de déterminer si le port est état ouvert ou fermé.
Ainsi lorsqu’une application accepte des connexions, ce qui est le cas d’une application serveur (comme un serveur WEB ou un serveur SSH).
Elle ouvre un port en écoute.
Les connexions sont alors acceptés vers ce port et l’application répond.
Ainsi cela a des conséquences en matière de sécurité réseaux.
Notamment, il est possible d’effectuer un scan de ports afin de trouver les applications en cours de connexion sur une machine cible.
On peut alors déterminer la version de l’application et chercher des vulnérabilités et failles logicielles.
C’est donc un moyen de s’introduire et pirater un système informatique.
Se reporter à l’article :
Les intervalles de ports par défaut
On distingue trois intervalles de ports distincts définis par Internet Assigned Numbers Authority (IANA) :
- Les ports de 0 à 1 023 sont essentiellement utilisés par des services et applications réseaux. Par exemple SSH, HTTP, SMTP etc. Sur Linux, l’ouverture de cette plage de ports nécessite les droit root
- Les ports de 1 024 à 49 151 peuvent être enregistrés à IANA pour une application réseaux. Mais ils sont souvent utilisés comme port local afin d’effectuer une connexion distante. En général, ces derniers sont entre 1024 et 5000.
- Les ports de 49 152 à 65 535 sont des ports dynamiques pour les requêtes TCP ou UDP
A noter que sur Windows, vous pouvez afficher l’intervalle des ports dynamiques TCP et UDP.
Cela se fait avec la commande netsh depuis l’invite de commandes :
netsh int ipv4 show dynamicport tcp
netsh int ipv4 show dynamicport udp
netsh int ipv6 show dynamicport tcp
netsh int ipv6 show dynamicport udp
Enfin on peut modifier cet intervalle de cette manière :
netsh int ipv4 set dynamicport tcp start=10000 num=1000
Comment connaitre les ports ouverts sur Windows ou Linux
Le site fournit deux tutoriels pour vous donner les étapes afin de connaître la liste des ports ouverts et en écoute dans le système :
Liste des ports réseaux de connexion
Voici les principaux services réseaux avec la liste des ports.
Ainsi par convention, des services applicatifs réseaux utilisent des ports bien définis. On peut alors parler de ports standards.
Par exemple, pour le HTTP, c’est le port 80 et HTTPS 443.
Que vous installez Apache2 ou Nginx comme serveur WEB, il utilisera ces ports par défaut.
De même pour les MTA, que vous utilisez Postfix, Exim ou Exchange, ils utilisent les ports standards des protocoles SMTP et POP3.
Puis vient les applications réseaux spécifiques, comme un logiciel de sauvegarde, de prise en main à distance, un serveur de jeux ou une console d’administration qui utilise son propre port.
Par exemple, BatteNet utilise le port 1119, Syslog peut utiliser le port 514, etc.
En général, les éditeurs utilisent un port libre non utilisé par des services réseaux et internet standard.
Cette infographique reprend la liste des ports réseaux communs avec les services qui correspondent.
Et la même liste des ports communs avec ce tableau.
Numéro de port | Services réseaux |
20 | File Transfer Protocol (FTP) Data Transfer |
21 | File Transfer Protocol (FTP) Command Control |
22 | Secure Shell (SSH) |
23 | Telnet – Remote login service |
25 | Simple Mail Transfer Protocol (SMTP) E-mail Routing |
53 | Domain Name System (DNS) service |
67 | Dynamic Host Configuration Protocol (DHCP) Bootstrap Protocol (BOOTP) en serveur |
68 | Dynamic Host Configuration Protocol (DHCP) Bootstrap Protocol (BOOTP) en client |
80 | Hypertext Transfer Protocol (HTTP) |
110 | Post Office Protocol (POP3) |
119 | Network News Transfer Protocol (NNTP) |
123 | Network Time Protocol (NTP) |
135 | Microsoft EPMAP (End Point Mapper), also known as DCE/RPC Locator service58 or MS-RPC59, used to remotely manage services including DHCP server, DNS server and WINS. Also used by DCOM |
137 | NetBIOS Name Service, used for name registration and resolution |
138 | NetBIOS Datagram Service |
139 | NetBIOS Session Service |
143 | Internet Message Access Protocol (IMAP) |
161 | Simple Network Management Protocol (SNMP) |
194 | Internet Relay Chat (IRC) |
443 | HTTP Secure (HTTPS) – HTTP over TLS/SSL |
445 | Microsoft-DS SMB file sharing |
465 | SMTP :over SSL/TLS |
500 | Internet Security Association and Key Management Protocol (ISAKMP) / Internet Key Exchange (IKE) |
530 | Remote procedure call (RPC) |
587 | Soumission SMTP (SSMTP) |
853 | DNS over TLS |
873 | rsync file synchronization protocol |
989 | FTPS Protocol (data), FTP over TLS/SSL |
990 | FTPS Protocol (control), FTP over TLS/SSL |
993 | IMAP over SSL/TLS |
995 | POP 3 over SSL/TLS |
1080 | SOCKS |
1194 | OpenVPN |
1293 | IPSec |
1521 | Listener Oracle Database |
3128 | Utilisé par les proxys |
5900 | Virtual Network Computing (VNC) |
5938 | TeamViewer remote desktop protocol |
8080 | Port WEB alternatif |
6665–6669 | Internet Relay Chat (IRC) |
6881–6887 6889–6890 6891–6900 6901 6902–6968 6969 6970–6999 | BiTTorrent – Cela dépend du client Bittorrent |
A noter que les systèmes d’exploitations embarquent un fichier services qui permet de faire la correspondance entre les ports et services.
C’est pour cela que parfois, au lieu d’avoir le numéro du port, on a le nom du service à la place.
- Dans Windows : C:\Windows\System32\drivers\etc\services
- Dans Linux : /etc/services
Enfin Wikipedia propose une liste beaucoup plus complètes : Liste des ports réseaux
Liens
- Port ouvert : sécurité, intrusion et piratage
- Scan de ports réseaux ou balayage de ports
- Transfert de ports et forward de ports
- Comment afficher et fermer les fichiers ouverts dans le partage Windows
- Liste des ports réseaux de connexion et fonctionnement
- Lister les connexions réseau sur Windows
- Comment vérifier si un port est ouvert ou utilisé sur Windows
- Le Browser Port Scan : comment le bloquer et s’en protéger
- Comment lister les ports ouverts sur Windows