nscd.conf

title: nscd.conf(5)

summary: файл настройки службы кэширования имён

text:
# nscd.conf(5)

## ИМЯ
nscd.conf - файл настройки службы кэширования имён

## ОПИСАНИЕ
Файл /etc/nscd.conf читается службой nscd(8) при запуске. Каждая строка задаёт либо атрибут и значение, либо атрибут, сервис и значение. Поля разделяются ПРОБЕЛАМИ или символами табуляции (TAB). Символом '#' (решётка) начинается строка комментария; всё, что располагается за этим символом, не обрабатывается nscd.

Названия служб: passwd, group, hosts, services или netgroup.

logfile имя_файла_отладки

Задаёт имя файла, в который будет выдаваться информация об отладке.

debug-level значение

Задаёт уровень отладки. По умолчанию 0.

threads число

Задаёт количество запускаемых нитей, ожидающих запросов. Всегда будет создано не менее пяти нитей.

max-threads число

Задаёт максимальное количество нитей. По умолчанию 32.

server-user пользователь

Если указан этот параметр, то nscd будет запущена с правами обычного пользователя, а не root. Если используется раздельное кэширование для каждого пользователя (параметр -S), то данный параметр игнорируется.

stat-user пользователь

Задаёт имя пользователя, которому разрешено запрашивать статистику.

reload-count unlimited | число

Задаёт предельное количество раз, которое неиспользуемый кэшированный элемент будет перезагружаться перед тем как будет удалён. По умолчанию 5.

paranoia <yes|no>

Включает параноидальный режим, в котором nscd будет периодически самостоятельно перезапускаться. По умолчанию выключен.

restart-interval время

Устанавливает интервал перезапуска равным времени в секундах, если включён периодический перезапуск с помощью режима paranoia. По умолчанию 3600.

enable-cache служба <yes|no>

Включает или отключает кэширование указанной службы. По умолчанию выключено.

positive-time-to-live служба значение

Устанавливает время жизни (TTL — time-to-live) для положительных элементов (успешных запросов) в указанном кэше для службы. Значение указывается в секундах. Большие значения увеличивают частоту использования кэша и уменьшают время ответа, но при этом возникают проблемы с актуальностью содержимого кэша.

negative-time-to-live служба значение

Устанавливает время жизни (TTL — time-to-live) для отрицательных элементов (безуспешных запросов) в указанном кэше для службы. Значение указывается в секундах. Может привести к значительному увеличению производительности, если существуют несколько файлов, идентификаторы владельцев которых (ID) не находятся в системной базе данных (например, выполнение распаковки tar исходного кода ядра Linux под пользователем root); значение должно быть небольшим чтобы не возникло проблем с актуальностью содержимого кэша.

suggested-size служба значение

Размер внутренней хэш-таблицы кэша; значение должно оставаться простым числом для оптимальной эффективности. По умолчанию 211.

check-files служба <yes|no>

Включает или отключает проверку на принадлежность файла к указанной службе для изменений. Файлами могут быть /etc/passwd, /etc/group, /etc/hosts, /etc/services и /etc/netgroup. По умолчанию включена.

persistent служба <yes|no>

Сохраняет содержимое кэша для службы между перезапусками сервера; полезно при включённом режиме paranoia. По умолчанию выключено.

shared служба <yes|no>

Отражение в память баз данных nscd для службы позволяет совместно использовать их из клиентов так, что они могут выполнять поиск самостоятельно, а не запрашивать службу через сокет каждый раз при выполнении просмотра. По умолчанию выключено.

max-db-size служба байты

Максимальный допустимый размер, в байтах, файлов баз данных службы. По умолчанию 33554432.

auto-propagate служба <yes|no>

Если для службы passwd или group значение равно no, то запросы .byname не добавляются в кэш passwd.byuid или group.bygid. Это может помочь с таблицами, содержащими несколько записей с одинаковым ID. По умолчанию включено. Этот параметр допустим только для службы passwd и group.

