# Руководство для преподавателя ## Подготовка среды проведения лабораторных работ Лабораторные проводятся на виртуальных машинах в системе виртуализации Proxmox. Определим N как количество студентов умноженное на 1.5 и округлим в большую сторону. Определим X как идентификатор от 1 до N. Создайте N пользователей в Proxmox с именами studX (stud1, stud2, ...). Используйте Realm "Proxmox VE authentication server". Для массового создания виртуальных машин рекомендуется использовать возможность Proxmox конвертации виртуальной машины в шаблон. Из шаблона копия создаётся на порядки быстрее по времени, чем при полном клонировании. Следуйте следующим шагам: 1. настройте машину с общими для всех копий настройками, 2. преобразуйте её в шаблон (template), 3. создайте клоны из шаблона и донастройте, если необходимо. При наличии нескольких дисков рекомендуется RAID оптимизирующий производительность. Неправильный raid или медленный тип диска может привести к существенному замедлению работы во время установки ОС или пакетов. Загрузите образ debian-11.4.0-amd64-netinst.iso в Proxmox хранилище. ### Основные виртуальные машины Данные виртуальные машины предназначены для всех заданий, исключая: - 00_os_installation, - 03_networking, - 12_troubleshooting, - final_exam. Создайте vlan с доступом в интернет. Например, bond0.499 и мост vmbr499 с параметрами: - Bridge ports: bond0.499, - VLAN aware: false, - IPv4/CIDR: 10.160.179.254/24, - Gateway (IPv4): 10.160.179.1. До начала занятий создайте N виртуальных машин со следующими характеристиками: - 1 сокет с 4 ядрами, - 8 Гб оперативной памяти, - 16 Гб дискового пространства. Каждой виртуальной машине назначьте статический IPv4 адрес 10.160.179.10 + X (10.160.179.11, 10.160.179.12, ...). Установите минимальный дистрибутив debian на каждую. Установите пакеты: - man-db, - ssh, - vim, - tree. Удалите пакет ifupdown. Пробросьте порты: 22, 80, 443. Организуйте удалённый доступ к машинам по ssh ключу. ### Подготовка к занятию "История операционных систем. Установка Debian" Данные виртуальные машины предназначены для тренировки в установке debian. До начала занятий создайте N виртуальных машин со следующими характеристиками: - 1 сокет с 4 ядрами, - 8 Гб оперативной памяти, - 32 Гб дискового пространства, - сетевой интерфейс vmbr499 с доступом в интернет. Студенты могут назначить статический IPv4: 10.160.179.10 + N + X, Gateway (IPv4): 10.160.179.1. Подключите cdrom с образом debian-11.4.0-amd64-netinst.iso. ### Подготовка к занятию "Настройка сетевого подключения" Данные виртуальные машины предназначены для настройки сетевого интерфейса в конфигурациях systemd. Студентам необходимо работать в индивидуальных vlan для настройки по DHCP и снижению вероятности ошибок при назначении статического адреса. Создайте N vlan без доступа в интернет. Например, bond0.X и мост vmbrX с параметрами: - Bridge ports: bond0.X, - VLAN aware: false. Создайте N виртуальных машин studX-net1 и N виртуальных машин studX-net2 для vmbrX. Удалите пакет ifupdown. ### Подготовка к занятию "Поиск и устранение неисправностей" Данные виртуальные Создайте N vlan без доступа в интернет: bond0.N+X и мост vmbrN+X с параметрами: - Bridge ports: bond0.N+X, - VLAN aware: false. Создайте N виртуальных машин troublesome-gwX, играющих роль шлюза для vmbrN+X. Установите минимальный образ debian. Удалите пакет ifupdown. Каждой виртуальной машине назначьте добавьте два сетевых интерфейса. Для первого интерфейса назначьте IPv4 адрес 10.160.179.100 + X (10.160.179.101, 10.160.179.102, ...). Для второго интерфейса назначьте IPv4 адрес 192.168.0.1. Создайте виртуальную машину troublesome. Установите минимальный образ debian. Скопируйте скрипты, приведенные ниже в /sbin/. Превратите машину в шаблон Proxmox. Для каждого из 6 заданий создайте виртуальную машину из шаблона troublesome: troublesomeX-task1, troublesomeX-task2, ..., troublesomeX-task6. Каждой виртуальной машине назначьте статический IPv4 адрес 192.168.0.1 + номер задания. Для 6 задания настройте беспарольный доступ по ssh от пользователя stud к пользователю mike. Команда `ssh localhost -l mike` должна отработать без ввода пароля. Внесите неисправности, активируя скрипты. Превратите машины в шаблоны. Создайте N виртуальных машин для каждого задания из шаблонов: troublesomeX-task1, troublesomeX-task2, ..., troublesomeX-task6. Скрипты для внесения неисправностей для заданий. #### 1. ```bash #!/bin/bash # task 1 systemctl disable systemd-networkd systemctl stop systemd-networkd ``` #### 2. ```bash #!/bin/bash # task 2 sed 's/^Gateway=.*$//' -i /etc/systemd/network/ens18.network networkctl reload ``` #### 3. ```bash #!/bin/bash # task 3 sed 's/DNS/#DNS/' -i /etc/systemd/resolved.conf systemctl restart systemd-resolved ``` #### 4. ```bash #!/bin/bash # task 4 sed 's/192\.168/172\.16/' -i /etc/systemd/network/ens18.network networkctl reload ``` #### 5. ```bash #!/bin/bash # task 5 # ping gateway ping 192.168.0.1 -c 1 2> /dev/null 1> /dev/null gateway_mac=$(arp -n | grep 192.168.0.1 | awk '{ print $3 }') ip link set address "$(gateway_mac)" dev ens18 ``` Активируйте следующий сервис: ```bash # /etc/systemd/system/network-problem.service [Unit] After=network.target [Service] Type=oneshot ExecStart=/sbin/task5.sh [Install] WantedBy=multi-user.target ``` #### 6. ```bash #!/bin/bash # task 6 chmod 777 /home/stud/.ssh ``` ### Подготовка к экзамену До начала занятий создайте N виртуальных машин со следующими характеристиками: - 1 сокет с 4 ядрами, - 8 Гб оперативной памяти, - 6 Гб дискового пространства, - сетевой интерфейс vmbr499. Подключите cdrom с образом debian-11.4.0-amd64-netinst.iso.