Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Учебное пособие 800521

.pdf
Скачиваний:
3
Добавлен:
01.05.2022
Размер:
4.21 Mб
Скачать

Флаг типа (flag) может быть одним из следующих: Таблица 6.1

Флаг

Описание

 

 

-

Отсутствие флага

 

 

l - лат. «л»

Символическая ссылка (symbolic link)

 

 

d

Директория (directory)

 

 

b

Блочное устройство (block device)

 

 

c

Символьное устройство (character device)

 

 

p

Канал, устройство fifo (fifo device)

 

 

s

Unix сокет (unix domain socket)

 

 

Посмотреть права доступа на объекты можно командой ls c ключом -l. Также можно добавить ключ -a, для того, чтобы были отображены скрытые объекты:

/media/Work/applicat > ls -l

 

 

итого 1308

 

 

-rwx------

1 allexserv nogroup 638116 2009-06-25

20:42

autumnscolor.zip

 

 

 

drwxr-xr-x 13 allexserv nogroup

4096 2009-05-31 14:58

phpBB3

 

 

 

drwx------ 10 allexserv nogroup

4096 2009-06-25

14:29

phpMyAdmin-3.2.0-all-languages

 

 

-rwx------

1 allexserv nogroup 677334 2009-06-25

20:42

pro_ubuntu.zip

 

 

 

drwxr-xr-x

2 allexserv nogroup

4096 2009-06-25 14:29

безымянная папка

Для назначения прав используются три группы флагов, первая определяет права для владельца, вторая - права для основной группы пользователя, третья - для всех остальных пользователей в системе.

61

Для файлов: r - право на чтение из файла; w - разрешает запись в файл (в частности перезапись или изменение); x - позволяет исполнить файл.

Для каталогов, флаги r w x имеют несколько отличный смысл: r - позволяет читать только имена файлов в каталоге; x - позволяет иметь доступ к самим файлам и их атрибутам (но не именам); w имеет смысл только в сочетании с x, и позволяет (в дополнение к x) манипулировать с файлами в каталоге (создавать, удалять и переименовывать). w без x - не имеет никакого эффекта.

Рассмотрим табл. 6.2:

 

 

 

 

 

 

Таблица 6.2

OCT

BIN

Mask

Права на файл

Права на каталог

 

 

 

 

 

 

0

0

- - -

отсутствие прав

отсутствие прав

 

 

 

 

 

 

 

1

1

- - x

права

на

доступ к файлам и их

 

 

 

выполнение

 

атрибутам

 

2

10

- w -

права на запись

отсутствие прав

 

 

 

 

 

 

3

11

- w x

права на запись и

все, кроме доступа к

выполнение

 

именам файлов

 

 

 

 

 

 

 

 

 

4

100

r - -

права на чтение

только

чтение

имен

файлов

 

 

 

 

 

 

 

 

 

 

 

права на чтение и

чтение имен файлов и

5

101

r - x

доступ

файлам

и их

выполнение

 

 

 

 

 

 

атрибутам

 

6

 

rw -

права на чтение и

только

чтение

имен

10

запись

 

файлов

 

 

 

 

 

 

 

 

 

7

111

rw x

полные права

 

все права

 

 

 

 

 

 

 

 

 

62

Для администрирования часто удобнее использовать не буквенное представление прав, а цифровое, в восьмеричном представлении (оно короче). Так, например, права на файл всем и вся, соответствуют записи 777 (что аналогично символьному представлению rwxrwxrwx).

Существуют также специальные биты, такие как SUID, SGID и Sticky-бит. SUID, SGID влияют на запуск файла, а Sticky влияет на определение владельца объектов в каталоге. При их применении необходимо использовать не три восьмеричных цифры, а 4. Зачастую, в различной технической литературе права обозначаются именно 4-мя цифрами, например 0744. Многие стараются не использовать специальные биты, сетуя на безопасность (и не без основательно), но, в некоторых ситуациях без них не

обойтись.

 

 

 

 

 

Рассмотрим пример:

 

 

 

 

-rwx------ 1

testsrv

nogroup

677334

2009-06-25

20:42

example.zip

 

 

 

 

 

drwxr-xr-x 2

testsrv

nogroup

4096

2009-06-25

14:29

безымянная папка

 

 

 

 

 

Для первой строки:

-первый символ (флаг) пустой: » - » - для файлов;