## ЗАМЕЧАНИЯ
Значения по умолчанию, указанные в этой справочной странице, взяты из исходного кода nscd(8) и используются, если не были изменены через файл настройки. Значения по умолчанию, используемые в файле настройки, в разных дистрибутивах могут различаться.

## СМОТРИТЕ ТАКЖЕ
nscd(8)


nss

package: man-pages-ru

title: nss(5)

summary: файл настройки диспетчера службы имён

text:
# nss(5)

## ИМЯ
nss - файл настройки диспетчера службы имён

## ОПИСАНИЕ
Функции, возвращающие данные из системной базы данных паролей или групп, включены в реализацию диспетчера службы имён (Name Service Switch) библиотеки GNU C. Все службы реализованы в виде независимых модулей, значительно отличающихся друг от друга.

Реализация библиотеки GNU C стабильна и не использует небезопасных данных. В некоторых ситуациях это может оказаться затратным, особенно если базы данных очень велики. Некоторые модули позволяют системному администратору включить упрощённый поиск, если известно, что это безопасно.

Есть несколько модулей, реализация которых изменилась после долгого времени. Если в реализации раньше жертвовали скоростью в угоду снижению потребления памяти, это может создать проблемы, если было важно обратное предпочтение.

В файле /etc/default/nss нескольким переменным задаются значения. Каждая переменная управляет поведением одного или нескольких модулей NSS. Пробельные символы игнорируются. Строки, начинающиеся с '#', считаются комментариями.

Действующие переменные:

NETID_AUTHORITATIVE = TRUE|FALSE

Если значение равно TRUE, то реализация NIS для функции initgroups(3) будет принимать информацию из карты NIS netid.byname как достоверную (authoritative). Это может значительно увеличить скорость функции, если карта group.byname очень велика. Содержимое карты netid.byname используется как есть. За корректность её данных ответственен системный администратор.

SERVICES_AUTHORITATIVE = TRUE|FALSE

Если значение равно TRUE, то реализация NIS для функций getservbyname(3) и getservbyname_r(3) будет предполагать, что карта NIS services.byservicename существует и достоверна; что она содержит ключи с /proto и без /proto для главной (primary) службы имён и псевдонимов служб. За корректность её данных ответственен системный администратор.

SETENT_BATCH_READ = TRUE|FALSE

Если значение равно TRUE, то реализация NIS для функций setpwent(3) и setgrent(3) будет читать всю базу сразу, а затем, используя память, обрабатывать поступающие запросы друг за другом для каждого соответствующего вызова getpwent(3) или getgrent(3). В противном случае для получения следующей записи каждый вызов getpwent(3) или getgrent(3) может создавать сетевое обращение к серверу.

## ФАЙЛЫ
/etc/default/nss

## ПРИМЕР
Файл с настройками по умолчанию выглядит так:

```
NETID_AUTHORITATIVE=FALSE
SERVICES_AUTHORITATIVE=FALSE
SETENT_BATCH_READ=FALSE
```

## СМОТРИТЕ ТАКЖЕ
nsswitch.conf

branch: sisyphus


nsswitch.conf

title: nsswitch.conf(5)

summary: файл настроек диспетчера службы имён

text:
# nsswitch.conf(5)

## ИМЯ
nsswitch.conf - файл настроек диспетчера службы имён

## ОПИСАНИЕ
Файл настроек диспетчера службы имён (Name Service Switch, (NSS)) /etc/nsswitch.conf используется библиотекой GNU C и другими приложениями для определения источников служб имён разных категорий и их очерёдности. Каждая категория информации обозначается по имени её базы данных.

Данный файл представляет собой простой текст в кодировке ASCII с колонками, разделёнными пробелами или символами табуляции. В первой колонке указывается имя базы данных. В оставшихся колонках задаётся порядок запросов к источникам и ограниченный набор действий, который может быть выполнен в зависимости от результата запроса.

Библиотека GNU C распознаёт следующие базы данных:

aliases

Почтовые псевдонимы, используемые getaliasent(3) и подобными функциями.

ethers

Номера ethernet.

