Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Aliens Vs Predator |#5| Unexpected meeting
Aliens Vs Predator |#4| Boss fight with the Queen
Aliens Vs Predator |#3| Escaping from the captivity of the xenomorph
Aliens Vs Predator |#2| RO part 2 in HELL

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Водолазкий В. Весь текст 198.25 Kb

Путь к Linux

Предыдущая страница Следующая страница
1 ... 6 7 8 9 10 11 12  13 14 15 16 17

---------------------------------------------------------------------------

Первая группа кодов указывает на категорию пользователей (a-все, u-владелец
файла, g-группа, к которой принадлежит владелец, o-все прочие). Плюс или
минус устанавливают или отменяют атрибут, который кодируется тем же
символом, который появляется при выводе каталога.

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

chmod u+rwx prettysript

---------------------------------------------------------------------------

chmod g+rx prettyscript
chmod o+x prettyscript

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

Читатель, как всегда оказывается прав. Приведенный выше синтаксис chmod
ориентирован больше на любителя, чем на настоящего UNIX-оида, который не
боится использовать самые разные системы счисления. Дело в том, что впервые
UNIX был реализован на компьютерах фирмы Digital, в которой в отличие от
Intel была принята не шестнадцатиричная, а восьмиричная система счисления
(каждый разряд числа, записанного в этой системе счисления соответствует не
четырем, а трем двочным разрядам, а при записи чисел вполне хватает цифр от
0 до 7). Обратите внимание, что права доступа для каждой категории
пользователей могут быть записаны с помощью одного восьмиричного числа. И
chmod поддерживает этот формат.

Вот например, как можно записать приведенную выше настройку прав доступа с
помощью одной строки:
---------------------------------------------------------------------------

chmod 751 prettyscript

---------------------------------------------------------------------------

Что означает сие непонятное число? Давайте расшифруем его биты и, как

говорится, "приведем в соответствие". Вот что мы имеем:

u7 g5 o1

1 1 1 1 0 1 0 0 1

r w x r w x r w x

В результате, при распечатке каталога мы получим вот такую запись прав
доступа:

   * rwxr-x-x

что в полной мере соответствует нашим ожиданиям. Кстати, в литературе и
документации к системе обычно ссылка на права доступа дается именно в
восьмиричном счислении, поэтому наткнувшись на предложение типа "установите
права доступа для данного файла 640", не мудрствуйте, а просто выполните
команду chmod 640 <имя файла>.

Кто варежку потерял?

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

Совершенно верно - к конфузам. Вот типовая ситуация. Суперпользователь
(root), обладает всеми необходимыми полномочиями, чтобы установить, ну
скажем, BBS RoCat (Roman Catacombs-диск LinuxWare 1.0). И совершенно
спокойно создает дерево каталогов на пару мегабайт. После этого вы садитесь
за чтение документации и с ужасом обнаруживаете, что и имя каталога должно
быть вполне определенное (ну это-то просто, можно использовать либо команду
mv -- чисто DOS-овский подход, либо воспользоваться командой ln, что
предпочтительнее), да и владельцем файлов должен быть системный оператор с
идентификатором BBS из группы BBS.

Но ведь не распаковав архив, вы не сможете узнать о необходимости
использования вполне специфического идентификатора пользователя и группы!
Как же быть? Стирать с диска только что распакованный каталог и повторять
весь процесс установки с самого начала? Или можно каким-либо образом
изменить имена владельцев файлов и групп?

Можно, и без проблем. Для этого вы можете воспользоваться командой chown,
которая позволит изменить идентификатор владельца любого файла, каталога и
даже дерева каталогов. Для изменения группы владельца файла вы можете
использовать команду chgrp. А UNIX при попытке доступа к файлу сопоставит
идентификатор пользователя и его группу с соответствующими полями в
характеристиках файла и сделает соответствующие выводы.

Если оба идентификатора совпадают-вы законный владелец файла. Если
совпадает только идентифкатор группы-вы можете пользоваться только теми
правами, которые предоставляются члену группы. А уж если не совпал ни один
из идентификаторов-вам доступны только права доступа класса "others".

Группы и пользователи

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

Отметим, что кличка нужна системе только для того, чтобы вы не путали
UNIX-систему и концлагерь, самому же компьютеру, наоборот, удобнее
использовать числовые идентификационные номера.

Как показала практика использования вычислительных машин, зачастую над
одним проектом работает несколько пользователей. обЦединенных в так
называемые группы. Группы пользователей имеют ряд общих данных (например,
работая над одним проектом разумно пользоваться единой версией библиотек и
готовить единый макет технической документации к проекту). И естественно,
что для пользователей "своей" группы целесообразно сделать некоторые
послабления.

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

Справочная информация о пользовательских группах обычно хранится в файле
/etc/group, который носит чисто информационный характер и иногда даже не
используется. А вот информация о пользователях жизненно необходима для
нормального функционирования системы.

Пароли и профили пользователей

