RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
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).)