Главная страница
Навигация по странице:

  • Требования к оформлению отчета и защите

  • Лабораторная работа №9. Обеспечение безопасности в среде операционной системы GNU Linux. Цель работы

  • Порядок выполнения работы 1. Определить для обычного пользователя возможность для запуска команды tcpdump

  • Samba

  • Лабораторная работа №10. Виртуализация операционных систем в среде GNU Linux Цель работы

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

  • Лабораторная работа №11. Написание Shell скриптов Цель работы

  • Лабораторная работа №12. Утилиты мониторинга производительности в среде операционный системы GNU Linux Цель работы

  • Теоретические сведения Обзор основных утилит для работы с памятью в операционной системе Linux: free

  • LINUX практикум. Учебное пособие СанктПетербург 2016


    Скачать 0.55 Mb.
    НазваниеУчебное пособие СанктПетербург 2016
    Дата23.03.2022
    Размер0.55 Mb.
    Формат файлаpdf
    Имя файлаLINUX практикум.pdf
    ТипУчебное пособие
    #412278
    страница5 из 6
    1   2   3   4   5   6
    pvcreate – инициализация физического устройства как физического тома LVM.
    pvdisplay – отображение справочной информации о состоянии и использовании физического тома LVM.
    pvscan – сканирование физических устройств на наличие физических томов LVM.
    pvmov – перемещение данных с одного физического тома на другой.
    Для работы с группами томов предназначены следующие утилиты:
    vgcreate – создание группы томов.
    vgchange – активация и деактивация LVM в системе.

    37
    vgremove – удаление группы томов. Перед удалением удаляемую группу томов нужно деактивировать командой vgchange – a n VG_NAME.
    vgextend - добавление в группу томов еще одного физического тома с увеличением емкости группы томов.
    vgreduce – удаление физического тома из группы томов.
    vgexport – подготовка группы томов к экспортированию на другую систему.
    vgimport – импортирование группы томов с другой системы.
    vgscan – сканирование дисков для нахождения групп томов и их активация в системе.
    vgdisplay – отображение справочной информации по указанной группе томов.
    lvcreate – создание логического тома. При указании опции -s создаваемый логический том будет представлять собой моментальный снимок другого логического тома.
    lvremove – удаление логического тома. Перед удалением он должен быть размонтирован.
    lvextend – увеличение размера логического тома. Размер файловой системы на нем также должен быть увеличен соответствующими утилитами файловых систем. Например, для ext3/ext4 – resize2fs.
    lvreduce – уменьшение размера логического тома. Перед выполнением операции нужно уменьшить размер файловой системы.
    Для создания RAID уровней 1,0,4,5 и 6 в ОС Linux можно воспользоваться набором утилит mdadm, которые дают возможность на программном уровне реализовать массив заданного типа. Все основные действия, такие как создание массива заданного типа, добавление устройств, удаление устройств, осуществляются при помощи утилиты
    mdadm. Для проверки статуса устройств в массиве, его состояния и режима работы необходимо открыть файл в виртуальной файловой системе /proc/mdstat.
    Порядок выполнения работы
    1.
    Создать физические тома на существующих устройствах ввода-вывода.
    2.
    Создать группу томов.
    3.
    Добавить в группу несколько логических томов различного размера.
    4.
    Создать файловую систему на логическом томе.
    5.
    Добавить еще один физический том в группу томов.
    6.
    Расширить существующий логический том за счёт добавленного физического тома.
    7.
    Расширить файловую систему на логическом томе.
    8.
    Создать моментальный снимок логического тома.

    38 9.
    Выполнить резервную копию логического тома при помощи моментального снимка.
    10.
    Создать программный RAID массив 0 типа из двух логических томов, создать на полученном устройстве файловую систему.
    11.
    Создать программный RAID массив 1 типа из двух логических устройств. Создать файловую систему, проверить статус массива.
    12.
    Обеспечить автоматическое монтирование массивов при старте системы.
    Требования к оформлению отчета и защите
    Отчет должен содержать описание порядка выполнения всех команд и вывод, полученный при их исполнении. При защите отчета, исполнитель должен быть готов ответить на вопросы, касающиеся выполненных действий с логическими томами и утилитами для работы с RAID массивами.

    39
    Лабораторная работа №9. Обеспечение безопасности в среде
    операционной системы GNU Linux.
    Цель работы: Получение навыков конфигурирования параметров безопасности ОС Linux.
    Теоретические сведения
    В операционной системе Linux для выполнения части системных задач необходимо обладать привилегиями суперпользователя. Для выделения права на запуск определенных команд обычным пользователям применяется файл sudoers с описанием команд, доступных с командой
    sudo. С ее помощью можно определить команды, требующие повышенных полномочий обычным пользователям без установки битов SUID. Обычной практикой является использование даже для выполнения действий, связанных с управлением ОС, обычной, ограниченной учетной записи, с задействованием команды sudo для команд, требующих повышенных привилегий. Такое поведение позволяет минимизировать риск взлома системы, используя пользовательское окружение и уязвимости в пользовательском программном обеспечении. В случае работы с использованием прав суперпользователя недостатки, например, в браузере могут привести к получению злоумышленником прав на атакуемой системе.
    Парольная защита загрузчика ОС. В ОС Linux стандартным загрузчиком является grub, обладающий широкими возможностями по управлению загрузкой ОС. Одним из способов повышения безопасности является установка пароля на загрузку ОС. Таким образом затрудняются запуск системы даже при условии физического доступа злоумышленника к системе и его возможности по извлечению системного диска и подключению к своему оборудованию для старта системы.
    SELinux – система гибкого принудительного контроля доступа, призванная расширить возможности ОС по управлению доступом к ресурсам. При помощи специальных политик происходит определение возможностей по доступу к ресурсам со стороны пользователей и процессов. Классическая модель разграничения доступа, существующая в
    Linux, основана на избирательном доступе и списках контроля доступа.
    Основным ее недостатком является возможность самостоятельного назначения прав ресурсам пользователями, владельцами которых они являются, и отсутствие механизма назначения минимально возможных привилегий для пользователей в соответствии с принципом минимизации прав. Это может приводить к тому что пользователи могут назначать некорректные права на свои данные так, что к ним могут получить доступ другие пользователи, а также в случае проникновения в систему через приложения злоумышленник может изменить права на данные пользователя. В рамках системы SELinux выделяются следующие понятия:
    Домен – минимально разрешенные процессу действия в системе.

    40
    Роль – набор доменов. По сути разные комбинации доменов определяют разные по разрешенному функционалу типы выполняющихся процессов.
    Тип – тоже самое что домен, но имеющий отношение к статическим ресурсам, файлам, директориям.
    Контекст безопасности - совокупность атрибутов, при которых происходит выполнение процесса.
    Политика безопасности – набор правил, которые определяют допустимые и запрещенные действия субъектов, оперируя терминами ролей, доменов и типов.
    SELinux характеризуется режимом работы, который определяет его влияние на работу системы. Режим Enforcing означает что все действия, которые будут нарушать действующую политику безопасности, будут блокироваться, и информация о них регистрироваться в журнале.
    Permissive режим предполагает регистрацию нарушений политики безопасности без непосредственной блокировки. Этот режим удобен на этапе настройки системы для определения перечня необходимых для функционирования сервиса действий в системе. Disabled режим полностью отключает систему SELinux.
    Важным аспектом обеспечения безопасности является аудит журнала событий на предмет подозрительной активности. Лучше всего такие действия выполнять на периодической основе в автоматизированном режиме. Особое значение имеет возможность отсылки сообщения, так как данные при проникновении и получение злоумышленником прав суперпользователя могут быть стерты из журнала. Часть задач по анализу журналов безопасности может выполнять утилита logwatch с опцией отсылки уведомлений по какому-либо каналу коммуникации.
    Для удаленного доступа к Linux узлу обычно используется программа ssh, обеспечивающая защищенный обмен данными. Ее возможности позволяют организовать взаимодействие различными способами. К основным преимуществам можно отнести аутентификацию не только по паролю, но и по ключевой паре, которая должна быть предварительно сформирована и распространена на узлы для последующей аутентификации. Другим важным аспектом является возможность организации сетевых туннелей для инкапсуляции взаимодействия по любому протоколу, основанному на транспорте TCP, внутри SSH соединения.
    Порядок выполнения работы
    1. Определить для обычного пользователя возможность для запуска команды tcpdump через команду sudo.
    2. Установить пароль на загрузчик операционной системы.
    3. Отредактировать существующую политику для SELinux c сервисом Samba таким образом, чтобы можно было настроить работу с

    41 разделяемым ресурсом, находящимся в произвольном месте файловой системы.
    4. Настроить программу logwatch на отсылку оповещений по почте о неудачных попытках входа в систему.
    5. Настроить ограничения для работы программы ssh путем редактирования файла конфигурации. Запретить удаленный доступ к системе суперпользователю, изменить порт для подключения с 22 на иной
    (например 6622),
    6. Настроить аутентификацию программы SSH по ключевой паре вместо паролей.
    Требования к оформлению отчета и защите
    Отчет должен содержать описание порядка выполнения всех команд и вывод, полученный при их исполнении. При защите отчета, исполнитель должен быть готов ответить на вопросы, касающиеся выполненных настроек для повышения безопасности ОС Linux.

    42
    Лабораторная работа №10. Виртуализация операционных систем
    в среде GNU Linux
    Цель работы: Получение навыков использования систем виртуализации в среде ОС Linux.
    Теоретические сведения
    В операционной системе Linux доступно для использования несколько технологий виртуализации различного уровня: уровня гипервизора (Xen, KVM), уровня приложения (VirtualBox, VMware), на уровне операционной системы (LXC). В зависимости от задачи отдается предпочтение соответствующей технологии виртуализации. Наибольшую популярность в данный момент имеет технология, вcтроенная в ядро ОС
    Linux - kvm. Функционал обеспечивается при помощи модуля ядра kvm
    (kvm-amd.ko и kvm-intel.ko в зависимости от типа процессора).
    Виртуальная машина реализована как Linux-процесс и подчиняется стандартным способам изоляции и квотирования ресурсов (на основе cgroups). Процесс взаимодействует с ядром операционной системы посредством интерфейса /dev/kvm для управления виртуальной машиной.
    Для эмуляции устройств используется адаптированная версия qemu для обеспечения возможности работать с базовым набором устройств.
    Для удобного взаимодействия с гостевыми виртуальными машинами, их созданием и удалением существует набор утилит virsh.
    Учитывая богатый спектр возможностей по динамическому управлению виртуальными машинами, а также высокие показатели производительности при использовании технологии KVM, в настоящий момент ее применение широко представлено в отрасли.
    Порядок выполнения работы
    1. Ознакомиться с утилитами управления виртуальными машинами virsh.
    2. Создать виртуальную машину Linux.
    3. Создать виртуальную машину Windows.
    4. Настроить сетевой мост для сетевого интерфейса гостевой ОС для прямой работы с сетью.
    5. Создать виртуальную машину с хранением образа жесткого диска на логическом томе.
    6. Активировать технологию memory ballooning и уменьшить количество потребляемой памяти гостевых ОС Linux и Windows, не выключая их.
    Требования к оформлению отчета и защите
    Отчет должен содержать описание порядка выполнения всех команд и вывод, полученный при их исполнении. При защите отчета, исполнитель должен быть готов ответить на вопросы, касающиеся выполненных действий с виртуальными машинами.

    43
    Лабораторная работа №11. Написание Shell скриптов
    Цель работы: Получение навыков написания простейших shell скриптов для автоматизации выполнения системных и прикладных задач.
    Теоретические сведения
    Shell скрипт - это программа, написанная на скриптовом языке, которая может быть интерпретирована командной оболочкой операционной системы. В зависимости от дистрибутива Linux системы такими интерпретаторами могут быть bash, sh, ksh, zsh и др. Скрипты существуют не только для данного вида интерпретаторов, также возможно их написание для интерпретаторов языков Perl и Python. В операционных системах Unix для выполнения системных и прикладных задач используют скрипты, написанные на всех трех указанных скриптовых языках.
    Основной целью написания скриптов является автоматизация рутинных операций в операционных системах с использованием командной строки.
    Скрипты позволяют при помощи конструкций условий, циклов и объявления переменных решать задачи, которые администратор может запрограммировать, тем самым значительно упростить себе работу по управлению ОС.
    Для ознакомления с синтаксисом каждого из языков необходимо воспользоваться официальной документацией, ссылку на которую можно найти в конце пособия в списке литературы.
    Основные сведения, необходимые для написания shell скриптов:

    Для запуска написанного скрипта он должен обладать правами выполнения в ОС.

    Для написания скрипта могут использоваться встроенные языковые конструкции shell интерпретатора, а также внешние программы.

    Начало скрипта должно содержать информацию о том, в каком интерпретаторе будет выполняться скрипт, например, #!/bin/bash.
    Порядок выполнения работы
    В соответствии с заданием написать скрипт и убедиться в корректности его работы.
    Список вариантов:
    1. Написать скрипт, осуществляющий поиск в заданной директории файлов log и собирающий информацию об ошибках подключения по ssh
    (обычно файл syslog.log).
    2. Написать скрипт, сравнивающий текущие открытые порты с заданным списком и выдающий оповещение на все консоли при открытии

    44 нового порта. Заданный список формируется при первом запуске, затем с ним сравнивается.
    3. Написать скрипт, который проверяет работоспособность некого узла по нескольким сетевым портам и в случае невозможности получения ответа отправляет сообщение на все консоли сервера.
    4. Написать скрипт вывода статистики по смонтированным системам по их общему объему и заполнению, количеству директорий в них и файлов, вывод названия самого большого файла.
    5. Написать скрипт, определяющий среднюю загрузку узла и при превышении заданного порога выдающий сообщение в системный журнал.
    6. Написать скрипт, выполняющий архивирование каждого файла в директории, если размер каталога превышает заданную величину.
    7. Написать скрипт, который выводит список доступных версий ядра для загрузки ОС, а также версию в настоящий момент загруженного ядра. Информация доступна в конфигурационном файле загрузчика ОС.
    8. Написать скрипт проверки корректности настройки DNS при помощи разрешения какого-либо символьного имени в цифровой и вывода результата в виде успех/не успех.
    9. Написать скрипт для вывода списка модулей ядра, доступных для загрузки, а также в настоящий момент уже загруженных.
    10. Написать скрипт, осуществляющий проверку содержания web- ресурса определенной строки в выводе на запрос GET по протоколу http.
    Требования к оформлению отчета и защите
    Отчет должен содержать описание порядка выполнения всех команд и содержание указанных при выполнении работы файлов. При защите отчета, исполнитель должен быть готов ответить на вопросы, касающиеся написанного shell скрипта.

    45
    Лабораторная
    работа
    №12.
    Утилиты
    мониторинга
    производительности в среде операционный системы GNU Linux
    Цель работы: Получение практических навыков работы с утилитами диагностирования состояния памяти и выполнения процессов в операционной системе Linux.
    Теоретические сведения
    Обзор основных утилит для работы с памятью в операционной системе Linux:
    free
    Утилита free показывает общее количество свободной и используемой физической памяти. В зависимости от параметров вывод может быть представлен в байтах, килобайтах, мегабайтах, гигабайтах и терабайтах. Возможно обеспечение вывода с обновлением через заданное количество в несколько секунд. Одним из преимуществ является вывод с учетом и без учета буфера и кэша, это позволяет сразу же узнать доступное количество памяти для запускаемого приложения с учетом того, что память в буферах и кэше будет при необходимости освобождена операционной системой.
    vmstat
    Программа, показывающая статистическую информацию о процессах, памяти, активности процессоров и т.д. Особенностью является структурированный вывод в одной таблице указанных данных работы системы. Также, как и free, поддерживает вывод информации с определенным интервалом, что обеспечивает возможность непрерывного мониторинга за показателями операционной системы.
    top
    Программа предоставляет динамический вывод информации о системе, о текущих активных задачах и их параметрах. Вывод представлен в виде таблицы, интерактивное управление позволяет онлайн менять порядок сортировки и выводимую информацию о процессах.
    htop
    Аналогичная по функционалу программе top, но вывод дополнен блоком загрузки отдельно по ядрам, памяти и разделу подкачки с градацией по цветам от 100% потребления ресурса.
    ps
    Программа предоставляет информацию об активных в данный момент процессах. Обладает широким спектром параметров для отображения различных характеристик запущенных процессов.
    dstat
    Также является утилитой для мониторинга работы системы с расширенным набором доступных счетчиков. Позволяет сочетать сбор различных характеристик в зависимости от целей наблюдения. В том

    46 числе обладает возможностью подключения плагинов для обработки своих собственных счетчиков.
    iostat
    Утилита для мониторинга производительности устройств ввода- вывода. Поддерживается периодический вывод информации с округлением среднего за заданный промежуток времени. Стандартный вывод содержит информацию о количестве запросов в секунду (tps), средних пропускных способностях устройств за промежуток времени, прочитанном и записанном количестве данных в килобайтах.
    Описание установки для проведения практической работы
    Установка для выполнения практической работы представляет собой рабочую станцию, функционирующую под управлением ОС MS Windows
    7. На каждой рабочей станции установлен пакет VirtualBox, в котором запущена операционная система Linux.
    1   2   3   4   5   6


    написать администратору сайта