in ,

Comment scanner les ports ouverts sur un serveur avec Netstat ?

Par défaut, le système d’exploitation Linux gère les 65536 ports. Sur votre plateforme Linux il est préférable de désactiver les services (ou ports) dont vous n’avez pas réellement besoin afin de limiter les attaques possibles. Pour voir les ports actifs et en écoute sur votre serveur nous allons utiliser la commande netstat

La commande netstat est un outil qui permet de connaître les connexions TCP actives sur une machine et de visualiser tous les ports TCP et UDP ouverts sur un ordinateur. Si vous n’avez pas encore netstat sur votre système, consultez comment installer netstat sur Ubuntu.

Cette commande permet aussi d’afficher la table de routage de votre serveur mais aussi d’afficher des statistiques sur un certain nombre de protocoles.

  • Liste des ports ouverts avec le nom du protocole
# netstat --listen --tcp

Exemple de sortie :

Nous voyons bien ici dans la colonne Local Address, les protocoles en écoutent sur le serveur (SSH, MYSQL, HTTP, …)

  • Liste des ports ouverts avec le numéro de port associé
# netstat --listen --tcp –n

Exemple de sortie :

Ici dans la colonne Local Address, le nom du protocole est remplacé par son numéro de port. Pratique pour créer des règles sur le firewall.

Comment lire les résultats de la commande netstat ?

  • Proto : le protocole utilisé. Les classiques TCP et UDP mais également TCP6 et UDP6 pour les variantes IPV6.
  • Recv-Q : Le nombre de Bytes dans la file d’attente de réception. Devrait toujours être à zéro.
  • Send-Q : Le nombre de Bytes dans la file d’attente d’envoi. Devrait toujours être à zéro.
  • Adresse locale : l’adresse et le port utilisé sur la machine locale.
  • Adresse distante : l’adresse et le port utilisé par la machine distante.
  • Etat : LISTEN quand le programme écoute et attend une connexion, ESTABLISHED lorsque la connexion est établie, SYN SNET : le socket essaie de se connecter, SYN RECV : le socket a été fermé, CLOSED : le socket n’est pas utilisé, CLOSE WAIT : l’hôte distant a fermé la connexion, LAST ACK : attente de confirmation de la fermeture de la connexion distante, UNKNOWN: état du socket inconnu.
  • PID/Program name : Le numéro de processus et le nom du programme (si vous utilisez l’option –p vous verrez le programme associé).

Afficher la table de routage.

# netstat -r

Quelques explications sur les champs de la commande retour :

  • Destination : adresse vers laquelle sont destinés les paquets.
  • Gateway : passerelle utilisée, * sinon.
  • Flags : G la route utilise une passerelle, U l’interface est active, H on ne peut joindre qu’un simple hôte par cette route).
  • Iface : interface sur laquelle est positionnée la route.

Vous trouverez plus de détail en utilisant la commande suivante sur l’utilisation de netstat :

# man netstat

What do you think?

23 points
Upvote Downvote

commentaires

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Chargement & hellip;

Memory Mapped IO, périphériques et registres

Comment un écran de téléphone brisé peut-il aider les hacker?