2025-06-09 22:59:37 +05:00
2025-06-09 22:59:37 +05:00

laba

МОДУЛЬ 1

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

  • присвоение имен устройствам,
  • расчет IP-адресации,
  • настройку коммутации и маршрутизации.

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

Чтобы зайти на стенд для 1 модуля.

User name: m1

Password: modul1

Перед включением виртуалок Настроем вланы. По заданию HQ-SRV в 100 влане, а HQ-CLI в 200

Примечание: Основные сведения о настройке коммутатора и выбора реализации разделения на VLAN занесите в отчёт

ISP преднастроена, но включать ее надо

Сетевая связность - между HQ и BRANCH

Примечание: Сведения об адресах занесите в отчёт, в качестве примера используйте Таблицу 3

*HQ-RTR*

Задаём сразу FQDN - выбор имени домена произвольный:

По такой же аналогии настройте остальные имена

Чтобы настроить адресацию переходим:

Заодно настроим GRE туннель

Включаем пересылку пакетов между портами (интерфейсами)

Применяем:

sysctl -p

Прокинем PAT так, как по приколу тачки, что подключены к роутеру пинговать инет не будут.

Обязательно добавим в автозагрузку и активируем

Туннель мы допустим подняли, но чтобы пакеты через него пошли, нужна маршрутизация.

Примечание: Сведения о настройке и защите протокола(ospf) занесите в отчёт

Установим frr.

РЕКОМЕНДАЦИЯ: ПОКА FRR СКАЧИВАЕТСЯ ПЕРЕХОДИМ К НАСТРОЙКЕ BR-RTR

В файле /etc/frr/daemons - включим поддержку OSPFv2 (IPv4)

Не забываем перезапускать, чтобы изменения вступили в силу

Переходим к настройке frr (ospf)

Поставим пароль на frr

Не забываем перезапустить

И добавить в автозагрузку

*BR-RTR*

Произведем те же манипуляции

РЕКОМЕНДАЦИЯ: ПОКА FRR СКАЧИВАЕТСЯ ДОДЕЛЫВАЕМ FRR НА HQ-RTR

Ура сетевая связность у между hq и br настроена

Для проверки пингуем с br-rtr:

ping 192.168.100.1

РЕКОМЕНДАЦИЯ: сразу на HQ-RTR скачаем: apt update && apt install y isc-dhcp-server

*HQ-SRV*

Задаем имя:

ВНИМАНИЕ: Нужно обновить изображение

Прокинем инет:

Перезапускаем сервис:

Systemctl restart networking

Проверяем:

*BR-SRV*

Перезапускаем сервис:

Systemctl restart networking

Проверяем:

РЕКОМЕНДАЦИЯ: сразу скачиваем на HQ-SRV: apt update && apt install -y dnsmasq

Создание локальных учетных записей

Создайте пользователя sshuser на серверах

*HQ-SRV и BR-SRV*

Пользователь sshuser должен иметь возможность запускать sudo без дополнительной аутентификации.

В дебиане нету судо поэтому скачаем:

НА BR-SRV СДЕЛАЙТЕ ТОЖЕ САМОЕ

Создайте пользователя net_admin на маршрутизаторах

*HQ-RTR и BR-RTR*

В дебиане нет sudo поэтому скачаем

СДЕЛАЙТЕ ТОЖЕ САМОЕ НА BR-RTR

Настройка безопасного удаленного доступа на серверах HQ-SRV и BR-SRV:

  • Для подключения используйте порт 2024
  • Разрешите подключения только пользователю sshuser ● Ограничьте количество попыток входа до двух
  • Настройте баннер «Authorized access only»

*HQ-SRV и BR-SRV*

Редактируем файл /etc/ssh/sshd_config:

ДУБЛИРУЕМ ТОЖЕ САМОЕ НА BR-SRV

Установим и настроим DHCP-сервер

и зарезервируем адрес для HQ-SRV, чтобы потом на всех остальных оконечных устройствах задавая адреса сразу создавать пользователей

*HQ-RTR:*

Скачаем: apt install y isc-dhcp-server

Первым делом нам необходимо указать, что наш DHCP сервер должен принимать запросы только с ens20 интерфейса.

