А. Робачевский - Операционная система UNIX (1114671), страница 12
Текст из файла (страница 12)
Такие поль!www.books-shop.comПользователи системызователи называются псевдопользователями. Они обладают правами на оп!ределенные файлы системы и от их имени запускаются задачи, обеспечи!вающие ту или иную функциональность UNIX.Как правило, большинство пользователей являются реальными людьми,которые регистрируются в системе, запускают те или иные программы,короче говоря, используют UNIX в своей работе.В системе существует один пользователь, обладающий неограниченнымиправами. Это суперпользователь или администратор системы.Каждый пользователь системы имеет уникальное имя (или регистрационноеимя — login name). Однако система различает пользователей по ассоцииро!ванному с именем идентификатору пользователя или(User Identifier).Понятно, что идентификаторы пользователя также должны быть уникаль!ными.
Пользователь является членом одной или нескольких групп — спи!сков пользователей, имеющих сходные задачи (например пользователей,работающих над одним проектом). Принадлежность к группе определяетдополнительные права, которыми обладают все пользователи группы.
Ка!ждая группа имеет уникальное имя (уникальное среди имен групп, имягруппы и пользователя могут совпадать), но как и для пользователя, внут!ренним представлением группы является ее идентификатор(GroupIdentifier). В конечном счете UID и GID определяют, какими правами об!ладает пользователь в системе.Вся информация о пользователях хранится в файлеЭто обыч!ный текстовый файл, право на чтение которого имеют все пользователисистемы, а право на запись имеет только администратор (суперполь!зователь). В этом файле хранятся пароли пользователей, правда врованном виде.
Подобная открытость — недостаток с точки зрения без!опасности, поэтому во многих системах зашифрованные пароли хранятся вотдельном закрытом для чтения и записи файле /etc/shadow.Аналогично, информация о группах хранится в файле /etc/group и содер!жит списки пользователей, принадлежащих той или иной группе.Атрибуты пользователяКак правило, все атрибуты пользователя хранятся в файле /etc/passwd.
Вконечном итоге, добавление пользователя в систему сводится к внесениюв файл /etc/passwd соответствующей записи. Однако во многих системахинформация о пользователе хранится и в других местах (например, в спе!циальных базах данных), поэтому создание пользователя простым редак!тированием файла /etc/passwd может привести к неправильной регистра!ции пользователя, а иногда и к нарушениям работы системы. Вместо этогопри возможности следует пользоваться специальными утилитами, постав!ляемыми с системой.
Более подробно мы поговорим об этом при обсужде!нии задач администрирования UNIX в конце этой главы.www.books-shop.comГлава 1. Работа в операционной52UNIXСейчас же наша задача — разобраться, какую информацию хранит системао пользователе. Для этого рассмотрим фрагмент файлаnoКаждая строка файла является записью конкретного пользователя и имеетследующий формат:— всего семь полей (атрибутов), разделенных двоеточиями.Рассмотрим подробнее каждый из атрибутов:nameРегистрационное имя пользователя. Это имя пользова!тель вводит в ответ на приглашение системы login.
Длянебольших систем имя пользователя достаточно произ!вольно. В больших системах, в которых зарегистриро!ваны сотни пользователей, требования уникальностизаставляют применять определенные правила выбораимен.Пароль пользователя в закодированном виде. Алгорит!мы кодирования известны, но они не позволяют деко!дировать пароль.
При входе в систему пароль, которыйвы набираете, кодируется, и результат сравнивается сполем passwd!encod. В случае совпадения пользовате!лю разрешается войти в систему.Даже в закодированном виде доступность пароля пред!ставляет некоторую угрозу для безопасности системы.Поэтому часто пароль хранят в отдельном файле, а вполе passwd!encod ставится символ 'х' (в некоторыхсистемах '!').Пользователь, в данном поле которого стоит символ '*',никогда не сможет попасть в систему.
Дело в том, чтоалгоритм кодирования не позволяет символу '*' поя!виться в закодированной строке. Таким образом, совпа!дение введенного и затем закодированного пароля и '*'невозможно. Обычно такой пароль имеют псевдополь!зователи.www.books-shop.comПользователи53UIDИдентификатор пользователя является внутреннимпредставлением пользователя в системе. Этот иденти!фикатор наследуется задачами, которые запускает поль!зователь, и файлами, которые он создает. По этомуидентификатору система проверяет пользовательскиеправа (например, при запуске программы или чтениифайла). Суперпользователь имеет UID = 0, что дает емунеограниченные права в системе.GIDОпределяет идентификатор первичной группы пользова!теля.
Этот идентификатор соответствует идентификато!ру в файле /etc/group, который содержит имя группы иполный список пользователей, являющихся ее членами.Принадлежность пользователя к группе определяет до!полнительные права в системе. Группа определяет об!щие для всех членов права доступа и тем самым обес!печивает возможность совместной работы (например,совместного использования файлов).commentsОбычно, это полное "реальное" имя пользователя. Этополе может содержать дополнительную информацию,например, телефон или адрес электронной почты.
Не!которые программы (например,и почтовыесистемы) используют это поле.Домашний каталог пользователя. При входе в системупользователь оказывается в этом каталоге. Как правило,пользователь имеет ограниченные права в других частяхфайловой системы, но домашний каталог и его подка!талоги определяют область файловой системы, где онявляется полноправным хозяином.Имя программы, которую UNIX использует в качествекомандного интерпретатора.
При входе пользователя всистему UNIX автоматически запустит указанную про!грамму. Обычно это один из стандартных командных ин!терпретаторов(Bourne shell),(C shell) илиshell), позволяющих пользователю вводитькоманды и запускать задачи. В принципе, в этом полеможет быть указана любая программа, например, ко!мандный интерпретатор с ограниченными функциями(restricted shell), клиент системы управления базой дан!ных или даже редактор.
Важно то, что, завершив выпол!нение этой задачи, пользователь автоматически выйдетиз системы. Некоторые системы имеют файл /etc/shells,содержащий список программ, которые могут быть ис!пользованы в качестве командного интерпретатора.www.books-shop.com54Глава 1. Работа в операционной системеПаролиНаличие пароля позволяет защитить ваши данные, а возможно (если вы —суперпользователь) и всю систему в целом. Уточним: наличие хорошегопароля, потому что неверно выбранный пароль — серьезная брешь в безо!пасности системы. Поэтому мы более подробно остановимся на основныхрекомендациях по выбору пароля.Назначить или изменить пароль можно командойОбычныйпользователь может изменить свой пароль, администратор может назна!чить пароль любому пользователю.Перед запуском программыстоит держать в голове общее прави!ло выбора пароля: пароль должен хорошо запоминаться и быть труднымдля подбора.Не рекомендуется записывать пароль, его необходимо запомнить.
Собствен!ная фамилия, кличка любимой собаки, год и месяц рождения, безусловно,легки для запоминания, но такие пароли нетрудно подобрать. Многие сис!темы предлагают пароль, сгенерированный самой системой. Предполагается,что он совершенно лишен какого!либо смысла, т. е. не содержит имен, на!званий и вообще каких!либо произносимых слов. Хотя система предлагаетего в виде, удобном для запоминания, это не всегда помогает.Если по правилам работы в вашей системе можно самостоятельно выбратьпостарайтесь подобрать что!нибудь, что легче будет запомнить.
Ни!когда не используйте примеры паролей, приводимые в книгах и руковод!ствах (чтобы не было искушения, в этой книге примеры не приводятся).Многие системы требуют, чтобы пароль удовлетворял следующим требо!ваниям:длина пароля не должна быть меньше шести символов;пароль должен включать по крайней мере 2 алфавитных символа иодну цифру или специальный символ;пароль должен содержать хотя бы 3 символа, не встречавшихся ввашем предыдущем пароле.Пароли играют значительную роль в обеспечении безопасности системы.Общие рекомендации, адресованные прежде всего администраторам, мож!но свести к следующим:1.
В системе не должно существовать незащищенных пользовательскихвходов. Это относится как к пользовательским входам без пароля, таки ко входам пользователей, покинувших систему. Если пользовательдлительное время не работает в системе, удалите его запись или хотябы защитите его вход символом '*' в поле пароля.2. Если ваша система допускает, установите минимальную длину пароля.В зависимости от требований безопасности в системе это число можетварьироваться от 8 до 12.www.books-shop.comПользователи системы55Всегда меняйте пароль в следующих случаях:• если кто!либо узнал ваш пароль.• если пользователь больше не работает в вашей системе, все па!роли, которые он знал, должны быть изменены.• если меняется администратор системы, должны быть измененывсе системные пароли.• если у вас появилось подозрение, что файл паролей был считанпо сети, будет разумным сменить все пароли в системе.4.