ПЗ_1-6 (2). Модуль Основы работы в ос unix Задание
Скачать 2.57 Mb.
|
Практическое задание 1Модуль 2. Основы работы в ОС Unix Задание: Создать виртуальную машину VirtualBox исходя из предоставленной информации о минимальных аппаратных требованиях и предлагаемой к установке и изучению операционной системы (ОС). Установить ОС Linux Ubuntu на виртуальный компьютер. Разобрать процесс установки ОС на этапы. Познакомиться с основными группами программ входящих в состав ОС. Результат решения задач представить в файле под именем «Фамилия_И.О._Задание_1.docx». Рекомендации по выполнению задания Предварительно следует ознакомиться с текстом учебника по данной теме, а также изучить рекомендуемую литературу. При создании виртуальной машины учитывайте тип операционной системы, а также минимальные системные требования. Загружаем предлагаемый образ для установки Linux Ubuntu и выбираем язык установки (рис. 1): Рис. 1. - Выбор языка установки Рис. 2. - Меню установки Выбираем пункт «Установить Ubuntu» (рис. 3). И после непродолжительного ожидания увидим приветствие с предложением начать установку: Рис. 3. - Подготовка к установке Нажимаем кнопку «Forward» («Далее»), и увидим меню, в котором можно выбрать часовой пояс (рис. 4): Рис. 5. - Настройка часового пояса Нажимаем кнопку «Forward» («Далее»), и увидим меню выбора раскладки клавиатуры (рис. 6): Рис. 6. - Настройка раскладки клавиатуры Нажимаем кнопку «Forward» («Далее»), и увидим меню подготовки разделов жесткого диска к установке Ubuntu (рис. 7). Рис. 7. - Подготовка дискового пространства Выбираем пункт «Использовать весь диск». Пункт «Указать разделы вручную (расширенно)» выполняется только по указанию преподавателя, иначе нажимать не следует. Нажимаем «Forward» («Далее») и видим меню для идентификации будущего пользователя ОС. Необходимо задать имя (Коля, Вася, Маша и т.п.). А также используемое при входе. Во избежание проблем с утратой логина и пароля всем студента задать: имя используемое для входа в систему (login) – user пароль чтобы держать запись в сохранности (password) – 123456 На вопрос о том, что пароль слишком простой и надо его сменить ответить отрицательно. имя компьютера в сети уточнить у преподавателя. Рис. 8. - Меню идентификации будущего пользователя После заполнения всех пунктов меню идентификации, нажимаем «Forward» («Далее»), и видим окно со сводной информацией о будущей ОС. Рис. 9. - Сводка к установке системы Окно со сводкой о будущей системе представлено - последняя возможность отменить установку или внести какие-то изменения (рис. 31). Нажимаем кнопку «Установить». И в следующем возникшем окне нажимаем «Перезагрузить». Инструкцией предполагается извлечение физического диск, но так как мы работаем с образом, нам необходимо его извлечь, для этого, во время перезагрузки, в верхнем меню окна программы VirtualBox находим пункт «Устройства», и в появившемся меню пункт «Отключить CD/DVD-ROM» (рис. 10). Затем нажмите сочетание клавиш Ctrl+R – перезагрузка виртуальной машины. Рис. 10. - Меню отключения CD/DVD-ROM И после небольшого диалога с вводом имени пользователя и пароля (имя пишется без заглавных букв) мы увидим ОС Linux Ubuntu с подключенным рабочим столом GNOME (рис. 11). Рис. 11. - ОС Linux Ubuntu с подключенным рабочим столом GNOME Установите дополнения к гостевой ОС. После монтирования нового носителя (смотри на рабочем столе), найдите на нем файл avtoran.sh, запустите его двойным кликом и в появившемся диалоговом окне нажмите запустить через терминал, далее процесс будет автоматизирован. Подготовить отчет о выполнении работы, опишите основные этапы установки ОС. Практическое задание 2Модуль 2. Основы работы в ОС Unix Задание: Загрузить терминал Ubuntu. Потренируйтесь в выполнении команд: date oclock finger hwclock uname history clear ls Найдите данные команды в таблице 1, опишите их. После выполнения результат внесите в отчет. Создайте нового пользователя, при помощи терминала Ubuntu, и введите его в группу admin. Создайте пароль пользователю. Войдите под ним в систему. Процесс создания и ввода в группу внесите в отчет. Разберите выполнение незадействованных команд таблицы 1. Потренируйтесь в выполнении, определите их назначение и область применения. Результат работы внесите в отчет. Результат решения задач представить в файле под именем «Фамилия_И.О._Задание_2.docx». Таблица 1 Команды для работы в терминале ОС UNIX
Рекомендации по выполнению задания Для получения справки о дополнительных возможностях некоторых команд следует набрать <команда> --help Для выполнения данной работы необходимо использовать ранее установленный Linux Ubuntu. После прохождения идентификации включаем терминал (рис. 11). Applications > Accessories > Terminal. В терминале Ubuntu требуются права пользователя root, но, к сожалению, по умолчанию, он недоступен, поэтому для выполнения некоторых (не всех) команд надо писать sudo <команда>, и подтверждать свои права вводом пароля. И не пугайтесь того, что его не видно в терминале! Наберите точно по памяти, по окончании ввода нажмите Enter. Рис. 12. - Терминал Linux Ubuntu Практическое задание 3Модуль 2. Основы работы в ОС Unix Задание: Создать Обычного пользователя и пользователя с правами Администратор при помощи встроенной утилиты ОС Linux. Создать Обычного пользователя и пользователя с правами Администратор при помощи команд терминала ОС Linux. Назначить права доступа для Обычного пользователя через терминал. Удалить Обычного пользователя двумя способами: через терминал с использованием команд, через встроенную утилиту операционной сиситемы. Результат решения задач представить в файле под именем «Фамилия_И.О._Задание_3.docx». Рекомендации по выполнению задания Через панель быстрого запуска открываем «Параметры системы» и выбираем «Учетные записи» (рис. 13). Рис. 13. – Параметры системы в ОС Ubuntu Теперь необходимо получить дополнительные привилегии. Для этого нажимаем кнопку «Разблокировать» (рис.14). Рис. 14. – Разблокировка учётных записей в ОС Ubuntu Вводим свой пароль и нажимаем кнопку «Аутентифицировать» (рис. 15). Рис.15. – Процедура Аутентификации Чтобы добавить нового пользователя нажимаем на знак «+» Рис. 16. – Создание новой Учётной записи В открывшейся форме выбираем тип учетной записи. В этой штатной утилите можно создать пользователей двух типов: Обычный Администратор В большинстве случаев достаточно «Обычного» типа учетной записи. Но если в дальнейшем выяснится, что этому пользователю нужны дополнительные привилегии, то достаточно будет вернуться в утилиту «Учетные записи» и сменить тип учетной записи (рис. 17). Рис. 17. – Привилегии пользователей Выбираем «Обычный» тип учетной записи, добавляем имя пользователя и нажимаем кнопку «Добавить». Рис. 18. – Добавление имени пользователя У нас появилась наша новая учетная запись, но она не активирована пока не будет задан пароль. Включаем новую учетную запись, нажав в пункте «Пароль» (рис. 19): Рис. 19. – Активизация учётной записи Пользуясь подсказкой, придумываем «Стойкий» пароль, после чего повторно вводим его в поле «Подтвердить пароль». Активируем новую учетную запись, нажав кнопку «Изменить» (рис. 20). Рис. 20. – Создание пароля для учётной записи Чтобы удалить ненужную учетную запись, ее необходимо выделить и нажать знак «-» (рис. 21). Откроется окно выбора способа удаления. Рис. 21. – Удаление учётной записи Есть два варианта удаления учётной записи: c удалением домашнего каталога либо с его сохранением. Если файлы этого пользователя больше не нужны, то нажимаем «Удалить файлы» (рис. 22). Рис. 22. – Удаление учётной записи с домашним каталогом Учетная запись и все файлы домашнего каталога удалены. Второй способ добавления нового пользователя через терминал. Необходимо открыть терминал и запустить следующую команду. sudo adduser newusers Для получения дополнительных привилегий необходимо ввести пароль пользователя и нажать на клавиатуре клавишу «Enter». Вводим пароль нового пользователя и нажимаем на клавиатуре клавишу «Enter». Повторно вводим пароль и нажимаем на клавиатуре клавишу «Enter». Добавляем необходимую информацию и если все указали правильно, то подтверждаем это набрав «Y» и нажимаем на клавиатуре клавишу «Enter». Мы добавили нового пользователя с «Обычными» правами. Если нужен пользователь с правами «Администратора», то необходимо выполнить еще одну команду и добавить пользователя в необходимые группы (adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare). sudo usermod -a -G adm,cdrom,sudo,dip,plugdev,lpadmin,sambashare newusers Чтобы посмотреть в какие группы входит пользователь выполним следующую команду. sudo id newusers Для смены пароля любого пользователя используйте команду passwd и логин пользователя. sudo passwd newusers Вводим пароль нового пользователя и нажимаем на клавиатуре клавишу «Enter». Далее повторно вводим пароль и нажимаем на клавиатуре клавишу «Enter». Если все сделали правильно, то должны увидеть запись «пароль успешно обновлен». Теперь для входа в эту учетную запись необходимо вводить новый пароль. Удалить ненужного пользователя и его домашнюю папку тоже очень просто. Для этого набираем sudo userdel -r newusers К сожалению, вышеуказанная команда не отображает результатов своей работы. Для того чтобы проверить остался ли в системе пользователь newusers, используем другую команду: sudo id newusers По результатам ее выполнения, мы видим, что такого пользователя нет в системе. Практическое задание 4Модуль 2. Основы работы в ОС Unix Задание: Ознакомиться с файловой структурой ОС LINUX. Изучить команды работы с файлами. Используя команды ОС LINUX, создать два текстовых файла. Полученные файлы объединить в один файл и его содержимое просмотреть на экране. Создать новую директорию и переместить в нее полученные файлы. Вывести полную информацию обо всех файлах и проанализировать уровни доступа. Добавить для всех трех файлов право выполнения членам группы и остальным пользователям. Просмотреть атрибуты файлов. Получить информацию об активных процессах и имена других пользователей. Результат решения задач представить в файле под именем «Фамилия_И.О._Задание_4.docx». Рекомендации по выполнению задания Понятие файла является фундаментальным понятием для *nix операционных систем. Кроме простых (регулярных) файлов с данными в этом семействе операционных систем принято реализовывать с помощью специальных типов файлов интерфейсы доступа к внешним устройствам, 35 отображения данных о процессах и ресурсах операционной системы, настроек компонентов операционной системы и пользовательских приложений и т.п. Следует отметить, что каталог (директорий) в *nix операционных системах также представляет собой специальный тип файла, хранящий имена и номера дескрипторов входящих в него подкаталогов и файлов. Основные команды для работы с файлами и каталогами: cd - смена каталога. cp - копирование файлов. ls - выводит список файлов и каталогов текущей директории. file - указывает тип указанного файла. find - поиск файлов. ln - создание ссылок. mkdir - создание каталога. mv - перемещение файла или каталога. pwd – вывод имени текущего каталога. rm - удаления файла. rmdir - удаление каталога. cat - слияние и вывод файлов. В Linux существует два вида ссылок, обычно называемых жесткие ссылки и символьные, или "мягкие" ссылки. Жесткая ссылка является всего лишь именем какого-либо файла – записью в соответствующем каталоге со ссылкой на индексный дескриптор этого файла. Таким образом, файл может иметь одновременно несколько имен в различных каталогах. Он будет удален с диска только тогда, когда будет удалено последнее из его имен. Нет такого понятия, как "настоящее" имя: все имена имеют одинаковый статус. Мягкая ссылка (или символьная ссылка, или symlink) полностью отличается от жесткой ссылки: она является специальным файлом, который содержит путь к другому файлу. Таким образом, мягкая ссылка может указывать на файлы, которые находятся на других файловых системах, и не нуждается в наличии того файла, на который она указывает. Когда происходит попытка доступа к файлу, ядро операционной системы заменяет ссылку на тот путь, который она содержит. Однако команда rm удаляет саму ссылку, а не файл, на который она указывает. Для чтения состояния символьной ссылки, а также имени файла, на который она указывает, используется команда readlink. Полное имя файла может задаваться как с использованием абсолютного пути, например, /home/user/file, так и с помощью относительного пути – пути, заданного относительно текущего каталога. Это особенно часто применяется в скриптах. Для этого в каждом каталоге есть два служебных каталога: « .. » – указывает на родительский каталог « . » – указывает на текущий каталог Например, команда cd .. позволит перейти на уровень выше, а команда cd . ничего не изменит. Другой пример: команда ./script.bash запускает скрипт именно из текущего каталога. Наконец, если мы находимся в домашнем каталоге пользователя user, то путь к файлу ./../../home/user/file будет соответствовать пути к файлу в домашнем каталоге, как и описанный выше пример абсолютного пути. Для того, чтобы перейти к корню файловой системы можно использовать команду cd / Для обозначения домашнего каталога активного пользователя можно использовать символ . Тогда запись cd будет эквивалентна записи cd $HOME. Практическое задание 5Модуль 2. Основы работы в ОС Unix Задание: Установить и настроить GUI. Подготовить отчет для преподавателя о выполнении работы в виде файла под именем «Фамилия_И.О._Задание_5.docx». Рекомендации по выполнению задания GUI - это набор иконок, меню, диалогов, панелей, окон, и других графических элементов, позволяющих пользователям легко работать с компьютером и приложениями. Развитие графических интерфейсов началось в начале 80-х годов. Идея GUI как замены командной строки впервые возникла в исследовательском центре Xerox's Palo Alto Research Center. Apple впервые применила ее в компьютере Lisa и позже в Macintosh. Следом за ними в Microsoft стали делать свой графический интерефейс под названием Windows. Он и используется сейчас в 95% десктопов, и благодаря ему персональные компьютеры сейчас так широко распространились. Сейчас существуют два самых распространенных графических интерфейса под Linux: 1) KDE - K Desktop Environment. 2) GNOME - GNU Network Object Model Environment. Развитие GUI для Linux началось с работы Фонда бесплатного программного обеспечения, когда была сделана попытка разработать единый графический интерфейс для всех Юниксов. OSF выступала за развитие юзабельности Unix и за создание единого графического интерфейса для всех вариантов Unix. Эта работа привела к созданию X Window System и OSF/Motif, и общим результатом стала CDE (Common Desktop Enviroment - общая десктопная среда). В 1996 году технология CDE была передана The Open Group. Для выполнения поставленной задачи Вам необходимо: Запустить виртуальную машину. Пройти авторизацию под пользователем, обладающим правами администратора в ОС. Запустить терминал. В зависимости от версии и типа ОС Linux команды могут отличаться, поэтому для примера использованы команды для двух наиболее популярных ОС. Для Ubuntu: sudo apt –y install kubuntu-desktop Для CentOS 7: sudo yum group -y install "KDE Plasma Workspaces" Во время установки GUI на Ubuntu, системе нужно будет настроить менеджер входа в систему (рис. 23). Нажмите OK, а в следующем окне выберите gdm3, чтобы использовать стандартный менеджер входа Ubuntu. Рис. 23. – Настройка менеджера входа в системе Ожидаем окончания установки GUI. Если ранее на ОС отсутствовал GUI, то GUI необходимо добавить в автозапуск и запустить следующими командами: sudo systemctl set-default graphical.target sudo systemctl start graphical.target Теперь при выборе пользователя, нажав на шестеренку, выбираем нужную GUI (рис. 24). Рис. 24. – Выбор GUI Рис. 25. - Авторизация Выберете GUI Plasma и авторизуйтесь под пользователем (рис. 25). Подготовьте отчет о выполнении лабораторной работы, описать основные этапы установки GUI. Практическое задание 6Модуль 2. Основы работы в ОС Unix Задание: Запустить терминал ОС Linux. Включите параметр ядра ОС защищающий от атак. Запретите ICMP редиректы и пропишите игнорирование широковещательных ICMP запросов. Увеличьте диапазон портов для трансляции. Разрешите пересылку сетевых пакетов между сетевыми интерфейсами в системе. Выясните, какие интерфейсы зарегистрированы в системе. Присвойте сетевому интерфейсу eth0 адрес и маску. Добавьте маршрут с помощью команды route и посмотрите таблицу маршрутизации. Просмотрите параметры файла /etc/resolv.conf. Прокомментируйте его. Подготовить отчет для преподавателя о выполнении работы в виде файла под именем «Фамилия_И.О._Задание_6.docx». Рекомендации по выполнению задания Настройки модулей сетевого стека из пространства ядра возможна через конфигурационные файлы специальных утилит. Однако не все параметры можно установить подобным образом. В таком случае применяется прямое конфигурирование модулей ядра через файловую систему /proc напрямую или через специальные утилиты (make confi, sysctl и др.). Параметров более сотни, рассмотрим некоторые из них, пригодные для сценария организации сетевого шлюза на базе Linux (RHEL, CENTOS, FEDORA). Для шлюза необходимо увеличить значения размеров буферов для приема и отправки данных через сокеты (параметры ядра net.core.rmem_max, net.core.wmem_default, net.core.wmem_max). Одной из существенных опасностей для интернет шлюза является атака через «наводнение» пакетами с флагом syn. Включим параметр ядра, защищающий от них: net.ipv4.tcp_syncookies = 1 net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.icmp_echo_ignore_broadcasts=1 Следует запретить ICMP редиректы и игнорировать широковещательные ICMP запросы: Для шлюза, на котором работает NAT критически важен диапазон портов для трансляции. По умолчанию он достаточно мал. Увеличим его: net.ipv4.ip_local_port_range = 16384 61032 net.ipv4.tcp_keepalive_time = 1900 Уменьшим время keep alive соединений: net.ipv4.tcp_fin_timeout = 30 Можно так же указать время, в течение которого следует ожидать приема сегмента с флагом FIN до закрытия сокета (в секундах): net.ipv4.ip_forward = 1 Наконец, для того, чтобы разрешить пересылку сетевых пакетов между се тевыми интерфейсами в системе установим параметр ip_forward: После подключения драйверов устройств нужно задать параметры протокола IP для интерфейсов. Настройка интерфейса заключается в присвоении IP- адреса. Так же в системе необходимо указывать адрес шлюза по умолчанию и параметры DNS. Эти параметры можно установить через конфигурационные файлы, специфичные для системы и (или) с помощью специальных утилит. Настройка может проводиться вручную или автоматически с помощью протокола DHCP (утилиты dhclient). Для назначения IP и маски используют программу ifconfig. Эта команда позволяет выяснить какие интерфейсы зарегистрированы в системе: ifconfig –a В выводе этой команды должен присутствовать минимально один интерфейс с именем lo - так называемый "кольцевой интерфейс" или "обратная петля" - Local Loopback. Он должен функционировать в любом случае, даже если на компьютере нет реальных сетевых интерфейсов, так как осуществляет взаимодействие приложений через сетевой стек в пределах хоста. Обычные интерфейсы обозначаются как ethN, где N – номер интерфейса, начиная с 0. Заметим, что имена интерфейсов могут отличаться в разных версиях Linux. Для того чтобы присвоить сетевому интерфейсу eth0 адрес и маску следует выполнить команду: ifconfig eth1 172.21.21.10 netmask 255.255.0.0 up Если не указывать маску подсети, то по умолчанию устанавливается маска подсети 255.0.0.0. Команда ifconfig позволяет менять и параметры канального уровня. Например, MAC адрес: ifconfig eth0 hw ether AC:AE:55:66:77:88 или даже адрес прерывания сетевой карты и режим работы карты: ifconfig eth0 irq 5 media 10baseT. Еще одним важным параметром сетевого стека является маршрут по умолчанию. Это параметр относится к механизму маршрутизации, реализуемым демоном rotuted. Правила маршрутизации определяют последовательность передачи пакетов IP. Эти правила маршрутизации хранятся в одной из таблиц ядра. Формировать таблицы маршрутизации можно статически и динамически. Статический маршрут - это маршрут, который задается вручную командой route. Динамическая маршрутизация подразумевает автоматическое формирование правил демоном routed. Маршрут по умолчанию определяет куда будут пересылаться пакеты, для которых не задан маршрут явно. Для конечного хоста в общем случае это обязательный параметр. Добавить маршрут с помощью команды route можно так: route add default gw 172.21.0.1 eth0 , Посмотреть таблицу маршрутизации командой netstat –nr . Отметим, что существующий маршрут по умолчанию не замещается автоматически и должен быть удален явно: route del default gw eth0. Утилита ip объединяет в себе возможности традиционных утилит ifconfig, arp, route в Linux. Утилита ip поставляется во всех дистрибутивах по умолчанию и заменит старые утилиты со временем. Рассмотрим синтаксис команды: ip [опции] объект команда [параметры] опции — это глобальные настройки, которые сказываются на работе всей утилиты объект — объект или устройство, с которым будем работать или о котором будем узнавать информацию. команды — какое-либо действие с объектом. параметры — само собой, командам иногда нужно передавать параметры, они передаются в этом пункте. Поддерживаются такие опции для настройки сети в Linux: -v — только вывод информации об утилите и ее версии -s — включает вывод статистической информации -f — позволяет указать протокол, с которым нужно работать, если протокол не указан, то берется на основе параметров команды. Опция f должна принимать одно из значений: bridge, dnet, inet, inet6, ipx или link. По умолчанию использует ся inet, link — означает отсутствие протокола. -o — выводить каждую запись с новой строки -r — выполнять резолвинг и выводить символические имена хостов. Все остальные опции — ярлыки опции -f: -4 — ярлык для -f inet -6 — -f inet6 -B — -f bridge -0 — -f link К основным объектам относятся: address — сетевой адрес на устройстве link— физическое сетевое устройство: monitor — мониторинг состояния устройств neigh — ARP route — управление маршрутизацией rule — правила маршрутизации tunnel — настройка туннелирования Набор команд следующий: add, change, del или delete, flush, get, list или show, monitor, replace, restore, save, set, и update. Если команда не задана, по умолчанию используется show (показать). Параметры зависят от объекта и указанной команды. К основным параметрам относятся: dev имя_устройства — сетевое устройство up — включить down — выключить llarrr — MAC — адрес initcwnd — размер окна перегрузки TCP при инициализации window — размер окна TCP cwnd — размер окна перегрузки TCP type — тип via — подключиться к роутеру default — маршрут по умолчанию. Приведем несколько примеров использования команды ip. ip link show eth1 — отображает информацию о состоянии интерфейса eth1 ip link list up — выводит информацию о статусе всех включенных интерфейсов: ip link set eth1 up — включить eth1 ip link set eth1 down - выключить eth1 ip addr add 172.21.0.3/24 dev eth0 — установить ip адрес для интерфейса eth0 ip addr del 172.21.0.3/24 dev eth0 — удалить ip адрес интерфейса eth0 ip add flush dev eth0 — удалить все ip адреса интерфейса eth0 ip route get 192.168.10.0/24 — отобразить маршрут к этой сети. Для клиента необходимо задать параметр IP-адрес сервера DNS, который будет разрешать доменные имена в IP адреса по запросу клиента. По умолчанию эти параметры задаются в файле /etc/resolv.conf. В этом файле конфигурируются службы отображения сетевых адресов в имена хостов. В частности можно указать до трех разных DNS серверов. Строки конфигурации будут начинаться со строки «nameserver», за которым следует IP-адрес сервера DNS. Можно указать и суффикс домена по умолчанию. Использование описанных утилит позволяет сразу изменить параметры сетевого стека «на ходу», но эти параметры нигде не сохраняются и работают до перезагрузки. Для того чтобы сделать их постоянными, нужно добавить вызов утилит в скрипты автозапуска системы или использовать конфигурационные файлы сетевых интерфейсов, которые используются сетевой службой для их конфигурирования при запуске. В семействе Linux RedHat эти файлы называются ifcfg-ethX (где X номер интерфейса) и располагаются в каталоге /etc/sysconfig/network-scripts/. Рассмотрим основной синтаксис фалов ifcfg-eth. В текстовый файл с этим именем заносятся параметры в виде КЛЮЧ=ЗНАЧЕНИЕ. Порядок параметров не важен. Приведем основные ключи, сразу с примерами заполнения. Имя интерфейса: DEVICE=eth0 Протокол загрузки: BOOTPROTO=none Возможные значение none (конфигурация статическая) или bootp или dhcp (указывается протокол автоматического конфигурирования): Включать при загрузке: ONBOOT=yes Задаем адрес и маску: NETMASK=255.255.255.0 IPADDR=172.21.0.27 Задаем маршрут по умолчанию: GATEWAY=172.21.0.1 Задаем параметр DNS DNS1=172.21.0.1 DNS2=8.8.8.8. |