Настройка протокола динамической конфигурации хостов.

  • Настройте нужную подсеть
  • Для офиса HQ в качестве сервера DHCP выступает маршрутизатор HQ-RTR.
  • Клиентом является машина HQ-CLI.
  • Исключите из выдачи адрес маршрутизатора
  • Адрес шлюза по умолчанию адрес маршрутизатора HQ-RTR.
  • Адрес DNS-сервера для машины HQ-CLI адрес сервера HQ-SRV.
  • DNS-суффикс для офисов HQ au-team.irpo
  • Сведения о настройке протокола занесите в отчёт

Примечание: Сведения о настройке протокола занесите в отчёт

Настройка DNS для офисов HQ и BR.

  • Основной DNS-сервер реализован на HQ-SRV.
  • Сервер должен обеспечивать разрешение имён в сетевые адреса устройств и обратно в соответствии с таблицей 2
  • В качестве DNS сервера пересылки используйте любой общедоступный DNS сервер

Нам необходимо настроить DNS сервер. Будем использовать dnsmasq.

*HQ-SRV*

Теперь открываем скрипт-инициализации сервиса dnsmasq

ищем строчку DNSMASQ_OPTS

Убираем оттуда local-service

Перезагружаем службу dnsmasq:

systemctl restart dnsmasq

После настройки dns-сервера прописываем всем машинам в /etc/resolv.conf:

nameserver 192.168.100.2

Настройте часовой пояс на всех устройствах, согласно месту проведения экзамена.

*HQ-SRV, HQ-CLI, BR-SRV*

Проверяем какой часовой пояс установлен:

timedatectl status

Если отличается, то устанавливаем:

timedatectl set-timezone Asia/Yekaterinburg

МОДУЛЬ 2

Чтобы зайти на стенд для 2-3 модуля.

User name: m2

Password: modul2

1. Настройте доменный контроллер Samba на машине BR-SRV.

(СДЕЛАТЬ SNAPSHOT BR-SRV)

  • Создайте 5 пользователей для офиса HQ: имена пользователей формата user№.hq. Создайте группу hq, введите в эту группу созданных пользователей
  • Введите в домен машину HQ-CLI
  • Пользователи группы hq имеют право аутентифицироваться на клиентском ПК
  • Пользователи группы hq должны иметь возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id. Запускать другие команды с повышенными привилегиями пользователи группы не имеют права
  • Выполните импорт пользователей из файла users.csv. Файл будет располагаться на виртуальной машине BR-SRV в папке /opt

*BR-SRV*

Обязательно: Временно заменяем в /etc/resolv.conf 192.168.100.2 на 10.0.1.4, чтобы samba быстрее скачивалось

Переходим к настройкам самого контроллера домена на BR-SRV

РЕКОМЕНДАЦИЯ: НА CLI: apt-get update && apt-get remove -y alterator-datetime && apt-get install -y task-auth-ad-sssd && apt-get install -y admc НА HQ-SRV: apt update && apt install mdadm -y НА CLI: apt-get install -y openssh-server && systemctl restart sshd.

Появится синее окно, не пугайтесь, так и должно быть. В первом окне вводим имя домена au-team.irpo, а во втором — имя нашего сервера hq-srv

Удаляем докер:

apt remove docker.io -y && ip link delete docker0;

  • Проверяем что установлено имя в формате FQDN;
  • Задаём domainname;
  • Очищаем конфигурацию samba;
  • Разворачиваем контроллер домена Active Directory на базе SambaDC с Dnsmasq в качестве DNS

Подготовка домена: Samba-tool --realm=au-team.irpo --domain=au-team adminpass=”PAssw0rd” --dnsbackend=SAMBA_INTERNAL --option=”dns forwrder=192.168.100.2” --server-role=dc

ВЫ МОЖЕТЕ НАПИСАТЬ ТОЛЬКО «Samba-tool domain provision», А ОСТАЛЬНОЕ ОНО СПРОСИТ САМО

Как видим че то не так, надо перезапустить машинку:

reboot

Вводим все заново
Проверяем:

Ничего не показывает, надо перезапустить машину, снова проверяем:

Обязательно: ВВОДИМ МАШИНУ обратно В ДОМЕН:
nano /etc/resolv.conf nameserver 192.168.100.2

РЕКОМЕНДАЦИЯ: НА BR-SRV здесь же скачиваем: apt install ansible -y
НА HQ-SRV скачиваем: apt install nfs-kernel-server -y

На клиента ставим необходимые пакеты

*CLI*

При установке пакета task-auth-ad-sssd у вас возникнет ошибка, связанная с конфликтом с пакетом alterator-datetime, его необходимо удалить:

apt-get update && apt-get remove -y alterator-datetime

После пропишем инсталл:

apt-get install -y task-auth-ad-sssd

Переходим к редактированию временного соединения и в качестве DNS-сервера прописываем адрес HQ-SRV, а также указываем поисковый домен:

Переходим в Центр управления системой, на вкладке Пользователи выбираем Аутентификация

Вводим пароль администратора домена:

Нажимаем ОК и перезагружаем систему:

РЕКОМЕНДАЦИЯ: НА BR-SRV скачиваем: apt install -y docker.io docker-compose
НА HQ-SRV скачиваем: apt install -y apache* -y

В качестве проверки после перезагрузки можно выполнить аутентификацию от имени доменного пользователя Administrator:

Организуем отслеживание подключения к домену: CLI: На клиенте с граф. интерфейсом установим Модуль удаленного управления базой данных конфигурации (ADMC) • Установим пакет admc:

apt-get install -y admc

Для использования ADMC необходимо предварительно получить ключ Kerberos для администратора домена. Получить ключ Kerberos можно, например, выполнив следующую команду, из под обычного пользователя:

kinit Administrator

ADMC запускается из меню запуска приложений: пункт «Системные» → ADMC или из командной строки (команда admc).


Если admc долго не может запуститься(не выдает ошибок, но не запускается), то внесите изменения в файл /etc/krb5.conf


На вкладке «Компьютеры» в графическом режиме удобно отслеживать подключение к домену.

Создаем пять юзеров:

Создаем группу hq и в нее добавляем раннее созданных пользователей

Пользователи группы hq должны иметь возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id. Запускать другие команды с повышенными привилегиями пользователи группы не имеют права

*CLI*

Настройте файл /etc/sudoers на рабочей станции Linux, как описано в предыдущем ответе, используя синтаксис для доменных групп:
%hq ALL=(ALL) NOPASSWD: /bin/cat, /bin/grep, /usr/bin/id

РЕКОМЕНДАЦИЯ: НА BR-SRV скачиваем: apt install y mariadb-*
НА HQ-SRV скачиваем: apt install -y php php8.2 php-curl php-zip php-xml libapache2-mod-php php-mysql php-mbstring php-gd php-intl php-soap -y

2. Сконфигурируйте файловое хранилище

(СДЕЛАТЬ SNAPSHOT на HQ-SRV)

  • При помощи трёх дополнительных дисков, размером 1Гб каждый, на HQ-SRV сконфигурируйте дисковый массив уровня 5
  • Имя устройства md0, конфигурация массива размещается в файле /etc/mdadm.conf
  • Обеспечьте автоматическое монтирование в папку /raid5
  • Создайте раздел, отформатируйте раздел, в качестве файловой системы используйте ext4
  • Настройте сервер сетевой файловой системы(nfs), в качестве папки общего доступа выберите /raid5/nfs, доступ для чтения и записи для всей сети в сторону HQ-CLI
  • На HQ-CLI настройте автомонтирование в папку /mnt/nfs
  • Основные параметры сервера отметьте в отчёте

Подготовка дисков

*HQ-SRV*

Убедитесь, что дополнительные диски распознаны системой. Список подключенных дисков можно проверить командой:

Создайте RAID 5 массив из трех 1Гб дисков (предположим, они определены как /dev/sdb, /dev/sdc, и /dev/sdd):

Скачаем службу mdadm:

Проверяем:

Проверьте статус RAID массива:

Сохраните конфигурацию массива в файл /etc/mdadm.conf:

  1. Создание файловой системы и настройка монтирования

Создайте раздел и отформатируйте его в ext4:

Создайте точку монтирования и настройте автоматическое монтирование в /etc/fstab:

Смонтируйте файловую систему:

  1. Настройка NFS-сервера на HQ-SRV

Установите NFS-сервер (если он еще не установлен):

Создайте директорию для общего доступа:

Настройте права доступа для общей папки:

Настройте экспорт NFS для всей сети с разрешением на чтение и запись.
Откройте файл /etc/exports и добавьте строку:

Примените изменения в конфигурации NFS:

Перезапустите NFS-сервер:

ПРИМЕЧАНИЕ Основные параметры сервера отметьте в отчёте

  1. Настройка автомонтирования на HQ-CLI (под ALT Workstation)

*HQ-CLI*

Создайте точку монтирования:

Настройте автомонтирование в /etc/fstab, откройте этот файл и добавьте следующую строку:

Смонтируйте папку вручную (или перезагрузите систему для применения настроек):

Проверка подключения NFS на HQ-CLI:

РЕКОМЕНДАЦИЯ: НА HQ-SRV скачиваем: apt install -y mariadb-* -y

3. Настройте службу сетевого времени на базе сервиса chrony

  • В качестве сервера выступает HQ-RTR
  • На HQ-RTR настройте сервер chrony, выберите стратум 5 43
  • В качестве клиентов настройте HQ-SRV, HQ-CLI, BR-RTR, BR-SRV
  1. Настройка NTP сервера:

*HQ-RTR*

Установим пакет chrony на каждой машине:

apt install -y chrony

Приводим конфигурационный файл "chrony.conf" к следующему виду:

nano /etc/chrony/chrony.conf

где:

  • server 127.0.0.1 iburst prefer - указываем сервером синхронизации самого себя, опция «iburst» принудительно отправляет сразу несколько пакетов для точности синхронизации,
  • hwtimestamp * - опция, чтобы сетевой интерфейс считал собственный источник времени верным и синхронизировал клиентов с ним;
  • local stratum 5 - устанавливаем для себя значение по stratum = 5;
  • allow - кому разрешается подключаться к серверу и запрашивать время: чтобы не перечеслять все используемые в задании IPv4 и IPv6 сети, используется 0/0 и ::/0;

Запускаем и добавляем в автозагрузку службу chronyd, и не забываем рестартать сервис:

systemctl enable --now chrony
systemctl restart chrony

Проверяем:

  1. Настройка NTP клиентов:

*HQ-SRV, BR-SRV, BR-RTR, HQ-CLI*

Установим пакет chrony:

apt install -y chrony

Приводим конфигурационный файл "chrony.conf" к следующему виду:

nano /etc/chrony/chrony.conf

где: 192.168.100.1 - IPv4 адрес HQ-R;

Запускаем и добавляем в автозагрузку службу chronyd:

systemctl enable --now chrony

на cli chronyd

systemctl restart chrony

на cli chronyd

Проверяем с клиента HQ-SRV:

Проверяем с сервера HQ-R:

BR-R | BR-SRV | CLI: Настройка аналогична HQ-SRV - за исключением указания соответствующих адресов

РЕКОМЕНДАЦИЯ: НА HQ-SRV скачиваем: apt install -y git

4. Сконфигурируйте ansible на сервере BR-SRV

(СДЕЛАЙ SNAPSHOT НА BR-SRV)

  • Сформируйте файл инвентаря, в инвентарь должны входить HQSRV, HQ-CLI, HQ-RTR и BR-RTR
  • Рабочий каталог ansible должен располагаться в /etc/ansible
  • Все указанные машины должны без предупреждений и ошибок отвечать pong на команду ping в ansible посланную с BR-SRV

*BR-SRV*

  1. Установите Ansible (если он еще не установлен):

apt update && apt install ansible -y

  1. Создание рабочего каталога Ansible

Ansible обычно уже использует /etc/ansible как рабочий каталог, но если его нет, создайте его вручную:

  1. Создание файла инвентаря

Создайте инвентарь файла : /etc/ansible/hosts. Откройте файл /etc/ansible/hosts для редактирования:

  1. Настройка SSH-доступа к машинам

Для того чтобы Ansible мог управлять машинами без необходимости ввода пароля, настройте SSH-доступ:


(ДОПОЛНЕНИЕ)

*HQ-CLI*

