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

ЛАБ2

.docx
Скачиваний:
9
Добавлен:
03.01.2024
Размер:
8.01 Mб
Скачать

МИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ,

СВЯЗИ И МАССОВЫХ КОММУНИКАЦИЙ РОССИЙСКОЙ ФЕДЕРАЦИИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет Инфокоммуникационных сетей и систем

Кафедра Защищенных систем связи

Дисциплина Безопасность Astra-Linux

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ №2

      ИЗУЧЕНИЕ ПРАВ ДОСТУПА К ФАЙЛАМ В LINUX

(тема отчета)

Направление/специальность подготовки

10.03.01 Информационная безопасность

(код и наименование направления/специальности)

Студент:

Травкина Е.А., ИКБ-14

(Ф.И.О., № группы) (подпись)

Федченко А.С., ИКБ-14

(Ф.И.О., № группы) (подпись)

Мельцин Л.М., ИКБ-14

(Ф.И.О., № группы) (подпись)

Преподаватель:

ст. преп. Гельфанд А.М.

(должность, Ф.И.О.) (подпись)

Цель лабораторной работы

  1. Ознакомиться с правами доступа в операционной системе Linux.

  2. Понять структуру прав доступа.

  3. Освоить основные команды по обработке и управлению правами доступа.

Используемое программное обеспечение

Для выполнения лабораторной работы используется установленный дистрибутив ОС Linux.

Задание на лабораторную работу

  1. Ознакомиться с командами Linux для управления доступом.

  2. Создать две группы с названием group1 и group2.

groupadd group1 group2

Создать пять пользователей с именами user1, user2 … user5 и добавить их в группу согласно приведенной ниже таблице

user1

user2

user3

user4

user5

group1

group2

Рис. 1. Пример создания user4 и user5

Дополнительно используем команду для изменения владельца для всех файлов и подкаталогов в указанном каталоге. Пример для user1:

chown -R user1 /home/user1

  1. Авторизоваться за каждого пользователя и создать в домашнем каталоге структуру каталогов и файлов. Структура приведена на рис.6.

Рис. 2. Пример создания структуры каталога user2

  1. Дать доступ для редактирования file2 второму пользователю.

sudo setfacl –m “u:user2:-w-” ~/*/*/*/file2

  1. Дать доступ для редактирования file3 всем пользователям.

sudo chmod o+w ~/*/*/file3

  1. Дать доступ для чтения и редактирования file4 первому и второму пользователю.

sudo setfacl –m “u:user1:rw-” ~/*/*/*/file4

sudo setfacl –m “u:user2:rw-” ~/*/*/*/file4

  1. Дать доступ для запуска test3 только первому пользователю.

sudo setfacl –m “u:user1:--x” ~/*/*/test3

  1. Запретить доступ для запуска test1 первому пользователю.

sudo setfacl –m “u:user1:rw-” ~/*/*/test1

  1. Запретить доступ для чтения file5 третьему и пятому пользователю.

sudo setfacl –m “u:user3:---” ~/*/*/file5

sudo setfacl –m “u:user5:---” ~/*/*/file5

  1. Запретить доступ для запуска test2 всем пользователям.

sudo chmod a-x ~/*/*/*/test2

  1. Запретить доступ для редактирования file7 третьему и четвертому пользователю, но разрешить всем остальным.

sudo chmod g-w,o+r ~/*/*/*/file7

  1. Дать доступ для чтения и редактирования file1 пятому пользователю, всем остальным запретить.

sudo setfacl –m “u:user5:rw-” ~/*/*/file1

  1. Дать доступ для чтения и редактирования file6 первому и второму пользователю, остальным запретить.

sudo setfacl –m “u:user5:rw-” ~/*/*/*/file6

sudo setfacl –m “u:user2:rw-” ~/*/*/*/file6

sudo chmod o-rw ~/*/*/*/file6

Порядок выполнения работы

Запустить Терминал. Авторизоваться под root для создания пользователей и групп. Создавать структуру каталог и файлов, надо авторизоваться под каждым созданным пользователем.

Сведенья необходимые для выполнения работы

  1. Создание пользователя в Linux (useradd)

useradd [опции] имя пользователя

Некоторые из опций:

-d Домашняя директория.

