Provided by: manpages-fr_4.26.0-1_all 

NOM
nsswitch.conf - Fichier de configuration du service de noms (« Name Service Switch »)
DESCRIPTION
Le fichier de configuration du service de noms (« Name Service Switch » ou NSS), /etc/nsswitch.conf, est
utilisé par la bibliothèque C de GNU et d’autres applications pour déterminer les sources à partir
desquelles obtenir les renseignements de service de noms en fonction des catégories et dans quel ordre.
Chaque catégorie de renseignement est identifiée par un nom de base de données.
Le fichier est en texte ASCII, avec les colonnes séparées par des espaces ou des tabulations. La première
colonne indique le nom de la base de données. Les autres colonnes décrivent les sources, dans l'ordre des
requêtes à réaliser, et un ensemble limité d'actions possibles en fonction du résultat de la résolution.
Les bases de données suivantes sont comprises par la bibliothèque C de GNU :
aliases Alias d'adresses électroniques, utilisés par getaliasent(3) et les fonctions apparentées.
ethers Numéros Ethernet.
group Groupes d'utilisateurs, utilisés par getgrent(3) et les fonctions apparentées.
hosts Noms d'hôtes et leurs adresses, utilisés par gethostbyname(3) et les fonctions apparentées.
initgroups Liste d'accès à des groupes supplémentaires utilisée par la fonction getgrouplist(3).
netgroup Liste d'hôtes et d'utilisateurs valable pour l'ensemble du réseau, servant à établir les
règles d'accès. Les bibliothèques C antérieures à la glibc 2.1 ne géraient les groupes réseau
qu'avec NIS.
networks Noms et masques de réseau, utilisés par getnetent(3) et les fonctions apparentées.
passwd Mots de passe des utilisateurs, utilisés par getpwent(3) et les fonctions apparentées.
protocols Protocoles réseau, utilisés par getprotoent(3) et les fonctions apparentées.
publickey Clés publiques et privées des « secure_RPC », utilisées par NFS et NIS+.
rpc Noms et numéros de RPC, utilisés par getrpcbyname(3) et les fonctions apparentées.
services Services réseau, utilisés par getservent(3) et les fonctions apparentées.
shadow Mots de passe cachés des utilisateurs utilisés par getspnam(3) et les fonctions apparentées.
La bibliothèque GNU C ignore les bases de données avec des noms inconnus. Certaines applications
utilisent cela pour mettre en œuvre une gestion spéciale pour leur propre base de données. Par exemple,
sudo(8) consulte la base de données sudoers. La délégation d’ID utilisateur/groupe subalternes peut être
configurée en utilisant la base de données subid. Consulter subuid(5) et subgid(5) pour plus de détails.
Voici un exemple de fichier /etc/nsswitch.conf :
passwd: compat
group: compat
shadow: compat
hosts: dns [!UNAVAIL=return] files
networks: nis [NOTFOUND=return] files
ethers: nis [NOTFOUND=return] files
protocols: nis [NOTFOUND=return] files
rpc: nis [NOTFOUND=return] files
services: nis [NOTFOUND=return] files
La première colonne est le nom de la base de données. Les autres colonnes indiquent :
- une ou plusieurs spécifications de service, par exemple « files », « db » ou « nis ». L'ordre des
services sur la ligne indique l'ordre dans lequel les requêtes seront réalisées sur ces services, tour
à tour, jusqu'à ce qu'un résultat soit obtenu ;
- des actions facultatives à réaliser si un résultat particulier est obtenu du service précédent, par
exemple « [NOTFOUND=return] ».
Les spécifications de service prises en charge sur le système dépendent de la présence de bibliothèques
partagées, et sont par conséquent évolutives. Les bibliothèques appelées /lib/libnss_SERVICE.so.X
fourniront le SERVICE indiqué. Sur une installation de base, « files », « db », « nis » et « nisplus »
sont utilisables. Pour la base de données hosts, « dns » peut aussi être indiqué. Pour les bases de
données passwd, group et shadow, « compat » peut aussi être indiqué (consulter Mode de compatibilité
ci-dessous). Le numéro de version X peut être 1 pour la glibc 2.0 ou 2 pour la glibc 2.1 et les versions
ultérieures. Sur les systèmes avec des bibliothèques supplémentaires installées, d'autres services
peuvent être disponibles comme « hesiod », « ldap », « winbind » et « wins ».
Une action peut aussi être indiquée après une spécification de service. L'action modifie le comportement
après un résultat obtenu de la source de données précédente. Les actions sont désignées sous la forme
générale :
[ÉTAT=ACTION]
[!ÉTAT=ACTION]
où
ÉTAT => success | notfound | unavail | tryagain
ACTION => return | continue | merge
Le ! inverse le résultat du test, en correspondant à tous les résultats possibles sauf celui indiqué. La
casse des mots-clés n'est pas importante.
La valeur ÉTAT est comparée au résultat de la fonction de résolution appelée par la spécification de
service précédente et fait partie des valeurs suivantes.
success Aucune erreur ne s'est produite, et la donnée demandée a été trouvée. L'action par défaut
pour cette condition est « return ».
notfound La résolution a réussi, mais la donnée demandée n'a pas été trouvée. L'action par défaut
pour cette condition est « continue ».
unavail Le service est indisponible de manière permanente. Cela peut indiquer que le fichier
nécessaire n'est pas lisible, ou, pour les services réseau, que le serveur n'est pas
disponible ou n'accepte pas les requêtes. L'action par défaut pour cette condition est
« continue ».
tryagain Le service est temporairement indisponible. Cela signifie qu'un fichier est verrouillé ou
qu'un serveur ne peut pas actuellement accepter davantage de connexions. L'action par
défaut pour cette condition est « continue ».
La valeur ACTION fait partie des valeurs suivantes.
return Renvoyer un résultat maintenant. Ne pas appeler d'autre fonction de résolution.
Cependant, pour des raisons de compatibilité, si c'est l'action sélectionnée pour la base
de données group et l'état notfound, et que le fichier de configuration ne contient pas
la ligne initgroups, la fonction de résolution suivante est toujours appelée sans
affecter le résultat de recherche.
continue Appeler la fonction de résolution suivante.
merge [SUCCESS=merge] est utilisé entre deux enregistrements de base de données. Quand un
groupe est situé dans le premier des deux enregistrements de groupe, le traitement
continue dans le groupe suivant. Si le groupe est aussi trouvé dans l’enregistrement
suivant (et que le nom de groupe et le GID correspondent exactement), la liste de membres
du second enregistrement est ajoutée à l’objet de groupe à renvoyer. Disponible depuis la
glibc 2.24. Il est à remarquer que la fusion ne sera pas faite pour getgrent(3) et que
les membres dupliqués ne seront pas supprimés quand ils apparaissent dans les deux
enregistrements fusionnés.
Mode de compatibilité (compat)
Le service NSS « compat » ressemble à « files », à la différence qu'il utilise en plus des entrées
particulières de /etc/passwd pour permettre aux utilisateurs ou membres de groupes réseau d'accéder au
système. Les entrées suivantes sont valables dans ce mode.
Pour les bases de données passwd et shadow :
+utilisateur
Inclure l'utilisateur indiqué depuis la carte passwd/shadow NIS.
+utilisateur::::::
Inclure l'utilisateur indiqué depuis la carte passwd NIS, mais redéfinir avec des
champs passwd non vides.
+@groupe_réseau
Inclure tous les utilisateurs du groupe_réseau donné.
-utilisateur
Exclure l'utilisateur indiqué de la carte passwd/shadow NIS.
-@groupe_réseau
Exclure tous les utilisateurs du groupe_réseau donné.
+ Inclure tous les utilisateurs, sauf ceux exclus précédemment, depuis la carte
passwd/shadow NIS.
Pour la base de données group :
+groupe Inclure le groupe indiqué depuis la carte group NIS.
-groupe Exclure le groupe indiqué de la carte group NIS.
+ Inclure tous les utilisateurs, sauf ceux exclus précédemment, depuis la carte group
NIS.
La source est « nis » par défaut, mais cela peut être écrasé en indiquant n’importe quel service NSS
excepté « compat » comme source des pseudobases de données passwd_compat, group_compat et shadow_compat.
FICHIERS
Un service appelé SERVICE est implémenté par une bibliothèque objet partagée appelée libnss_SERVICE.so.X
qui se trouve dans /lib.
/etc/nsswitch.conf fichier de configuration de NSS.
/lib/libnss_compat.so.X implémente la source « compat ».
/lib/libnss_db.so.X implémente la source « db ».
/lib/libnss_dns.so.X implémente la source « dns ».
/lib/libnss_files.so.X implémente la source « files ».
/lib/libnss_hesiod.so.X implémente la source « hesoid ».
/lib/libnss_nis.so.X implémente la source « nis ».
/lib/libnss_nisplus.so.X implémente la source « nisplus ».
Les fichiers suivants sont lus quand la source « files » est spécifiée pour leurs bases de données
respectives :
aliases /etc/aliases
ethers /etc/ethers
group /etc/group
hosts /etc/hosts
initgroups /etc/group
netgroup /etc/netgroup
networks /etc/networks
passwd /etc/passwd
protocols /etc/protocols
publickey /etc/publickey
rpc /etc/rpc
services /etc/services
shadow /etc/shadow
NOTES
À partir de la glibc 2.33, nsswitch.conf est automatiquement rechargé si le fichier est modifié. Dans les
versions précédentes, le fichier n'était lu en entier qu'une seule fois dans chaque processus. Si le
fichier était modifié par la suite, le processus continuait d'utiliser l'ancienne configuration.
À l'origine, il n'y avait qu'une seule source pour les renseignements de service, souvent sous forme d'un
simple fichier de configuration (par exemple, /etc/passwd). Cependant, puisque d'autres services de noms,
comme NIS (« Network Information Service ») et DNS (« Domain Name Service ») étaient devenus populaires,
une méthode plus flexible était devenue nécessaire pour corriger les ordres de recherche codés dans la
bibliothèque C. Le mécanisme NSS (« Name Service Switch »), qui était basé sur le mécanisme utilisé par
Sun Microsystems dans la bibliothèque C de Solaris 2, a introduit une solution plus propre au problème.
VOIR AUSSI
getent(1), nss(5)
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>, David Prévot
<david@tilapin.org> et Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License
version 3 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.
Pages du manuel de Linux 6.9.1 2 mai 2024 nsswitch.conf(5)