-следующие три символа (rwx) обозначают права для владельца файла, в данном случае полные права для пользователя testsrv;

-следующие три (- - -) - определяют права для группы nogroup, в нашем примере для всех пользователей группы nogroup доступ запрещен;

-последние три символа (- - -) определяют права для всех остальных пользователей, в нашем случае доступ запрещен.

Восьмеричное обозначение прав для файла example.zip:

0700.

Для второй строки (это каталог, о чем свидетельствует флаг «d»), по аналогии:

63

-Для владельца каталога testsrv - полные права (rwx);

-Для группы nogroup - права на листинг каталога и доступ к файлам (r-x);

-Для пользователя «все остальные» - права на листинг каталога и доступ к файлам (r-x).

Восьмеричное обозначение в этом примере: 0755.

6.2.Команда изменение прав пользователей

игрупп

Права устанавливаются командой chmod. Команда chmod поддерживает установку прав как в восьмеричном представлении, так и в символьном (маска режима доступа).

Синтаксис команды:

chmod <опции> <права> <объект или регулярное выражение>

Из самых полезных и часто используемых опций можно выделить одну:

-R - рекурсивное назначение прав, т.е. назначить права всем объектам, руководствуясь регулярным выражением.

Например:

-chmod -R 755 * - назначение прав всем объектам текущего каталога, включая подкаталоги;

-chmod -R 700 z* - назначить полные права для владельца и исключить права для группы и всех остальных для всех объектов, которые начинаются именоваться на z, находящиеся в текущем каталоге и его подкаталогах.

Права можно записывать как в восьмеричном представлении так и в символьном. В восьмеричном представлении, для стандартных прав, указываются 3

восьмеричные цифры (1-я для владельца, 2-я для группы, 3-я для всех остальных. См. табл. 6.2).

Например:

-chmod 744 example.txt - установит права для файла example.txt - (r w x r - - r - -);

64

-chmod -R 775 examplecat - установит права на каталог examplecat и на все объекты, что внутри этого каталога, включая содержимое подкаталогов (r w x r w x r - x);

-chmod 700 * - установит права только для владельца на все файлы и каталоги в текущем каталоге, включая подкаталоги и их объекты (rwx - - - - - -).

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

-u - владельцу объекта;

-g - группе объекта;

-o - пользователю «все остальные»;

-a - все вышеперечисленное.

Для назначения прав используются три знака: минус, плюс или равно:

-- - убрать указанные права с объекта;

-+ - добавить указанные права к существующим правам объекта;

-= - заменить права объекта на указанные.

Пример:

-chmod g+w example.txt - добавить пользователям группы файла example.txt права на запись в этот файл;

-chmod a=rwx example.doc - заменит существующие права на файле example.doc на полные права всем;

-chmod o-w example.cgi - уберет права на запись для пользователя «все остальные».

-chmod ug=rw example2.doc - выставить права на чтение

изапись файлу example2.doc для владельца и группы. Обратите внимание, что если у пользователя «все остальные» были какие-либо права, они сохранятся в неизменном виде.

Использование символьного представления позволяет редактировать права файлов более гибко:

-chmod u+x,g+w-x example.txt - добавить владельцу файла example.txt права на его выполнение, пользователям

65

группы разрешить запись и запретить выполнение и оставить права остальных пользователей без изменений;

- chmod u=rwx,g+w,go-x example.doc - установить полные права для владельца файла, разрешить пользователям группы запись и запретить выполнение всем пользователям, кроме владельца файла.

Символьное назначение окажет неоценимую услугу, если требуется добавить права на объект к уже существующим правам.

6.3.Биты SUID, SGID и Sticky

Linux отслеживает не символьные имена владельцев и групп, а их идентификаторы (UID - для пользователей и GID для групп). Эти идентификаторы хранятся в файлах /etc/passwd и /etc/group соответственно. Символьные эквиваленты идентификаторов используются только для удобства, например, при использовании команды ls, идентификаторы заменяются соответствующими символьными обозначениями.

vipw exampleuser:x:1000:0:exampleuser,,,:/home/exampleuser:/b

in/bash

1000 - идентификатор (UID) пользователя exampleuser. 0 - идентификатор (GID) основной группы (root) для

пользователя exampleuser. /etc/group exampleuser:x:1000:

1000 - идентификатор (GID) дополнительной группы exampleuser пользователя exampleuser.