group

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

hosts

Имена узлов и номера, используемые gethostbyname(3) и подобными функциями.

initgroups

Дополнительный список групп доступа, используется функцией getgrouplist(3).

netgroup

Список узлов и пользователей сети, используемый для правил доступа. Библиотеки C до версии glibc 2.1 поддерживают сетевые группы только посредством NIS.

networks

Имена сетей и номера, используемые getnetent(3) и подобными функциями.

passwd

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

protocols

Сетевые протоколы, используемые getprotoent(3) и подобными функциями.

publickey

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

rpc

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

services

Сетевые службы, используемые getservent(3) и подобными функциями.

shadow

Теневые пароли пользователей, используемые getspnam(3) и подобными функциями.

Библиотека GNU C игнорирует базы данных с неизвестными именами. Некоторые приложения используют это для реализации обработки своих баз данных. Например, sudo(8) обращается к базе данных sudoers.

Пример файла /etc/nsswitch.conf:

```
passwd:         compat
group:          compat
shadow:         compat
hosts:          dns [!UNAVAIL=return] files
networks:       nis [NOTFOUND=return] files
ethers:         nis [NOTFOUND=return] files
protocols:      nis [NOTFOUND=return] files
rpc:            nis [NOTFOUND=return] files
services:       nis [NOTFOUND=return] files
```

В первой колонке содержится имя базы данных. В остальных колонках указывается:

- Одна или более служб, например, «files», «db» или «nis». Очерёдность служб в строке определяет порядок, в котором будут опрашиваться данные службы (пока не будет найден результат).

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

Список поддерживаемых системой служб зависит от наличия динамических библиотек (и, таким образом, расширяем). Библиотека с именем /lib/libnss_СЛУЖБА.so.X предоставляет службу СЛУЖБА. В стандартной установке вы можете использовать «files», «db», «nis» и «nisplus». Для базы данных hosts вы можете дополнительно указать «dns». Для баз данных passwd, group и shadow вы можете дополнительно указать «compat» (см. Режим совместимости далее). Номер версии X может быть равен 1 (для glibc 2.0) или 2 (для glibc 2.1 и новее). В системах с дополнительно установленными библиотеками могут быть другие службы, такие как «hesiod», «ldap», «winbind» и «wins».

Также, после указания службы может быть указано действие. Действие изменяет дальнейшее поведение в зависимости от результата, полученного из предыдущего источника данных. Действия задаются следующим образом:

[СОСТОЯНИЕ=ДЕЙСТВИЕ]

[!СОСТОЯНИЕ=ДЕЙСТВИЕ]

где

СОСТОЯНИЕ => success | notfound | unavail | tryagain

ДЕЙСТВИЕ => return | continue | merge

Символ ! инвертирует результат теста, то есть совпадают все результаты, кроме указанного. Регистр символов ключевых слов не важен.

Значение СОСТОЯНИЕ — это результат вызова функции поиска заданной службы. Оно может принимать значения:

success

Запрашиваемая запись найдена и ошибок не произошло. Для этого состояния действием по умолчанию является «return».

notfound

Поиск выполнен, но нужная запись не была найдена. Для этого состояния действием по умолчанию является «continue».

unavail

Служба постоянно недоступна. Это может означать, что недоступен для чтения нужный файл или, для сетевых служб, что сервер недоступен или не обслуживает запросы. Для этого состояния действием по умолчанию является «continue».

tryagain

Служба временно недоступна. Это может означать, что какой-либо файл заблокирован или что в данный момент сервер не может принять больше соединений. Для этого состояния действием по умолчанию является «continue».

Значением ДЕЙСТВИЕ может быть одно из:

return

Вернуть результат. Не вызывать функции для дальнейшего поиска. Однако, с целью совместимости, если это действие указывается для базы данных group и состояние равно notfound, и файл настройки не содержит строку initgroups, то всегда вызывается следующая функция поиска, независимо от результата поиска.

continue

Вызвать следующую функцию поиска.

merge

