GNU/Linux >> Tutoriels Linux >  >> Linux

Comment trouver le numéro de port d'un service sous Linux

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.


Linux
  1. Comment savoir si le disque est un SSD ou un disque dur sous Linux

  2. Comment diriger les résultats de 'find' vers mv sous Linux

  3. Comment puis-je trouver le nombre d'utilisateurs en ligne sous Linux ?

  4. Comment puis-je compter le nombre de dossiers dans un lecteur sous Linux ?

  5. Comment trouver l'adresse IP de la passerelle sous Linux

Comment trouver une adresse IP sous Linux

Comment trouver le nom d'hôte sous Linux

Comment trouver la taille totale d'un répertoire sous Linux

Comment rechercher des fichiers avec la commande fd sous Linux

Comment envoyer un ping à un numéro de port sous Linux

Comment trouver la liste des référentiels installés sous Linux