Recherche de site Web

Comment connaître la liste de tous les ports ouverts sous Linux


Dans cet article, nous parlerons brièvement des ports dans les réseaux informatiques et verrons comment vous pouvez répertorier tous les ports ouverts sous Linux.

Dans les réseaux informatiques, et plus précisément en termes logiciels, un port est une entité logique qui agit comme un point final de communication pour identifier une application ou un processus donné sur un système d'exploitation Linux. Il s'agit d'un nombre de 16 bits (0 à 65535) qui différencie une application d'une autre sur les systèmes finaux.

Les deux protocoles de transport Internet les plus populaires, le Transmission Control Protocol (TCP) et le User Datagram Protocol (UDP). et d'autres protocoles moins connus utilisent des numéros de port pour les sessions de communication (numéros de port source et de destination en conjonction avec les adresses IP source et de destination).

De plus, une combinaison d'une adresse IP, d'un port et d'un protocole tel que TCP/UDP est appelée socket, et chaque service doit avoir un socket unique.

Voici les différentes catégories de ports :

  1. 0-1023 – les ports les plus connus, également appelés ports système.
  2. 1024-49151 – les ports enregistrés, également appelés ports utilisateur.
  3. 49152-65535 – les ports dynamiques, également appelés ports privés.

Vous pouvez afficher une liste de différentes applications et combinaisons port/protocole dans le fichier /etc/services sous Linux à l'aide de la commande cat :

cat /etc/services 
OR
cat /etc/services | less
/etc/services:
$Id: services,v 1.48 2009/11/11 14:32:31 ovasik Exp $
#
Network services, Internet style
IANA services version: last updated 2009-11-10
#
Note that it is presently the policy of IANA to assign a single well-known
port number for both TCP and UDP; hence, most entries here have two entries
even if the protocol doesn't support UDP operations.
Updated from RFC 1700, ``Assigned Numbers'' (October 1994).  Not all ports
are included, only the more common ones.
#
The latest IANA port assignments can be gotten from
      http://www.iana.org/assignments/port-numbers
The Well Known Ports are those from 0 through 1023.
The Registered Ports are those from 1024 through 49151
The Dynamic and/or Private Ports are those from 49152 through 65535
#
Each line describes one service, and is of the form:
#
service-name  port/protocol  [aliases ...]   [# comment]

tcpmux          1/tcp                           # TCP port service multiplexer
tcpmux          1/udp                           # TCP port service multiplexer
rje             5/tcp                           # Remote Job Entry
rje             5/udp                           # Remote Job Entry
echo            7/tcp
echo            7/udp
discard         9/tcp           sink null
discard         9/udp           sink null
systat          11/tcp          users
systat          11/udp          users
daytime         13/tcp
daytime         13/udp
qotd            17/tcp          quote
qotd            17/udp          quote
msp             18/tcp                          # message send protocol
msp             18/udp                          # message send protocol
chargen         19/tcp          ttytst source
chargen         19/udp          ttytst source
ftp-data        20/tcp
ftp-data        20/udp
21 is registered to ftp, but also used by fsp
ftp             21/tcp
ftp             21/udp          fsp fspd
ssh             22/tcp                          # The Secure Shell (SSH) Protocol
ssh             22/udp                          # The Secure Shell (SSH) Protocol
telnet          23/tcp
telnet          23/udp

Pour répertorier tous les ports ouverts ou actuellement en cours d'exécution, y compris TCP et UDP sous Linux, nous utiliserons netstat, un outil puissant de surveillance des connexions réseau et des statistiques.

$ netstat -lntu

Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 :::80                       :::*                        LISTEN      
tcp        0      0 :::25                       :::*                        LISTEN      
udp        0      0 0.0.0.0:68                  0.0.0.0:*                               

Où,

  1. -l – imprime uniquement les sockets d'écoute
  2. -n – affiche le numéro de port
  3. -t – permet la liste des ports TCP
  4. -u – active la liste des ports UDP

Vous pouvez également utiliser la commande ss, un utilitaire utile bien connu pour examiner les sockets dans un système Linux. Exécutez la commande ci-dessous pour répertorier tous vos ports TCP et UCP ouverts :

$ ss -lntu

Netid State      Recv-Q Send-Q               Local Address:Port       Peer Address:Port 
udp   UNCONN     0      0                    *:68                     *:*     
tcp   LISTEN     0      128                  :::22                    :::*     
tcp   LISTEN     0      128                  *:22                     *:*     
tcp   LISTEN     0      50                   *:3306                   *:*     
tcp   LISTEN     0      128                  :::80                    ::*     
tcp   LISTEN     0      100                  :::25                    :::*     
tcp   LISTEN     0      100                  *:25  

Assurez-vous de lire les pages de manuel des commandes ci-dessus pour plus d'informations sur l'utilisation.

En résumé, comprendre le concept de ports dans les réseaux informatiques est essentiel pour les administrateurs système et réseau. Vous pouvez également parcourir ce guide netstat avec des exemples simples, précis et bien expliqués.

Enfin, contactez-nous en partageant d'autres méthodes pour répertorier les ports ouverts sous Linux ou en posant une question via le formulaire de réponse ci-dessous.