Vous avez une perte de mémoire et vous ne savez plus à quel numéro de port appartient un service (SSH, HTTP, SMTP, ...) ? Ou l'inverse ? Au lieu de faire une recherche sur votre moteur préféré, utilisez une simple ligne de commande sur Linux pour obtenir le bon résultat.

Plusieurs méthodes existent pour obtenir le nom d'un service à partir d'un numéro de port, ou l'inverse. Parmi elles, il y en a deux extrêmement simples et disponibles tout le temps. Il vous suffit d'être sur une machine Linux.

Pour obtenir le numéro de port d'un service, utilisez cette commande :

grep <numéro du port> /etc/services

Pour le service SSH, cela donne :

grep ssh /etc/services

La commande fonctionne également à l'inverse, à savoir obtenir le nom d'un service à partir du numéro du port :

grep 80 /etc/services

La deuxième méthode est similaire à ce que l'on a vu. Cependant, au lieu de parcourir le fichier /etc/services à l'aide de grep, l'obtention des informations souhaitées se fait avec la commande getent. Elle permet de lire les entrées d'une base de données administratives. Plusieurs entrées sont disponibles : hosts, group, networks, protocols, services, etc... Celui qui va nous intéresser est donc "services".

getent services ssh

On peut également inverser le nom du service par le numéro de port :

getent services 80