Vous devrez peut-être souvent trouver les noms et numéros de port pour certaines raisons. Si oui, vous avez de la chance. Aujourd'hui, dans ce bref tutoriel, nous allons voir les moyens les plus simples et les plus rapides de trouver le numéro de port d'un service dans le système d'exploitation Linux. Il pourrait y avoir de nombreuses méthodes pour le faire, mais je ne connais les trois méthodes suivantes qu'à l'heure actuelle. Continuez à lire.
Trouver le numéro de port d'un service sous Linux
Méthode 1 - Utilisation de la commande Grep :
Pour trouver le numéro de port par défaut d'un service donné sous Linux à l'aide de la commande grep, exécutez simplement :
$ grep <port> /etc/services
Par exemple, pour trouver le port par défaut d'un service SSH, lancez simplement :
$ grep ssh /etc/services
C'est si simple. Cette commande devrait fonctionner sur la plupart des distributions Linux. Voici l'exemple de sortie de ma boîte de test Arch Linux :
ssh 22/tcp ssh 22/udp ssh 22/sctp sshell 614/tcp sshell 614/udp netconf-ssh 830/tcp netconf-ssh 830/udp sdo-ssh 3897/tcp sdo-ssh 3897/udp netconf-ch-ssh 4334/tcp snmpssh 5161/tcp snmpssh-trap 5162/tcp tl1-ssh 6252/tcp tl1-ssh 6252/udp ssh-mgmt 17235/tcp ssh-mgmt 17235/udp
Comme vous pouvez le voir dans la sortie ci-dessus, le numéro de port par défaut du service SSH est 22.
Trouvons le numéro de port du serveur Web Apache. Pour ce faire, la commande serait :
$ grep http /etc/services # http://www.iana.org/assignments/port-numbers http 80/tcp www www-http # WorldWideWeb HTTP http 80/udp www www-http # HyperText Transfer Protocol http 80/sctp # HyperText Transfer Protocol https 443/tcp # http protocol over TLS/SSL https 443/udp # http protocol over TLS/SSL https 443/sctp # http protocol over TLS/SSL gss-http 488/tcp gss-http 488/udp webcache 8080/tcp http-alt # WWW caching service webcache 8080/udp http-alt # WWW caching service [...]
Qu'en est-il du numéro de port FTP ? C'est facile !
$ grep ftp /etc/services 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 tftp 69/tcp [...]
Méthode 2 - Utilisation de la commande getent
Comme vous pouvez le voir, les commandes ci-dessus affichent tous les noms et numéros de port pour le terme de recherche donné "ssh", "http" et "ftp". Cela signifie que vous obtiendrez une sortie assez longue de tous les noms de port correspondant au terme de recherche donné.
Vous pouvez cependant réduire le résultat à une sortie exacte à l'aide de la commande "getent" comme ci-dessous :
$ getent services ssh ssh 22/tcp
$ getent services http http 80/tcp www www-http
$ getent services ftp ftp 21/tcp
Si vous ne connaissez pas le nom du port mais le numéro de port, remplacez simplement le nom du port par un numéro comme ci-dessous :
$ getent services 80 http 80/tcp
Pour afficher tous les noms et numéros de port, exécutez simplement :
$ getent services
Suggestion de lecture :
- Comment changer le port par défaut d'Apache en un port personnalisé
- Comment changer le port FTP par défaut en un port personnalisé
- Comment changer le port SSH par défaut en un port personnalisé
Méthode 3 - Utilisation de l'utilitaire Whatportis
Le Whatportis est un simple script python utilisé pour trouver les noms et numéros de port. Contrairement aux commandes ci-dessus, cet utilitaire affiche la sortie dans un joli format de colonne tabulaire.
Assurez-vous d'avoir installé le gestionnaire de packages PIP. Sinon, consultez le lien suivant.
- Comment gérer les packages Python à l'aide de Pip
Une fois PIP installé, exécutez la commande suivante pour installer l'utilitaire Whatportis.
$ pip install whatportis
Maintenant, vous pouvez trouver quel port est associé à un service comme indiqué ci-dessous.
$ whatportis ssh
$ whatportis ftp
$ whatportis http
Exemple de sortie de mon serveur CentOS 7 :

Trouver le numéro de port d'un service sous Linux
Si vous ne connaissez pas le nom exact d'un service, utilisez --like drapeau pour afficher les résultats pertinents.
$ whatportis mysql --like
Les commandes ci-dessus vous ont aidé à trouver quel port est associé à un service. Vous pouvez également trouver quel service est associé à un numéro de port comme ci-dessous.
$ whatportis 993
Vous pouvez même afficher les résultats en JSON formater.
$ whatportis 993 --json
Pour plus de détails, consultez le dépôt GitHub.
- Référentiel Whatportis GitHub
Lire connexe :
- Comment trouver quel service écoute sur un port particulier
Et, c'est tout pour le moment. Vous savez maintenant comment trouver les noms et numéros de port sous Linux en utilisant trois méthodes simples. Si vous connaissez d'autres méthodes/commandes, faites-le moi savoir dans la section commentaire ci-dessous. Je vérifierai et mettrai à jour ce guide en conséquence.