Уважаемые подписчики! Седьмой выпуск рассылки посвящен команде login(1) и
сайту Debian Planet
с ценными материалами по Debian GNU/Linux и Linux вообще.
Новости мира UNIX
Существенных новостей сегодня пока нет. Подождем до завтра.
login - это механизм идентификации и проверки идентичности,
вызываемый монитором порта (port monitor), обычно, ttymon, в начале
каждого терминального сеанса. Он обеспечивает средства
идентификации пользователей в системе и проверки идентичности
пользователя. В качестве последнего шага процедуры регистрации
вызывается определенная программа, обычно командный интерпретатор
sh.
login нельзя вызывать из командного интерпретатора. Эта команда
помещается системным администратором в административный файл
монитора порта и вызывается монитором порта, обычно, ttymon. (См.
ttymon(1M) и pmadm(1M).)
При вызове login монитором порта, появляется приглашение. В ответ,
как минимум, необходимо ввести регистрационное имя (login name).
Другие возможные опции и параметры описаны ниже.
Если необходимо, login может попросить ввести пароль. При
возможности, выдача вводимых символов пароля отключается, так что
пароль не попадает в запись сеанса. Если была указана опция -p, login
вызывает команду passwd. (См.
passwd(1).)
Если в стандартном файле
паролей установлено ключевое слово LOGIN_ONLY, такое
использование опции -p является единственным способом изменить
пароль для пользователя.
В некоторых конфигурациях от вас, кроме пароля регистрационного
имени, могут потребовать ввести пароль дозвона (dialup password) для
подключения по коммутируемой линии. В этом случае приглашение на
ввод пароля дозвона будет:
Dialup Password:
Если корректная регистрационная информация не введена за
определенный период времени (см. defadm(1M)),
скорее всего, вы будете отключены безо всяких сообщений.
В ответ на приглашение команды login можно ввести следующие
аргументы и опции.
имя
Регистрационное имя пользователя.
-p
Изменяет пароль пользователя. Система запрашивает
старый пароль и новый пароль, а затем предлагает
повторить ввод нового пароля, чтобы убедиться в
отсутствии ошибок набора.
среда
Устанавливает переменные среды (environment variables).
Базовая среда инициализируется следующим образом:
HOME=ваш_начальный_каталог
LOGNAME=ваше_регистрационное_имя
MAIL=/var/mail/ваше_регистрационное_имя
PATH=/usr/bin
SHELL=последнее_поле_записи_в_passwd
# (/bin/sh если поле пустое)
TZ=спецификация_часового_пояса
Среда может быть расширена или изменена путем
ввода дополнительных аргументов в ответ на запрос
программой login регистрационного имени
пользователя. Аргументы могут иметь один из двух
видов: xxx или xxx=yyy. Аргументы без знака
равенства помещаются в среду как
Ln=xxx
где n - это число, начинающееся с 0 и увеличивающееся
на единицу для каждого последующего имени
переменной. Переменные, содержащие =, помещаются в
среду без изменения. Если такая переменная уже
определена, новое значение замещает старое. Чтобы не
дать пользователям, зарегистрировавшимся с
ограниченными командными интерпретаторами,
породить вторичные интерпретаторы без ограничений,
нельзя изменять следующие переменные среды:
HOME
IFS
LOGNAME
PATH
SHELL
login поддерживает простые соглашения по маскировке одиночных
символов. Ввод обратной косой (backslash) перед символом маскирует
его и позволяет включать символы вроде пробелов и табуляций.
Если проверка идентичности, выполняемая системой
/usr/lib/iaf/login/scheme, прошла успешно, scheme передает
следующую информацию модулю STREAMS и возвращает управление
монитору порта:
AUDITMASK
GID
GIDCNT (счетчик группы)
HOME
HZ
LOGNAME
PATH
SGID (список дополнительных групп)
SHELL
TTY
TZ
UID
ULIMIT
Затем монитор порта вызывает set_id и set_env, которые используют
эту информацию для установки идентификационной информации
пользователя и среды.
После успешной регистрации изменяются учетные файлы (accounting
files), печатается время последнего входа в систему и (если необходимо)
текущий уровень пользователя.
ФАЙЛЫ
/etc/default/login
файл со стандартными установками регистрации
/etc/dialups
/etc/d_passwd
/etc/motd
сообщение дня
/etc/passwd
файл паролей
/etc/profile
системный профиль
$HOME/.profile
профиль пользователя
/etc/security/ia/index
индекс в /etc/security/ia/master
/etc/security/ia/master
содержит всю информацию I&A о пользователях
/usr/lib/iaf/login/scheme
система проверки идентичности
/var/adm/lastlog
время последнего входа
/var/adm/loginlog
запись неудачных попыток регистрации
/var/adm/utmp
учетный файл
/var/adm/wtmp
учетный файл
/var/mail/ваше_имя
почтовый ящик для пользователя ваше_имя
/usr/lib/locale/локаль/ LC_MESSAGES/uxcore
файл сообщений для текущего языка
(См. LANG в environ(5).)