Name Service Switch

Name Service Switch (NSS) — механізм у UNIX-подібних операційних системах, що дозволяє мати більше ніж один метод резолвінгу імен. Джерелами інформації для NSS можуть бути локальні файли (такі, як hosts, /etc/passwd, /etc/group), доменна система імен (DNS), NIS і LDAP.

nsswitch.conf

Основний метод конфігурування сервісів імен — файл /etc/nsswitch.conf. У цьому файлі вказуються, з яких джерел системою береться інформація про паролі, геші паролів, групи користувачів, як здійснюється резолвінг доменних імен, і деяка інша інформація. Наприклад, якщо використаний параметр files, інформація розміщується у локальних файлах. Параметр ldap вказує на використання LDAP, а nis чи nisplus — на NIS чи NIS+ відповідно. Для WINS використовується слово wins.

Назва бази даних у файлі nsswitch.conf йде першою, за нею двокрапка, і список можливих джерел інформації (розділених пробілом). Наприклад:

passwd:     files ldap
shadow:     files
group:      files ldap

hosts:      dns nis files

ethers:     files nis
netmasks:   files nis
networks:   files nis
protocols:  files nis
rpc:        files nis
services:   files nis

automount:  files
aliases:    files

Джерела використовуються у тому порядку, в якому вони вказані у файлі.

Історія

Операційна система Ultrix була однією з перших, де було реалізовано функціональність, майже ідентичну до NSS (ім'я файла конфігурації було /etc/svc.conf). Старіші Unix-подібні системи мали або жорстко закодовані імена файлів для інформації про паролі і імена, або так само жорстко закодовані правила для доступу до специфічних баз даних.

Перша версія NSS з'явилася у операційній системі Solaris від Sun Microsystems. З часом NSS було портовано до FreeBSD, NetBSD, Linux, HP-UX, IRIX і AIX.

Див. також

  • BSD Authentication
  • Сервер імен
  • Pluggable Authentication Modules

Посилання

  • nsswitch.conf(5): name-service switch configuration file – NetBSD File Formats Manual
  • Name Service Switch implementation in the GNU C Library [Архівовано 13 квітня 2018 у Wayback Machine.]
  • NSS module supporting LDAP [Архівовано 16 квітня 2018 у Wayback Machine.]: nss_ldap
  • Another NSS module supporting LDAP [Архівовано 19 червня 2009 у Wayback Machine.]: nss-ldapd
  • NSS module supporting AFS [Архівовано 4 березня 2018 у Wayback Machine.]: nss_afs