Для hq-cli нужно установить ssh службу: apt-get install -y openssh-server

Перезагружаем ssh на hq-cli: systemctl restart sshd

Для того чтобы зайти в конфиг ssh на альт линукс(cli) нужно ввести команду: nano /etc/openssh/sshd_config


Скопируйте SSH-ключ на всех машинах в инвентаре : Выполните эту команду для каждой машины, чтобы разрешить безпарольный доступ:

  1. Проверка подключения в Ansible

Выполните команду "ansible all -m ping" для проверки соединения со всеми хостами из инвентаря файла:

РЕКОМЕНДАЦИЯ: НА HQ-SRV скачиваем: git clone git://git.moodle.org/moodle.git

5. Развертывание приложений в Docker на сервере BR-SRV.

  • Создайте в домашней директории пользователя файл wiki.yml для приложения MediaWiki.
  • Средствами docker compose должен создаваться стек контейнеров с приложением MediaWiki и базой данных.
  • Используйте два сервиса
  • Основной контейнер MediaWiki должен называться wiki и использовать образ mediawiki
  • Файл LocalSettings.php с корректными настройками должен находиться в домашней папке пользователя и автоматически монтироваться в образ.
  • Контейнер с базой данных должен называться mariadb и использовать образ mariadb (субд).
  • Разверните
  • Он должен создавать базу с названием mediawiki, доступную по стандартному порту, пользователя wiki с паролем WikiP@ssw0rd должен иметь права доступа к этой базе данных
  • MediaWiki должна быть доступна извне через порт 8080.

*BR-SRV*

  1. Скачиваем докер:

apt install -y docker.io docker-compose

  1. Включаем и добавляем в автозагрузку службу docker:

systemctl enable --now docker.service

  1. В домашней директории пользователя root создаём файл wiki.yml со следующим содержимым:

nano ~/wiki.yml

где:

  • services — основной раздел, где мы будем создавать и описывать наши сервисы (контейнеры docker). В данном примере сервиса два: MediaWiki - для приложения mediawiki и database - для базы данных; container_name — имя, которое получит созданный контейнер;
  • image — имя образа, который будет использоваться для создания контейнера;
  • restart поведения контейнера при падении;
  • ports (внешняя публикация). С помощью данной опции мы можем указывать, на каких портах должен слушать контейнер и на какие порты должны пробрасываться запросы
  • environment — задаем переменные окружения;
  • volumes - проброс папок;
  • links - ссылайтесь на контейнеры в другом сервисе. Укажите либо имя сервиса, либо псевдоним ссылки (SERVICE:ALIAS)

apt install y mariadb-*

P.S. После первоначальной настройки через Web-интерфейс с CLI загрузите LocalSettings.php в тот же каталог, что и эта wiki.yml и раскомментируйте следующую строку "# - ./LocalSettings.php:/var/www/html/LocalSettings.php" и используйте docker-compose для перезапуска службы mediawiki

  1. Чтобы отдельный volume для хранения базы данных имел правильное имя - создаём его средствами docker:

docker volume create dbvolume

  1. Выполняем сборку и запуск стека контейнеров с приложением MediaWiki и базой данных описанных в файле wiki.yml:

docker-compose -f wiki.yml up -d

Проверяем:

*HQ-CLI*

su -

echo “192.168.200.2 wiki.au-team.irpo mediawiki” >> /etc/hosts

  1. Переходим в браузер http://wiki.au-team.irpo:8080/ для продолжения установки через веб-интерфейс - нажимаем set up the wiki:

  1. Выбираем необходимый Язык - нажимаем Далее:

  1. После успешной проверки внешней среды - нажимаем Далее:

  1. Заполняем параметры подключение к Базе Данных в соответствие с заданными переменными окружения в wiki.yml, которые соответствуют требованиям задания:

Пример заполнения:

Хост базы данных: db
Имя базы данных: mediawiki
Имя пользователя базы данных: wiki
Пароль базы данных: WikiP@ssw0rd

  1. Заполняем необходимые сведения:

  1. После чего будет автоматически скачен файл LocalSettings.php - который необходимо передать на BR-SRV в домашнюю директорию пользователя root туда же где лежит wiki.yml:

  1. Забираем файл LocalSettings.php с CLI:

