NSSwitch

De SergiTurWiki

Share/Save/Bookmark
(S'ha redirigit des de: Nsswitch)
Dreceres ràpides: navegació, cerca
Aquesta wiki forma part dels materials d'un curs
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

Consulteu també

Recursos

IES Nicolau Copèrnic