Penguin

Acronym for Name Service Switch

The NSS is a glibc mechanism for providing multiple methods of accessing common databases such as the password or hosts database. It is commonly used to provide an interface to both local /etc/passwd (and shadow) files, and a remote authentication mechanism such as NIS or LDAP.

The config file for specifying backend methods for each database is /etc/nsswitch.conf -- see the nsswitch.conf(5) ManPage.

The databases available for configuration within the NSS are:

aliases(5):
Mail aliases
ethers(5):
Ethernet numbers,
group(5):
Groups of users
hosts(5):
Host names and numbers.
netgroup(5)?:
Network wide list of host and users
networks(5):
Network names and numbers
protocols(5):
Network protocols
passwd(5):
User passwords
rpc(5):
Remote procedure call names and numbers,
services(5):
Network services
shadow(5):
Shadow user passwords

Most of these databases are normally only configured for flatfile access: protocols and services, for example, look up only in /etc/protocols and /etc/services. You could serve these from LDAP, or from a DBM? file, or from an SQL DataBase, or so on.

See http://www.delorie.com/gnu/docs/glibc/libc_591.html for more information on the glibc NSS