[SUCCESS=merge] используется между двумя записями базы данных. Если группа расположена в первой из двух записей групп, то обработка будет продолжена со следующей. Если группа также присутствует в следующей записи (имя группы и GID совпадают полностью), то список членов второй записи будет добавлен к возвращаемому объекту группы. Доступно начиная с glibc 2.24. Заметим, что слияние не будет выполнено для getgrent(3) повторяющиеся члены не будут удалены, если они присутствуют в обоих объединяемых записях.

### Режим совместимости (compat)
Служба NSS «compat» подобна «files», за исключением того, что она позволяет иметь дополнительные специальные записи в соответствующих файлах для разграничения прав доступа пользователей и сетевых групп в системе. В этом режиме допустимы следующие записи:

Для баз данных passwd и shadow:

+пользователь

Включить указанного пользователя в карту NIS passwd/shadow.

+@сетевая группа

Включить всех пользователей в указанную сетевую группу.

-пользователь

Исключить указанного пользователя из карты NIS passwd/shadow.

-@сетевая группа

Исключить всех пользователей из указанной сетевой группы.

+

Включить каждого пользователя, за исключением исключённых ранее, в карту NIS passwd/shadow.

Для базы данных group:

+группа

Включить указанную группу в карту NIS group.

-группа

Исключить указанную группу из карты NIS group.

+

Включить каждую группу, за исключением исключённых ранее, в карту NIS group.

По умолчанию источником является «nis», но это можно изменить, указав любую службу NSS, за исключением самого «compat» в качестве источника псевдо-базы данных passwd_compat, group_compat и shadow_compat.

## ФАЙЛЫ
Каждая СЛУЖБА реализована в динамической объектной библиотеки с именем libnss_СЛУЖБА.so.X, которая находится в каталоге /lib.

/etc/nsswitch.conf

файл настройки NSS

/lib/libnss_compat.so.X

реализует источник «compat»

/lib/libnss_db.so.X

реализует источник «db»

/lib/libnss_dns.so.X

реализует источник «dns»

/lib/libnss_files.so.X

реализует источник «files»

/lib/libnss_hesiod.so.X

реализует источник «hesiod»

/lib/libnss_nis.so.X

реализует источник «nis»

/lib/libnss_nisplus.so.X

реализует источник «nisplus»

При указании в соответствующих базах источника «files», читаются следующие файлы:

aliases

/etc/aliases

ethers

/etc/ethers

group

/etc/group

hosts

/etc/hosts

initgroups

/etc/group

netgroup

/etc/netgroup

networks

/etc/networks

passwd

/etc/passwd

protocols

/etc/protocols

publickey

/etc/publickey

rpc

/etc/rpc

services

/etc/services

shadow

/etc/shadow

## ЗАМЕЧАНИЯ
Внутри каждого процесса, который использует файл nsswitch.conf, файл полностью читается только один раз. Если позднее файл был изменён, то процесс продолжит выполнение, используя старые настройки.

Изначально использовался только один источник служебной информации, часто в виде одного файла настройки (например, /etc/passwd). Однако, по мере того, как становились популярными другие службы, такие как служба сетевой информации (Network Information Service (NIS)) и служба доменных имён (Domain Name Service (DNS)), потребовался более гибкий способ определения порядка поиска вместо встроенного в библиотеку C. Для решения этой проблемы был создан диспетчер службы имён (Name Service Switch), основанный на механизме, использованном Sun Microsystems в C-библиотеке Solaris 2.

## СМОТРИТЕ ТАКЖЕ
getent(1), nss(5)


title: numa_maps(5)

text:
# numa_maps(5)

See the file man7/numa.7.


passwd

title: passwd(5)

summary: файл паролей

text:
# passwd(5)

## ИМЯ
passwd - файл паролей

## ОПИСАНИЕ
В текстовом файле /etc/passwd содержится список учётных записей пользователей в системе. Файл должен быть доступен для чтения всем пользователям (многие утилиты, такие как ls(1), используют его, чтобы преобразовывать идентификаторы пользователей в их имена), но доступ на запись должен предоставляться только суперпользователю.