*HQ-CLI:*

*BR-SRV:

Перемещаем в домашнюю директорию пользователя /root:

Проверяем:


Прямой поиск файла поиск файла LocalSettings.php командой find:

find / -name LocalSettings.php 2>/dev/null

Команда "ls"(list) показывает файлы и директории в текущем каталоге.
Команда "pwd" показывает каталоr в котором ты находишься.


Перезапускаем сервисы средствами docker-compose:

docker-compose -f wiki.yml stop
docker-compose -f wiki.yml up -d

*Снова HQ-CLI:*

  1. Проверяем доступ к http://wiki.au-team.irpo:8080

  1. Вход, в моем случае, из под пользователя admin с паролем P@ssw0rddd

6. На маршрутизаторах сконфигурируйте статическую трансляцию портов

  • Пробросьте порт 80 в порт 8080 на BR-SRV на маршрутизаторе BR-RTR, для обеспечения работы сервиса wiki
  • Пробросьте порт 2024 в порт 2024 на HQ-SRV на маршрутизаторе HQ-RTR
  • Пробросьте порт 2024 в порт 2024 на BR-SRV на маршрутизаторе BR-RTR

*BR-RTR*

*HQ-RTR*

7. Запустите сервис moodle на сервере HQ-SRV

  • Используйте веб-сервер apache
  • В качестве системы управления базами данных используйте mariadb
  • Создайте базу данных moodledb
  • Создайте пользователя moodle с паролем P@ssw0rd и предоставьте ему права доступа к этой базе данных
  • У пользователя admin в системе обучения задайте пароль P@ssw0rd
  • На главной странице должен отражаться номер рабочего места в виде арабской цифры, других подписей делать не надо
  • Основные параметры отметьте в отчёт

*HQ-SRV*

> !По сути у нас уже все скачено!

Устанавливаем веб-сервер Apache2 и необходимые пакеты:

apt install -y apache -y*

Устанавливаем PHP и необходимые модули:

apt install -y php php8.2 php-curl php-zip php-xml libapache2-mod-php php-mysql php-mbstring php-gd php-intl php-soap -y

Установка СУБД MySQL:

apt install -y mariadb- -y*

!По сути у нас уже все скачено!

Включаем и добавляем в автозагрузку MySQL:

systemctl enable --now mariadb
systemctl enable --now apache2

Подключаемся к MySQL, создаём базу данных и пользователя:
имя базы даных - " moodledb ";
имя пользователя - "moodle", пароль "P@ssw0rd";

**mysql
> CREATE DATABASE moodledb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
> CREATE USER 'moodle'@'localhost' IDENTIFIED BY 'P@ssw0rd';
> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER ON moodle. TO 'moodle'@'localhost';

> EXIT;


Если вдруг в веб при вводе данных параметров базы данных будет вылазить ошибка данной базы данных не существует, данному пользователю не даны права на создание базы данных, то удаляем их и создаем заново:

>DROP DATABASE moodledb; >DROP USER 'moodle'@'localhost';


Устанавливаем git, чтобы можно было скачать проект Moodle:

!По сути у нас уже все скачено!

apt install -y git

Загружаем код проекта Moodle:

git clone git://git.moodle.org/moodle.git

!По сути у нас уже все скачено!

Переходим в загруженный каталог moodle:

cd moodle

Извлекаем список каждой доступной ветви:

git branch -a

Сообщаем git, какую ветку отслеживать или использовать:

git branch --track MOODLE_403_STABLE origin/MOODLE_403_STABLE

проверяем:

git checkout MOODLE_403_STABLE

Копируем локальный репозиторий в /var/www/html/:

cd ..
cp -R moodle /var/www/html

Создаём необходимую структуру каталагов для корректной установки и работы Moodle:

mkdir /var/moodledata
chown -R www-data /var/moodledata
chmod -R 777 /var/moodledata
chmod -R 0755 /var/www/html/moodle
chown -R www-data:www-data /var/www/html/moodle

Описываем конфигурационный файл для веб-сервера Apache:

nano /etc/apache2/sites-available/moodle.conf

