login.defs(5)

НАЗВАНИЕ
login.defs - содержит конфигурацию подсистемы теневых паролей

ОПИСАНИЕ

Файл /etc/login.defs содержит настройки подсистемы теневых паролей (shadow password suite). Этот файл является обязательным. Отсутствие данного файла не повлияет на работу системы, но, вероятно, приведёт к выполнению нежелаемых операций.

Файл представляет собой обычный текстовый файл; каждая строка описывает один параметр конфигурации. Строки состоят из названия параметра и его значения, которые разделяются пробельным символом. Пустые строки и комментарии игнорируются. Комментарии начинаются со знака фунта "#", который должен быть первым непробельным символом в строке.

Значения параметров могут быть четырёх типов: строки, логические значения, числа и длинные числа. Строки состоят из любых печатных символов. Под логическими значениями подразумеваются "yes" или "no". Неопределённый логический параметр или имеющий значение, отличное от указанных выше, считается как имеющий значение "no". Числа (обычные и длинные) можно задавать в десятичной, восьмеричной (перед значением ставится "0") или шестнадцатеричной (перед значением ставится "0x") системах счисления. Максимальные значения параметра обычного и длинного числа зависят от архитектуры компьютера.

Возможны следующие параметры конфигурации:

CHFN_AUTH (логический)
    Если равно yes, то программы chfn и chsh будут проводить аутентификацию перед тем как выполнить любые изменения, в случае если команды не запущены суперпользователем.

CHFN_RESTRICT (строка)
    В этом параметре указывается, какие части поля gecos из файла /etc/passwd могут изменять обычные пользователи с помощью программы chfn. Строка может содержать любую комбинацию букв f , r, w, h, для изменения полного имени пользователя, номера комнаты, рабочего и домашнего телефона соответственно. Для совместимости, значение "yes" эквивалентно "rwh" и "no" эквивалентно "frwh". Если ничего не задано, то только суперпользователь может выполнять любые изменения. Наиболее ограничительная настройка достигается снятием SUID бита с файла chfn.

GID_MAX (число), GID_MIN (число)
    Диапазон идентификаторов групп, используемый в программах useradd и groupadd.

MAIL_DIR (строка)
    Почтовый каталог. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя. Если параметр не задан, то используется значение указанное при сборке.

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

PASS_MIN_DAYS (число)
    Максимальное число дней между изменениями пароля. Любая смена пароля ранее заданного срока выполнена не будет. Если значение не задано, то предполагается значение -1 (то есть возможность ограничения не используется).

PASS_WARN_AGE (число)
    Число дней за которое начнёт выдаваться предупреждение об устаревании пароля. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет. Если значение не задано, выдача предупреждения отключается.

Параметры PASS_MAX_DAYS, PASS_MIN_DAYS и PASS_WARN_AGE используются только при создании учётной записи. Любые изменения этих параметров не влияют на уже существующие учётные записи.

UID_MAX (число), UID_MIN (число)
    Диапазон идентификаторов пользователей, используемый программой useradd.

UMASK (число)
    Задаёт начальное значение маски доступа. Если не указано, то маска доступа устанавливается в 022.

USERDEL_CMD (строка)
    Определяет программу, которая будет запущена при удалении пользователя. Она должна удалять любые задания at/cron/печати удаляемого пользователя (передаётся в качестве первого аргумента).

ПЕРЕКРЁСТНАЯ ССЫЛКА

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

chfn
    CHFN_AUTH CHFN_RESTRICT

chsh
    CHFN_AUTH

groupadd
    GID_MAX GID_MIN

newusers
    PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UMASK

pwconv
    PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE

useradd
    GID_MAX GID_MIN PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE UID_MAX UID_MIN UMASK

userdel
    MAIL_DIR USERDEL_CMD

usermod
    MAIL_DIR

ОШИБКИ РЕАЛИЗАЦИИ

Большинство функций подсистемы теневых паролей теперь реализовано через PAM. Поэтому, файл /etc/login.defs больше не используется программами: login(1), passwd(1), su(1). Настройку данных программ следует выполнять в файлах конфигурации PAM.

СМОТРИТЕ ТАКЖЕ

login(1), passwd(1), su(1), passwd(5), shadow(5), pam(8).