> Tech > Examiner le port

Examiner le port

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

Chaque serveur TCP doit se voir attribuer son propre numéro de port. Ce numéro joue un double rôle : il indique comment un client se connecte au serveur et comment il est différencié de tous les autres programmes serveurs qui pourraient s’exécuter sur le même ordinateur.

Les serveurs

Examiner le port

standard qui fonctionnent sur des réseaux TCP/IP utilisent des numéros de ports standard. Par exemple, 21 pour FTP, 22 pour Secure Shell (SSH), 23 pour Telnet, 25 pour SMTP, et 80 pour HTTP. Pour se relier à ces serveurs, on se connecte à leurs numéros de ports. Ainsi, pour envoyer du courriel au moyen du protocole SMTP, le programme doit se connecter au port 25. Plutôt que de coder en dur ces numéros dans vos programmes, je vous conseille de les consulter dans la table de services de votre ordinateur.

La table de services est simplement un fichier que l’on peut utiliser pour consulter un service donné et obtenir le numéro de port correspondant. Attention, cela ne signifie pas que le service est actif sur votre ordinateur ! C’est tout simplement une référence croisée entre le nom lisible en clair et le numéro du port. Vous pouvez consulter interactivement la table de services de votre système à l’aide de la commande WRKSRVTBLE (Work with Service Table Entries).

Votre programme peut utiliser l’API getservbyname() pour consulter des valeurs dans la table de services. Les paramètres de getservbyname() sont au nombre de deux : le service que vous voulez consulter et le protocole que vous utilisez pour ce service. En A de la figure 3, je consulte le service SMTP pour une utilisation avec le protocole TCP.

Si elle réussit, l’API getservbyname() renvoie un pointeur vers une structure de données appelée servent. Elle renvoie *NULL si le service n’a pu être trouvé dans la table de services. Ici, pour les besoins de l’exemple, je me retrouve sur un numéro de port codé en dur si le service SMTP n’a pu être trouvé (en B). De cette manière, l’utilisateur peut changer sa table de services afin que SMTP soit sur un port différent, et mon programme utilise n’importe quel port configuré par l’utilisateur. Toutefois, si l’utilisateur supprime accidentellement le service SMTP de la table de services, mon programme fonctionne quand même.

Téléchargez cette ressource

Guide de Sécurité IA et IoT

Guide de Sécurité IA et IoT

Compte tenu de l'ampleur des changements que l'IA est susceptible d'entraîner, les organisations doivent élaborer une stratégie pour se préparer à adopter et à sécuriser l'IA. Découvrez dans ce Livre blanc Kaspersky quatre stratégies efficaces pour sécuriser l'IA et l'IoT.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010