В старые добрые времена не существовало большой проблемы, связанной с доступностью этого файла на чтение для всех. Любой мог прочитать зашифрованные пароли, но мощности компьютеров не хватало для подбора грамотно выбранных паролей, а кроме того, наивно предполагалось, что сеть используется дружественным сообществом пользователей. В наши дни, многие пользователи стали использовать механизм теневых паролей, где файл /etc/passwd содержит 'x' в поле пароля, а зашифрованные пароли хранятся в файле /etc/shadow, который доступен на чтение только суперпользователю.

Если значение шифрованного пароля, в /etc/passwd или /etc/shadow, равно пустой строке, то вход будет разрешён без запроса пароля. Заметим, что данной свойство может быть специально отключено в приложениях или может настраиваться (например, с помощью аргументов «nullok» или «nonull»модуля pam_unix.so).

Если значение шифрованного пароля в /etc/passwd равно «*NP*» (без кавычек), то теневая запись запрашивается с сервера NIS+.

Вне зависимости от того, применяется ли механизм теневых паролей или нет, многие системные администраторы ставят звёздочку (*) в поле зашифрованного пароля, чтобы быть уверенными, что данный пользователь не пройдёт аутентификацию, используя какой-либо пароль (но смотри раздел ЗАМЕЧАНИЯ далее).

Если вы создаёте новую учётную запись, сперва в поле пароля помещается звёздочка (*), а затем с помощью команды passwd(1) вы можете задать пароль.

Каждая строка файла состоит из семи полей, разделённых двоеточием и описывает одного пользователя:

```
name:password:UID:GID:GECOS:directory:shell
```

Поля:

имя

Имя пользователя в системе. Оно не должно содержать букв в верхнем регистре.

пароль

Может содержать шифрованный пароль пользователя, звёздочку (*) или букву 'x' (про 'x' см. в pwconv(8)).

UID

Привилегированная учётная запись root (суперпользователь) имеет идентификатор пользователя равный 0.

GID

Числовой идентификатор первичной группы (GID) пользователя. Дополнительные группы пользователя могут быть заданы в файле групп системы; смотрите group(5).

GECOS

Данное поле является необязательным и используется только для информационных целей. Обычно, оно содержит полное имя пользователя. Некоторые программы (например, finger(1)) показывают значение этого поля.

GECOS — это аббревиатура от General Electric Comprehensive Operating System, которая была переименована в GCOS, когда подразделение больших систем компании GE было продано компании Honeywell. Денис Ритчи писал: «Иногда мы направляем вывод печати или пачку заданий на GCOS машину. Поле gcos в файле паролей было местом, где хранилась информация для $IDENTcard. Не элегантно.»

каталог

Домашний каталог пользователя: начальный каталог, куда попадает пользователь после входа в систему. Значение данного поля используется для настройки переменной окружения HOME.

оболочка

Это программа, которая запускается после входа в систему (если это поле пустое, то используется /bin/sh). Если в поле указан несуществующий исполняемый файл, то пользователь не сможет войти в систему с помощью login(1). Значение данного поля используется для настройки переменной окружения SHELL.

## ФАЙЛЫ
/etc/passwd

## ЗАМЕЧАНИЯ
Если вы хотите создать группу пользователя, то такая группа должна существовать в файле /etc/group, иначе группа не будет существовать.

Если вместо зашифрованного пароля установлена звёздочка (*), то пользователь не сможет войти в систему, используя команду login(1), но сможет войти в систему, используя rlogin(1), запустить существующие процессы и инициировать новые, используя rsh(1), cron(8), at(1) или почтовые фильтры и т.д. Попытка заблокировать учётную запись простым изменением поля shell, даст тот же результат и в дополнении разрешит использование su(1).

## СМОТРИТЕ ТАКЖЕ
chfn(1), chsh(1), login(1), passwd(1), su(1), crypt(3), getpwent(3), getpwnam(3), group(5), shadow(5), vipw(8)