Файл /etc/nsswitch.conf#

nsswitch.conf - это конфигурационный файл службы NSS (Name Service Switch), используемый библиотекой GNU C (библиотека на языке C, обеспечивающая системные вызовы и основные функции) и некоторыми другими приложениями для определения источников информации о службе имен в ряде категорий и их порядка. Каждая категория информации идентифицируется именем базы данных.

Содержит текстовую информацию в виде столбцов, разделенных пробелами/символами табуляции. В первом столбце указывается имя базы данных. Остальные описывают порядок источников для запроса и ограниченный набор действий, которые могут быть выполнены по результату поиска.

Используемые базы данных:

База данных

Описание

aliases

Почтовые псевдонимы, используемые getaliasent и связанными функциями

ethers

Сетевые адреса

group

Группы пользователей, используемые getgrent и связанными функциями

hosts

Имена и номера хостов, используемые gethostbyname и связанными функциями

initgroups

Дополнительный список групп доступа, используемый getgrouplist

netgroup

Общесетевой список хостов и пользователей, используемый для определения правил доступа

networks

Сетевые имена и адреса, используемые getnetent и связанными функциями

passwd

Пароли пользователей, используемые getpwent и связанными функциями

protocols

Сетевые протоколы, используемые getprotoent и связанными функциями

publickey

Открытые и «secret» ключи для Secure_RPC, используемые NFS и NIS+

rpc

Имена и адреса удаленных процедурных вызовов, используемые getrpcbyname и связанными функциями

services

Сетевые сервисы, используемые getservent и связанными функциями

shadow

Пароли теневых пользователей, используемые getspnam и связанными функциями

Второй и последующие столбцы nsswitch.conf определяют:

  • Одну или несколько спецификаций сервиса, например, files, db или nis. Порядок служб в строке задают очередность, в которой они будут запрашиваться, пока не будет найден результат.

  • Необязательные действия, которые необходимо выполнить, если определенный результат получен от предыдущей службы, например, [NOTFOUND=return].

Записи допустимых «service provider» включают:

Запись

Использование

compat

Файлы /etc и pseudo-db *_compat

db

Предварительно обработанных файлы /var/db

dns

DNS (Domain Name Service)

files

Локальные файлы в /etc

hesiod

Hesiod (DNS) для поиска пользователей

Список используемых альтернативных поставщики услуг (возможно, потребуется установка):

Поставщик

Использование

ldap

Сервер директорий LDAP

myhostname

Имена хостов systemd

mymachines

Имена машин systemd

mdns*, mdns*_minimal

Avahi mDNS/DNS-SD

resolve

Интерпретатор systemd resolved

sss

System Security Services Daemon (sssd)

systemd

systemd для динамической настройки пользователя

winbind

Поддержка демона Samba winbind

wins

Поддержка Samba wins

wrapper

Модуль wrapper для тестирования

Примеры записей#

  • Для использования баз данных (в приведенном примере - db) установите соответствующие пакеты и пропишите db перед files для записей, которые необходимо просмотреть в первую очередь в соответствующих базах данных:

    passwd:    db files
    shadow:    db files
    group:     db files
    
  • Для ускорения поиска в порядке вероятности использования:

    passwd:     sss files systemd
    shadow:     files
    group:      sss files systemd
    hosts:      files dns myhostname
    services:   files sss
    netgroup:   sss
    automount:  files sss
    aliases:    files
    ethers:     files
    gshadow:    files
    initgroups: files
    networks:   files dns
    protocols:  files
    publickey:  files
    rpc:        files