SERVICES

Manuel du programmeur Linux (5)
22 mai 2010
 

NOM

services - Liste des services réseau internet  

DESCRIPTION

services est un fichier texte ASCII fournissant une correspondance entre des noms textuels faciles à mémoriser pour les services et les numéros de ports qui leur sont assignés, ainsi que les types de protocoles. Chaque programme en relation avec le réseau peut consulter ce fichier pour obtenir le numéro de port (et le protocole) pour ses services. Les programmes de la bibliothèque C getservent(3), getservbyname(3), getservbyport(3), setservent(3) et endservent(3) permettent d'effectuer des requêtes dans ce fichier à partir de programmes.

Les numéros de ports sont assignés par l'IANA (Internet Assigned Numbers Authority), et la politique actuelle est, lors de l'assignation d'un numéro de port, d'assigner à la fois les protocoles TCP et UDP. En conséquence, la plupart des entrées sont en double, même pour les services qui n'existent qu'en TCP.

Les numéros de ports inférieurs à 1024 (encore appelés ports « bas » (low numbered)) ne peuvent être liés que par le superutilisateur (consultez bind(2), tcp(7) et udp(7)). De cette manière, les clients qui se connectent à ces ports peuvent être certains que le service qui tourne sur le port est conforme à son implémentation standard et non pas un service pirate lancé par un utilisateur de la machine. Les numéros de ports habituels, spécifiés par l'IANA, sont normalement placés dans cet endroit réservé au superutilisateur.

La présence dans le fichier services d'une entrée pour un service ne signifie pas forcément que ce service est actuellement actif sur la machine. Consultez inetd.conf(5) pour la configuration des services Internet offerts. Notez que tous les services réseau ne sont pas démarrés par inetd(8), et qu'ils n'apparaîtront donc pas dans inetd.conf(5). En particulier, les serveurs de nouvelles (NNTP) et de courrier électronique (SMTP) sont souvent initialisés depuis les scripts d'initialisation du système.

L'emplacement du fichier services est défini par _PATH_SERVICES dans <netdb.h>. Il est habituellement défini à /etc/services

Chaque ligne décrit un service, elle est de la forme :

nom_de_service   port/protocole   [alias ...]
où :
nom_de_service
est le nom facilement compréhensible par lequel ce service est connu et recherché. Il est sensible à la casse. Souvent, le programme client est appelé du même nom que nom_de_service
port
est le numéro de port (en décimal) à utiliser pour ce service.
protocole
est le type de protocole utilisé. Ce champ doit correspondre à une entrée du fichier protocols(5). Des valeurs typiques sont tcp et udp.
alias
est une liste optionnelle des autres noms pour ce service, séparés par un espace ou un caractère de tabulation. Là encore, les noms sont sensibles à la casse.

Les champs sont séparés soit par des espaces soit par des tabulations.

Les commentaires débutent par un signe « # » et se poursuivent jusqu'à la fin de la ligne. Les lignes vierges sont ignorées.

Comme les espaces de tête ne sont pas éliminés, le nom_de_service doit commencer à la première colonne du fichier. nom_de_service peut comporter n'importe quel caractère imprimable à l'exclusion des caractères d'espacement et de tabulation. Cependant, un nombre restreint de caractères devrait être utilisé afin de minimiser les problèmes de compatibilité. Par ex., a-z, 0-9 et le tiret (-) semble être un choix raisonnable.

Les lignes qui ne correspondent pas à ce format ne devraient pas se trouver dans ce fichier. (Actuellement, elle sont ignorées silencieusement par getservent(3), getservbyname(3) et getservbyport(3). Ce comportement n'est cependant pas garanti).

Ce fichier peut être diffusé sur le réseau, en utilisant un service de noms valable pour l'ensemble du réseau tel que « Yellow Pages/NIS » ou « BIND/Hesiod ».

Un exemple de fichier services pourrait ressembler à ceci :


netstat         15/tcp
qotd            17/tcp          quote
msp             18/tcp          # protocole d'envoi de message
msp             18/udp          # protocole d'envoi de message
chargen         19/tcp          source ttytst
chargen         19/udp          source ttytst
ftp             21/tcp
# 22 - non assigné
telnet          23/tcp
 

FICHIERS

/etc/services
Liste des services réseau Internet
<netdb.h>
Définition de _PATH_SERVICES
 

VOIR AUSSI

listen(2), endservent(3), getservbyname(3), getservbyport(3), getservent(3), setservent(3), inetd.conf(5), protocols(5), inetd(8)

Numéros de RFC assignés, la plus récente est la RFC 1700 (STD0002).  

COLOPHON

Cette page fait partie de la publication 3.66 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.  

TRADUCTION

Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Jean-Luc Coulon et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».


 

Index

NOM
DESCRIPTION
FICHIERS
VOIR AUSSI
COLOPHON
TRADUCTION

This document was created by man2html, using the manual pages.
Time: 21:52:43 GMT, July 12, 2014