UP | HOME

Directory /etc

Table of Contents

1. /etc/nsswitch

Il file `/etc/nsswitch.conf` (Name Service Switch configuration file) definisce l’ordine e il comportamento con cui Linux cerca le informazioni di sistema come utenti, gruppi, nomi host, DNS, servizi, ecc., tra le varie fonti disponibili (es: file locali, systemd, DNS, LDAP, ecc.).

cat /etc/nsswitch.conf 
# Name Service Switch configuration file.
# See nsswitch.conf(5) for details.

passwd: files systemd
group: files [SUCCESS=merge] systemd
shadow: files systemd
gshadow: files systemd

publickey: files

hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns
networks: files

protocols: files
services: files
ethers: files
rpc: files

netgroup: files


1.1. Utenti e gruppi

passwd: files systemd group: files [SUCCESS=merge] systemd shadow: files systemd gshadow: files systemd

`passwd`: cerca gli utenti prima in `/etc/passwd`, poi tramite `systemd` (es: utenti runtime in `systemd-homed`) `group`: cerca i gruppi in `/etc/group`, poi in `systemd`; la direttiva `[SUCCESS=merge]` dice: se la prima fonte (files) ha successo, prova comunque anche la seconda (`systemd`) e unisci i risultati `shadow`/`gshadow`: stesso concetto per le password criptate e i permessi shadow.

1.2. Chiavi pubbliche

publickey: files

1.3. Risoluzione nomi host

hosts: mymachines resolve [!UNAVAIL=return] files myhostname dns

Ordine di risoluzione dei nomi host:

  1. `mymachines` → host gestiti da systemd-machined (contenitori, VM)
  2. `resolve` → usa `systemd-resolved`
  3. `[!UNAVAIL=return]` → se `resolve` è non disponibile, interrompi e non andare avanti
  4. `files` → `/etc/hosts`
  5. `myhostname` → hostname locale
  6. `dns` → DNS tradizionale

Questo approccio è flessibile e permette di integrare più sistemi di risoluzione.

1.4. Rete

networks: files

Reti lette da `/etc/networks`.

1.5. Protocolli, servizi, ethers, rpc

protocols: files services: files ethers: files rpc: files

`protocols`: `/etc/protocols` (es. TCP, UDP) `services`: `/etc/services` (es. http = 80) `ethers`: `/etc/ethers` (MAC ↔ IP mapping) `rpc`: `/etc/rpc` (chiamate RPC)

1.6. Netgroup

netgroup: files

Serve per gruppi di rete definiti in ambienti NIS o LDAP.

1.7. Riassunto

Questo file:

Controlla da dove Linux legge info su utenti, gruppi, DNS, servizi, ecc. Specifica l’ordine delle fonti Usa modificatori come `[SUCCESS=merge]` o `[!UNAVAIL=return]` per personalizzare il comportamento

1.8. getent

Visualizza dove vengono utilizzate le voci indicate nel file di configurazione.

Author: andrea venuti

Created: 2025-07-23 mer 11:14

Validate