Концепция паролей традиционна для системы UNIX и поддерживается в
практически неизменном виде вот уже более двух десятков лет. Идея
проста-проверить, имеет ли пользователь право доступа к системе путем
сравнения идентификатора и пароля, введенных пользователем с эталонами,
хранящимися в файле паролей (обычно -- /etc/passwd).

Это обычный ASCII-файл, который вы можете отредактировать с помощью vi или
Emacs. Как и большинство конфигурационных файлов UNIX, passwd состоит из
записей, поля которых разделены двоеточиями. Вот пример одной из записей:
---------------------------------------------------------------------------

vovka:Xv75fs1Z521:102:0:Vladimir Vodolazkiy:/home/vovka:/bin/tcsh

---------------------------------------------------------------------------

Первое поле-vovka, содержит идентификатор пользователя. За ним следует
пароль, который хранится в зашифрованном виде. Дело в том, что обычно файл
/etc/passwd открыт на чтение всем категориям пользователей, поскольку
позволяет в удобной форме получить информацию о том, кто и как работает в
системе. И нужно это прежде всего не для людей, а для программ-демонов,
выполняющих автоматическую обработку информации. Дабы максимально
затруднить злоумышленнику взлом пароля в качестве ключа шифрования
используется сам пароль. Поэтому при загрузке системы система шифрует
введенный пользователем пароль и проверяет, совпадает ли полученная строка
с содержанием поля в /etc/passwd. После чего и решает-пускать пользователя
в систему или нет. Вся информация, которая содержится в оставшихся полях,
по большому счету относится к профилю пользователя и используется при
загрузке системы, о чем мы уже писали ранее.

Несколько полезных советов

В заключение позвольте поделиться с вами некоторыми нехитрыми приемами,
которые позволяют более эффективно использовать парольную систему
Linux-системы.

Как добавить пользователя?

Для этого вы должны выполнить несколько действий. Во-первых, необходимо
создать регистрационную запись в /etc/passwd. Проще всего воспользоваться
утилитой adduser, которая автоматически сформирует и добавит запись в файл
/etc/passwd. Но при желании вы можете выполнить эту поерацию и вручную.
Во-вторых, для того, чтобы пользователь мог войти в систему, необходимо,
чтобы его "домашний каталог" был ему доступен (то есть, чтобы на момент
регистрации соответствующий диск был смонтирован!). Если вы использовали
упоминавшуюся выше программу, то можете не волноваться-каталог будет создан
автоматически. Далее, вы должны позаботиться о том, чтобы в системе была
установлена та оболочка, с которой будет работать пользователь. Если вы не
уверены, поместите в это поле /bin/sh-уж эта-то программа найдется на диске
всегда!

Как создать группу?

Для этого предназначена команда groupadd. Ее следует вызывать раньше, чем
вы начнете создавать регистрационные записи пользователей. В противном
случае вам придется в команде adduser вводить числовые идентификаторы GID
(group ID). А вот если группа уже заведена, то вы можете на соответствующий
вопрос команды adduser просто набрать на клавиатуре название группы, к
которой хотите отнести нового пользователя.

Обязательно ли нужно грузить одну из оболочек?

Ну зачем же? Если ваш пользователь должен работать только с одной и той же
прикладной программой (клиентской частью какой-нибудь мощной
многопользовательской системы) укажите полное имя этой программы вместо
оболочки! И при завершении работы с программой пользователь автоматически
отключится от системы, а кроме того, физически не сможет поиграть в тетрис
в рабочее время!

Как запретить регистрацию пользователя в системе, не изгоняя его из списков
пользователей?

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

Как создать "гостевой вход" в систему, не требующий ввода пароля?

Для этого достаточно не указывать никакого пароля при добавлении
пользователя с помощью adduser, или стереть пароль, сдела это поле пустым:
vovka::102... Имейте в виду, что с системным пользователем (root) этот
номер не пройдет!

"Ежовые рукавицы" или "свободная любовь"?

Конечно же, немаловажную роль в обеспечении эффективности системы защиты от
несанкционированного доступа играет и политика системного администратора.
Будете ли вы тираном, маленькоим, но свирепым, или же позволите
пользователям своей системы "пожирать" друг друга, взирая на их мышиную
возню с олимпийских высот привилегий суперпользователя - зависит только от
вас. Но вот что вам необходимо сделать в любом случае, так это по крайней
мере обЦяснить конечным пользователям, для чего в системы введена система
паролей, если вы не пытаетесь противостоять козням ЦРУ.

И вот тут то довольно часто искушенного системного программиста ставит в
тупик необходимость разработки "примитивной инструкции пользователю", в
которой необходимо обЦяснять, казалось бы, очевидные вещи. Поэтому
позвольте привести образцовое методическое пособие, позволяющее "повысить
Предыдущая страница Следующая страница
1 ... 6 7 8 9 10 11 12  13 14 15 16 17
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 
Комментарии (1)

Реклама