Table des matières
- 00 Aperçu
- 01 Informations utilisatuers et groupes
- 02 Résolution des noms réseau
- 03 Services et protocoles réseau
- 04 Groupes réseau
00 Aperçu
Le fichier nsswitch.conf est la "table de routage de résolution de noms" du système Linux. Il agit comme un dispatcheur central, définissant l'ordre de recherche et les sources de données que le système doit suivre lors de la recherche de divers types d'informations.
- Chaîne de recherche: Pour chaque type d'information (comme les utilisateurs ou les noms d'hôtes), une séquence de sources de données est configurée.
- Exécution séquentielle: Lorsqu'une recherche est nécessaire, le système suit strictemant l'ordre configuré de gauche à droite, en essayant chaque source de données successivement.
- Basculent en cas d'échec: Si une source de données échoue à répondre ou ne trouve pas de résultat, le système bascule automatiquement vers la source suivante pour continuer la recherche, jusqu'à ce que le résultat soit trouvé ou que toutes les sources aient été épuisées.
01 Informations utilisateurs et groupes
utilisateurs: fichiers systemd
groupes: fichiers systemd
motsdepasse: fichiers systemd
groupesmdp: fichiers systemd
- utilisateurs: Informations sur les comptes utilisateurs (nom d'utilisateur, UID, répertoire personnel, etc.).
- groupes: Informations sur les groupes d'utilisateurs (nom de groupe, GID, membres du groupe, etc.).
- motsdepasse: Informations sur les mots de passe des utilisateurs (chiffrées).
- groupesmdp: Informations sur les mots de passe des groupes.
- fichiers: Fait référence aux fichiers locaux, c'est-à-dire /etc/passwd, /etc/group, /etc/shadow, /etc/gshadow.
- systemd: Fait référence à la fonctionnalité d'utilisateurs dynamiques de systemd. Principalement utilisée pour créer des utilisateurs temporaires et non privilégiés pour l'exécution de services, plutôt que pour des utilisateurs humains se connectant au système.
- Explication de la stratégie: Lorsque le système doit valider un utilisateur ou un groupe, il consulte d'abord les fichiers locaux comme /etc/passwd. Si l'utilisateur n'est pas trouvé (par exemple, lors de la recherche d'un utilisateur créé dynamiquement par systemd), le système interrogera ensuite systemd.
02 Résolution des noms réseau
machines: fichiers dns
reseaux: fichiers
- Explication de la stratégie: Lorsque vous utilisez ping ou ssh pour vous connecter à un nom d'hôte, le système procède comme suit: Il consulte d'abord le fichier local /etc/hosts. Si aucune entrée n'est trouvée dans /etc/hosts, le système utilise DNS pour effectuer la requête. Il s'agit d'une stratégie d'optimisation et de sécurité courante, permettant de stocker dans /etc/hosts les adresses fréquemment utilisées ou nécessitant un dépassement (comme localhost ou des serveurs internes), évitant ainsi des requêtes DNS inutiles.
03 Services et protocoles réseau
protocoles: db fichiers
services: db fichiers
ethers: db fichiers
rpc: db fichiers
- services: Mappage entre les noms de services réseau et les numéros de port (par exemple ssh -> 22).
- protocoles: Mappage entre les noms de protocoles réseau et les numéros (par exemple tcp -> 6).
- ethers: Mappage entre les adresses MAC Ethernet et les noms d'hôtes.
- rpc: Mappage entre les numéros de programme RPC (Appel de Procédure Distante) et les noms.
- db: Fait référence aux fichiers de base de données dans le répertoire /var/db. Ces fichiers sont générés par nscd (démon de cache de service de noms) et servent de cache aux fichiers originaux pour accélérer les recherches.
- fichiers: Fait référence aux fichiers originaux locaux, tels que /etc/services, /etc/protocols, etc.
- Explication de la stratégie: Lorsqu'un programme doit connaître le port utilisé par le service ssh, il procède comme suit: Il interroge d'abord les fichiers de base de données en cache (s'ils existent et sont valides). Si le cache ne contient pas l'information, il revient à la lecture du fichier /etc/services.
04 Groupes réseau
groupesreseaux: nis
- groupesreseaux: Permet de définir des groupes d'utilisateurs à l'échelle du réseau, principalement utilisés dans les environnements NFS et NIS.
- nis: Fait référence à l'obtention d'informations à partir d'un serveur NIS (Network Information Service).
- Explication de la stratégie: Le système interrogera un serveur NIS central pour obtanir les informations sur les groupes réseau. Ceci est courant dans les environnements de gestion réseau centralisés et de grande taille.