где:

  • ServerName - основное имя домена
  • ServerAlias - дополнительное имя, по которому будет доступен сайт
  • DocumentRoot - путь до проекта для этого домена
  • AllowOverride All - когда сервер находит .htaccess файл (как определено AccessFileName) ему необходимо знать какие директивы, объявленные в том файле могут отменять ранее утановленную информацию доступа. Эта директива может быть установлена в None, т.е. чтобы сервер не читал файл .htaccess. Если она установленна в All - сервер будет допускать все директивы .htaccess файла.
  • Options -Indexes +FollowSymLinks - означает, что если каталог является символьной ссылкой, перейдите по ссылке

Создаём символьную ссылку из sites-available на sites-enabled:

ln -s /etc/apache2/sites-available/moodle.conf /etc/sites-enabled

Проверяем синтаксис файла виртуального хоста: apachectl configtest

Правим количество входных переменных, которые могут быть приняты в одном запросе, для работы Moodle - необходимо 5000, а значение в php.ini по умолчанию 1000:

Проверяем:

nano /etc/php/8.2/apache2/php.ini

Перезагружаем apache:

systemctl restart apache2

*HQ-CLI*

После можно переходить в браузер для установки Moodle по http://<IP | domain-name>/install.php

  1. Перед тем как зайти на сайт в hq-cli в файле /etc/hosts прописываем следующее:

192.168.100.2 moodle.au-team.irpo moodle

  1. Открываем firefox переходим на http://moodle.au-team.irpo/moodle
  • выбираем Язык - нажимаем "Далее":

  1. Подтверждаем пути - правим Каталог данных (в соответствии с созданной ранее директорией - /var/moodledata) - нажимаем "Далее":

  1. Выбираем драйвер баз данных MariaDB - нажимаем "Далее":

  1. Заполняем параметры ранее созданной Базы данных - "пользователя БД, пароль и порт":

СЕРВЕР БАЗ ДАННЫХ (ХОСТ) localhost
НАЗВАНИЕ БАЗЫ ДАННЫХ moodle
ПОЛЬЗОВАТЕЛЬ БАЗЫ ДАННЫХ moodle
ПАРОЛЬ P@ssw0rd

  1. нажимаем - "Продолжить":

  1. Нажимаем - "Продолжить": не обращаем внимание на то, что у нас не настроен https

РЕКОМЕНДАЦИЯ: пока идет долгая установка делаем nginx на hq-rtr, он идет сразу после moodle

  1. заполняем необходимые сведения и нажимаем - "Обновить профиль":

  1. Заполняем необходимые сведения и нажимаем - "Сохранить изменения":

8. Настройте веб-сервер nginx как обратный прокси-сервер на HQ-RTR

  • При обращении к HQ-RTR по доменному имени moodle.au-team.irpo клиента должно перенаправлять на HQ-SRV на стандартный порт, на сервис moodle
  • При обращении к HQ-RTR по доменному имени wiki. au-team.irpo клиента должно перенаправлять на BR-SRV на порт, на сервис mediwiki

*HQ-RTR*

  1. Установите Nginx

apt install nginx -y

Запустите и активируйте Nginx:

systemctl start nginx
systemctl enable nginx

  1. Настройка Nginx как обратного прокси

Создадим конфигурационный файл для сайта в Nginx, в котором настроим виртуальные хосты:

Добавьте конфигурацию для проксирования запросов в файл reverse-proxy.conf:

Сохраните файл и закройте редактор.

Создайте символическую ссылку на этот файл в папке sites-enabled для активации конфигурации:

Проверьте конфигурацию Nginx на наличие синтаксических ошибок:

> на hq-rtr в файле /etc/resolv.conf должно быть прописано dns 192.168.100.2

Если конфигурация правильная, вы увидите сообщение syntax is ok.

Перезагрузите Nginx, чтобы применить изменения:

systemctl reload nginx

9. Удобным способом установите приложение Яндекс Браузере для организаций

*HQ-CLI*

> **ПРИМЕЧАНИЕ:** > Установку браузера отметьте в отчёте

МОДУЛЬ 3

(1,2 заданий не будет, 7ое задание будет)

Description
No description provided
Readme 19 MiB
Languages
Shell 59.7%
PHP 40.3%