-s Консольная оболочка.

-p Пароль пользователя.

-g Главная группа пользователя.

-G Другие группы, к которым принадлежит пользователь.

-m Принудительное создание домашней директории.

Пример:

useradd -g group -s /bin/bash -d /home/user –m user

Все созданные пользователи хранятся в файле /etc/passwd.

Создавать пользователей, корректировать их параметры можно редактируя этот файл.

  1. Создание группы в Linux (groupadd)

groupadd [Опции] имя группы

Пример:

groupadd group

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

  1. Изменение режима доступа к файлам (chmod)

chmod режим файл

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

Владелец

Группа

Прочие

(u)

(g)

(o)

rwx

rwx

rwx

Здесь владелец, члены группы и все прочие пользователи обладают правами чтения файла, записи в него и его выполнения. В примере показаны обозначения, как для класса доступа, так и для прав доступа внутри класса. Для задания режима доступа в символьном виде используется следующий синтаксис:

[кому] операция права

Часть [кому] есть комбинация букв u, g и o (владелец, члены группы и прочие пользователи соответственно). Если часть кому опущена или указано a, то это эквивалентно ugo.

Операция может быть: + (добавить право), - (лишить права), = (в пределах данного класса присвоить права абсолютно, то есть добавить указанные права и отнять неуказанные).

Права - любая осмысленная комбинация следующих букв:

r – право на чтение.

w – право на запись.

x – право на выполнение (поиск в каталоге).

s – при выполнении переустанавливать действующий идентификатор пользователя или группы.

t – после выполнения программы сохранять сегмент команд (бит навязчивости).

l – Учет блокировки доступа.

Опустить часть права можно только если операция есть = (для лишения всех прав). Если надо сделать более одного указания об изменении прав, то при использовании символьного вида в правах не должно быть пробелов, а указания должны разделяться запятыми. Например, команда chmod u+w,go+x f1 добавит для владельца право писать в файл f1, а для членов группы и прочих пользователей - право выполнять файл. Права устанавливаются в указанном порядке. Право s можно добавлять только для пользователя и группы, право t - только для пользователя. Чтобы установить права, позволяющие владельцу читать и писать в файл, а членам группы и прочим пользователям только читать, надо использовать следующую запись:

chmod u=rw,go=r f1

Позволить всем выполнять файл f2

chmod +x f2

  1. Изменение владельца файла (chown)

chown [опции] пользователь файл|каталов

Некоторые опции:

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

-v подробный режим. Показывает все действия, выполняемые chown; сообщает, у каких файлов были изменены владельцы в результате выполнения команды, а какие файлы остались без изменений.

-c подобна опции -v, но сообщает только о тех файлах, что были изменены.

Пример:

chown user2 /home/user1/file

  1. Изменение группы владельца (chgrp)

chgrp [опции] группа файл|каталог

Опции для этой команды такие же, как и у chown, и она используется очень похожим способом.

Пример:

chgrp group2 /home/user1/file

  1. Для установки и удаления ACL (sefacl).

setfacl [параметры] [{-m|-x} ACL] файлы

getfacl выводит установленные права доступа

Рис. 3. Структура каталогов

user1…user5 – домашние каталоги пользователей.

Цифрами обозначены внутренние каталоги.

file1… file7 – текстовые файлы.

test1… test3 – исполняемые файлы.

Для создания, исполняемого файлы, напишем простейшую программу на языке С++ и откомпилируем ее с помощью утилиты gcc. Используя текстовый редактор nano, создадим текстовый файл test.c с текстом программы:

#include <stdio.h>

main(){

printf(“Hello World!\n”);

}

Рис. 4. Пример содержания исполняемого файла

Сохранив файл, выполним команду:

vi /home/user/test.c

gcc -o test1 test.c

Появиться исполняемый файл, который можно запустить с помощью команды

./test1

Рис. 5. Запуск исполняемого файла test1

И так сделать для всех исполняемых файлов в лабораторной работе.

Вывод:

В ходе выполнения лабораторной работы №2 были изучены права доступа пользователей операционной системы Linux. Было изучено создание пользователей, их каталогов и файлов, а также освоили основные команды по обработке и управлению правами доступа.

Соседние файлы в предмете Безопасность Astra Linux