services(5)

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          # message send protocol
    msp             18/udp          # message send protocol
    chargen         19/tcp          ttytst source
    chargen         19/udp          ttytst source
    ftp             21/tcp
    # 22 - unassigned
    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).

TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>, François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas Huriaux <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier <barbier@debian.org> et David Prévot <david@tilapin.org>

Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 (https://www.gnu.org/licenses/gpl-3.0.html) concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.