NSSwitch
De SergiTurWiki
| Curs: | SambasobreLDAP, LinuxAdministracioAvancada |
| Fitxers: | Ldap2.pdf,AutenticacioiAutoritzacionsLinux.pdf |
| Repositori SVN: | https://anonymous@svn.projectes.lafarga.cat/svn/iceupc/SambaSobreLDAP |
| Usuari: | anonymous |
| Paraula de pas: | sense paraula de pas |
| Autors: | Sergi Tur Badenas, Lluís Pérez Vidal |
Contingut |
Paquets NSS
Name Service Switch (NSS) permet reemplaçar fitxers bàsics de configuració de Unix (per exemple: /etc/passwd, /etc/group, /etc/hosts) per bases de dades centralitzades.
NSS va ser creat per Sun Microsystems per a Solaris però ha estat “portat” a altres sistemes operatius. En Unix normalment s'utilitza la versió de GNU.
Normalment no cal instal·lar cap paquet per què és un sistema que ja porten incorporat totes les distribucions Linux.
Configuració
Aquest sistema és configurable mitjançant el fitxer:
$ cat /etc/nsswitch.conf # /etc/nsswitch.conf # # Example configuration of GNU Name Service Switch functionality. # If you have the `glibc-doc-reference' and `info' packages installed, try: # `info libc "Name Service Switch"' for information about this file. passwd: compat group: compat shadow: compat hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4 networks: files protocols: db files services: db files ethers: db files rpc: db files netgroup: nis
NSS treballa amb les següents bases de dades:
- aliases: Mail aliases
- ethers: números Ethernet numbers,
- group: grups d'usuaris
- hosts: noms de màquina i números
- netgroup: usuaris i màquines de xarxa
- networks: noms i números de xarxes
- protocols: noms i números de protocols
- passwd: paraules de pas dels usuaris.
- rpc: noms i números de crides remotes a procediments
- services: Network services, see Services Database.
- shadow: paraules de pas shadow del usuaris
Cada línia del fitxer indica quin és l'ordre per resoldre una consulta per a una base de dades específica. Per exemple
# /etc/nsswitch.conf # # Name Service Switch configuration file. # passwd: db files nis shadow: files group: db files nis ....
Indica que les contrasenyes es buscaran primer en db, després a files i finalment a nis. Cadascun d'aquests noms és un servei de base de dades diferents. Per defecte es suporten els següents serveis:
- files: Fitxers guardats a la carpeta /etc del sistema
- compat: Fitxers guardats a la carpeta /etc del sistema (només password, groups i shadow) compatibles amb l'estil de signes + i -
- db:
- dns: Utilitzat per indicar que els hosts utilitzant DNS
- hesiod: hesiod.
- nis: Mapa NIS
- nisplus: Taula NIS plus
Aquest serveis són suportats per les llibreries:
$ ls /lib/libnss* /lib/libnss_compat-2.6.1.so /lib/libnss_files-2.6.1.so /lib/libnss_mdns4_minimal.so.2 /lib/libnss_mdns_minimal.so.2 /lib/libnss_nisplus.so.2 /lib/libnss_compat.so.2 /lib/libnss_files.so.2 /lib/libnss_mdns4.so.2 /lib/libnss_mdns.so.2 /lib/libnss_nis.so.2 /lib/libnss_dns-2.6.1.so /lib/libnss_hesiod-2.6.1.so /lib/libnss_mdns6_minimal.so.2 /lib/libnss_nis-2.6.1.so /lib/libnss_dns.so.2 /lib/libnss_hesiod.so.2 /lib/libnss_mdns6.so.2 /lib/libnss_nisplus-2.6.1.so
Recursos:
Altres serveis (com per exemple ldap) és poden afegir.
En alguns casos es poden especificar accions. Per exemple:
networks: nisplus [NOTFOUND=return] files
Les accions s'interpreten de la següent forma:
- success: Sense errors i s'ha trobat el que es buscava a la base de dades. L'acció per defecte és return.
- notfound: Sense errors però no s'ha trobat el que es buscava. L'acció per defecte és continue.
- unavail: El serveis no esta disponible. L'acció per defecte és continue.
- tryagain: El servei no esta disponible temporalment. L'acció per defecte és continue.
Per tant una línia com:
ethers: nisplus [NOTFOUND=return] db files
és equivalent a:
ethers: nisplus [SUCCESS=return NOTFOUND=return UNAVAIL=continue TRYAGAIN=continue]
Recursos:
La base de dades files
La base de dades fitxers es la formada pels fitxers:
- /etc/hosts
- /etc/netgroup
- /etc/networks
- /etc/protocols
- /etc/rpc
- /etc/services
- automounter maps (like /etc/auto_master and /etc/auto_home)
Documentació
Per accedir a la documentació de NSS cal instal·lar
$ sudo apt-get install manpages-dev glibc-doc
Un cop instal·lat podem consultar la documentació amb la comanda info:
$ info libc "Name Service Switch"
Aquesta documentació també esta disponibles en línia:
http://www.gnu.org/software/libtool/manual/libc/Name-Service-Switch.html#Name-Service-Switch