Если при создании пользователя основная группа не указана явно, то основной группой пользователя будет группа с тем же именем, что и имя пользователя.

Что касается процессов, то с ними связано не два идентификатора, а 4-е: реальный и эффективный

66

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

Процесс не может явно изменить ни одного из своих четырех идентификаторов, но есть ситуации когда происходит косвенная установка новых эффективных идентификаторов процесса. Дело в том, что существуют два специальных бита: SUID (Set User ID - бит смены идентификатора пользователя) и SGID (Set Group ID - бит смены идентификатора группы). Когда пользователь или процесс запускает исполняемый файл с установленным одним из этих битов, файлу временно назначаются права его (файла) владельца или группы (в зависимости от того, какой бит задан). Таким образом, пользователь может даже запускать файлы от имени суперпользователя.

Восьмеричные значения для SUID и SGID - 4000 и 2000. Символьные: u+s и g+s.

Вобщем, установка битов SUID или SGID позволит пользователям запускать исполняемые файлы от имени владельца (или группы) запускаемого файла. Например, как говорилось выше, команду chmod по умолчанию может запускать только root. Если мы установим SUID на исполняемый файл /bin/chmod, то обычный пользователь сможет использовать эту команду без использования sudo, так, что она будет выполнятся от имени пользователя root. В некоторых случаях очень удобное решение. Кстати по такому принципу работает команда passwd, c помощью которой пользователь может изменить свой пароль.

67

6.4.Лабораторная работа № 6

Управление пользователями и обеспечение безопасности.

Цель работы: Приобрести опыт конфигурирования системы, управления пользователями и обеспечение безопасности.

План выполнения:

1. В текущем каталоге создать каталог Courses. По умолчанию у него такие права доступа rwrr-xr-x (755). Измените его следующим образом:

Таблица 6.3

 

 

Владелц

 

Группа

 

 

Остальные

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Права

 

Права

Права

Права

 

Права

Права

Права

 

Права

Права

 

на

 

на

на

на

 

на

на

на

 

на

на

 

чтение

запись

запуск

чтение

запись

запуск

чтение

запись

запуск

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда

да

 

да

да

да

 

нет

да

нет

 

нет

да

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда

да

 

нет

да

нет

 

да

нет

нет

 

нет

да

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда

нет

 

да

нет

нет

 

нет

да

да

 

нет

нет

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда

нет

 

нет

да

да

 

нет

да

нет

 

нет

нет

4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

68

2. Создать файл maths.txt в каталоге Courses. По умолчанию у него 664 права достпа.

●Команда 1: дать полные права доступа всем ●Команда 2: дать права на чтение и запуск ●Команда 3: дать права только на чтение

6.5.Контрольные вопросы

1.Права доступа. Представление права доступа

2.Команды изменения прав доступа

3.Проблематика работы от root и ее обходы

4.Основные биты и их особенности

69

7.СЕТЕВЫЕ НАСТРОЙКИ

Интерфейсом с точки зрения ОС является устройство, через которое система получает и передает IP-пакеты. Роль интерфейса локальной сети может выполнять одно (или несколько) из следующих устройств: Ethernet-карта, ISDN- адаптер или модем, подключенный к последовательному порту. Каждое устройство (не весь компьютер!) имеет свой IP-адрес.

7.1.Команда ifconfig

После подключения драйверов можно настроить те интерфейсы, которые предполагается использовать. Настройка интерфейса заключается в присвоении IP-адресов сетевому устройству и установке нужных значений для других параметров сетевого подключения. Наиболее часто для этого используется программа ifconfig (ее название происходит от «interface configuration»).

Запуск ее без аргументов (или с единственным аргументом -a ) позволяет узнать, какие параметры установлены в данный момент для активных сетевых интерфейсов (в частности, для сетевой карты). Имеет смысл выполнить эту команду еще до подключения модулей: а вдруг у вас поддержка интерфейсов встроена в ядро и необходимые настройки сделаны в процессе инсталляции системы. Тогда вы в ответ можете получить информацию о параметрах вашей Ethernet-карты и так называемого «кольцевого интерфейса» или «обратной петли» - Local Loopback (интерфейс Ethernet при единственной сетевой карте обозначается как eth0, а кольцевой интерфейс - как lo). Если же по этой команде вы ничего не получите, то надо переходить к подключению модулей и настройке, и начинать надо с кольцевого интерфейса.

70