This commit is contained in:
shiraorie
2025-10-29 18:57:37 +01:00
parent 2fcec68ec7
commit 501e763754
29 changed files with 275 additions and 279 deletions

517
README.md
View File

@@ -687,13 +687,10 @@ ________________________________________________________________________________
<p align="center"><b>(СДЕЛАТЬ SNAPSHOT, если не сделали, на HQ-SRV)</b></p>
- При помощи трёх дополнительных дисков, размером 1Гб каждый, на HQ-SRV сконфигурируйте дисковый массив уровня 0
- Имя устройства md0, конфигурация массива размещается в файле /etc/mdadm.conf
- Обеспечьте автоматическое монтирование в папку /raid0
- Создайте раздел, отформатируйте раздел, в качестве файловой системы используйте ext4
- Настройте сервер сетевой файловой системы(nfs), в качестве папки общего доступа выберите /raid0/nfs, доступ для чтения и записи для всей сети в сторону HQ-CLI
- На HQ-CLI настройте автомонтирование в папку /mnt/nfs
- Основные параметры сервера отметьте в отчёте
- При помощи двух подключенных к серверу дополнительных дисков размером 1 Гб сконфигурируйте дисковый массив уровня 0
- Имя устройства md0, при необходимости конфигурация массива размещается в файле /etc/mdadm.conf
- Создайте раздел, отформатируйте раздел, в качестве файловой системы используйте ext4
- Обеспечьте автоматическое монтирование в папку /raid
Подготовка дисков
@@ -702,10 +699,10 @@ ________________________________________________________________________________
Убедитесь, что дополнительные диски распознаны системой. Список подключенных дисков можно проверить командой:
<p align="center">
<img src="images/module2/17.mdadm.png" width="600" />
<img src="images\module2\disk.png" width="600" />
</p>
Создайте RAID 0 массив из трехб дисков (предположим, они определены как /dev/sdb, /dev/sdc, и /dev/sdd):
Создайте RAID 0 массив из двухб дисков (предположим, они определены как /dev/sda, /dev/sdb:
Скачаем службу mdadm:
@@ -713,129 +710,181 @@ ________________________________________________________________________________
<img src="images/module2/18.png" width="600" />
</p>
Зануление суперблоков на дисках, которые будут использоваться для построения RAID-массива:
>mdadm --zero-superblock --force /dev/sda /dev/sdb
Создание RAID-массива:
где:
/dev/md0 — устройство RAID, которое появится после сборки;
-l 0 — уровень RAID;
-n 2 — количество дисков, из которых собирается массив;
/dev/sd{b,c} — сборка выполняется из дисков sdb, sdc и sdd.
> mdadm --create --verbose /dev/md0 -l 0 -n 2 /dev/sda /dev/sdb
Результат:
<p align="center">
<img src="picture для варинта 2/mdadm-1.png" width="600" />
<img src="images\module2\mdadm.png" width="600" />
</p>
Проверяем:
<p align="center">
<img src="images/module2/20.png" width="600" />
<img src="images\module2\lsblk.png" width="600" />
</p>
Проверьте статус RAID массива:
Сохраняем конфигурацию массива в файле /etc/mdadm.conf:
>mdadm --detail --scan --verbose | tee -a /etc/mdadm.conf
Результат:
<p align="center">
<img src="picture для варинта 2/mdadm-2.png" width="600" />
<img src="images\module2\save mdadm conf.png" width="600" />
</p>
Сохраните конфигурацию массива в файл /etc/mdadm.conf:
Создание файловой системы для массива
<p align="center">
<img src="picture для варинта 2/mdadm-3.png" width="600" />
</p>
>mkfs.ext4 /dev/md0
1. Создание файловой системы и настройка монтирования
Создайте раздел и отформатируйте его в ext4:
Результат:
<p align="center">
<img src="picture для варинта 2/mdadm-4.png" width="600" />
</p>
Создайте точку монтирования и настройте автоматическое монтирование в /etc/fstab:
Чтобы данный раздел также монтировался при загрузке системы, добавляем в fstab
>nano /etc/fstab
следующую информацию:
<p align="center">
<img src="picture для варинта 2/mdadm-5.png" width="600" />
</p>
<p align="center">
<img src="picture для варинта 2/mdadm-6.png" width="600" />
<img src="images\module2\fstab.png" width="600" />
</p>
Смонтируйте файловую систему:
Выполняем монтирование:
>mount -av
Результат:
<p align="center">
<img src="picture для варинта 2/mdadm-7.png" width="600" />
<img src="images\module2\mount -av.png" width="600" />
</p>
**Больше не перезагружай hq-srv(появиться ошибка с raidом)**
Проверяем:
2. Настройка NFS-сервера на HQ-SRV
>df -h
Установите NFS-сервер (если он еще не установлен):
Результат:
<p align="center">
<img src="images/module2/26.nfs-server.png" width="600" />
<img src="images\module2\df -h.png" width="600" />
</p>
Создайте директорию для общего доступа:
### <p align="center"><b>3. Настройте сервер сетевой файловой системы (nfs) на HQ-SRV</b></p>
- В качестве папки общего доступа выберите /raid/nfs, доступ для чтения и записи исключительно для сети в сторону HQ-CLI
- На HQ-CLI настройте автомонтирование в папку /mnt/nfs
- Основные параметры сервера отметьте в отчёте
<p align="center"><b>*HQ-SRV*</b></p>
Устанавливаем пакеты для NFS сервера:
>apt-get install -y nfs-server cifs-utils
Создаём директорию для общего доступа /raid/nfs, куда ранее был смонтирован RAID - массив:
>mkdir /raid0/nfs
Назначаем права на созданную директорию (полный доступ):
>chmod 777 /raid0/nfs
Редактируем файл /etc/exports:
>nano /etc/exports
Добавляем туда следующую информацию, где:
/raid/nfs - общий ресурс
192.168.200.0/24 - клиентская сеть, которой разрешено монтирования общего ресурса
rw — разрешены чтение и запись
no_root_squash — отключение ограничения прав root
<p align="center">
<img src="picture для варинта 2/mdadm-8.png" width="600" />
<img src="images\module2\exports.png" width="600" />
</p>
Настройте права доступа для общей папки:
Экспортируем файловую систему, указанную выше в /etc/exports:
> exportfs -arv
Результат:
exportfs с флагом -a, означающим экспортировать или отменить экспорт всех каталогов
-r означает повторный экспорт всех каталогов, синхронизируя /var/lib/nfs/etab с /etc/exports и файлами в /etc/exports.d
а флаг -v включает подробный вывод:
<p align="center">
<img src="picture для варинта 2/mdadm-9.png" width="600" />
<img src="images\module2\export.png" width="600" />
</p>
Настройте экспорт NFS для всей сети с разрешением на чтение и запись.
Откройте файл /etc/exports и добавьте строку:
<p align="center">
<img src="picture для варинта 2/mdadm-10.png" width="600" />
</p>
Примените изменения в конфигурации NFS:
<p align="center">
<img src="images/module2/30.png" width="600" />
</p>
Перезапустите NFS-сервер:
<p align="center">
<img src="images/module2/31.png" width="600" />
</p>
> **ПРИМЕЧАНИЕ**
> Основные параметры сервера отметьте в отчёте
3. Настройка автомонтирования на HQ-CLI (под ALT Workstation)
**(СДЕЛАТЬ SNAPSHOT НА HQ-CLI)**
Запускаем и добавляем в автозагрузку NFS - сервер:
>systemctl enable --now nfs-server
<p align="center"><b>*HQ-CLI*</b></p>
Создайте точку монтирования:
Выполняем установку пакетов для NFS - клиента:
>apt-get update && apt-get install -y nfs-utils nfs-clients
Создадим директорию для монтирования общего ресурса:
>mkdir /mnt/nfs
Задаём права на созданную директорию:
>chmod 777 /mnt/nfs
Настраиваем автомонтирование общего ресурса через fstab:
>nano /etc/fstab
Добавляем следующую информацию:
где: 192.168.100.2 - адрес файлового сервера (HQ-SRV)
<p align="center">
<img src="images/module2/32,cli-automount.png" width="600" />
<img src="images\module2\fstab cli.png" width="600" />
</p>
Настройте автомонтирование в /etc/fstab, откройте этот файл и добавьте следующую строку:
Выполняем монтирование общего ресурса:
>mount -av
Результат:
<p align="center">
<img src="picture для варинта 2/mdadm-11.png" width="600" />
<img src="images\module2\mount.png" width="600" />
</p>
Смонтируйте папку вручную (или перезагрузите систему для применения настроек):
Проверяем:
>df -h
Результат:
<p align="center">
<img src="images/module2/34.png" width="600" />
<img src="images\module2\df -h cli.png" width="600" />
</p>
Проверка подключения NFS на HQ-CLI:
<p align="center">
<img src="picture для варинта 2/mdadm-12.png" width="600" />
</p>
### <p align="center"><b>3. Настройте службу сетевого времени на базе сервиса chrony</b></p>
### <p align="center"><b>4. Настройте службу сетевого времени на базе сервиса chrony</b></p>
- В качестве сервера выступает ISP
- На ISP настройте сервер chrony, выберите стратум 5
@@ -892,7 +941,7 @@ ________________________________________________________________________________
> На HQ-CLI /etc/chrony.conf
<p align="center">
<img src="images/module2/39.png" width="600" />
<img src="images\module2\chrony cli.png" width="600" />
</p>
> где: 172.16.1.1 - IPv4 адрес ISP;
@@ -924,7 +973,7 @@ BR-RTR | BR-SRV | CLI: Настройка аналогична HQ-SRV - за и
> НА HQ-SRV скачиваем: apt install -y git
> НА HQ-RTR скачиваем: apt install nginx -y
### <p align="center"><b>4. Сконфигурируйте ansible на сервере BR-SRV</b></p>
### <p align="center"><b>5. Сконфигурируйте ansible на сервере BR-SRV</b></p>
<p align="center"><b>(СДЕЛАЙ SNAPSHOT НА BR-SRV)</b></p>
@@ -1001,10 +1050,10 @@ ________________________________________________________________________________
</p>
<p align="center">
<img src="picture для варинта 2/ansible-hq-srv.png" width="600" />
<img src="images\module2\copy id.png" width="600" />
</p>
> Димка забыл прописать порт 3015 в /etc/ssh/sshd_config на HQ-SRV, так что прописываем за него и перезагружаем службу systemctl restart sshd
> Дмитрий Игоревич забыл прописать порт 2026 в /etc/ssh/sshd_config на HQ-SRV и BR-SRV, так что прописываем за него и перезагружаем службу systemctl restart sshd
<p align="center">
<img src="images/module2/new-ansible2.png" width="600" />
@@ -1022,7 +1071,7 @@ ________________________________________________________________________________
<img src="images/module2/50.png" width="600" />
</p>
### <p align="center"><b>5. Развертывание приложений в Docker на сервере BR-SRV.</b></p>
### <p align="center"><b>6. Развертывание приложений в Docker на сервере BR-SRV.</b></p>
-• Средствами docker должен создаваться стек контейнеров с веб
приложением и базой данных
@@ -1079,40 +1128,54 @@ P@ssw0rd, порт приложения 8080, при необходимости
<img src="images\module2\image ls.png" width="600" />
</p>
- Скачиваем curl
<p align="center">
<img src="images\module2\install curl br-srv.png" width="600" />
</p>
- Скачиваем файл compose.yaml и помещаем его в корневую директорию:
https://raw.githubusercontent.com/shiraorie/demo2026-1/main/files/compose.yaml
### <p align="center"><b>6. На маршрутизаторах сконфигурируйте статическую трансляцию портов</b></p>
- Пробросьте порт 80 в порт 8080 на BR-SRV на маршрутизаторе BR-RTR, для обеспечения работы сервиса wiki
- Пробросьте порт 80 в порт 80 на HQ-SRV на маршрутизаторе HQ-RTR, для обеспечения работы сервиса moodle
- Пробросьте порт 3015 в порт 3015 на BR-SRV на маршрутизаторе BR-RTR
- Пробросьте порт 3015 в порт 3015 на HQ-SRV на маршрутизаторе HQ-RTR
<p align="center"><b>*BR-RTR*</b></p>
>curl -o ~/compose.yaml https://raw.githubusercontent.com/shiraorie/demo2026-1/main/files/compose.yaml
<p align="center">
<img src="picture для варинта 2/translate-br-rtr.png" width="600" />
<img src="images\module2\compose.yaml.png" width="600" />
</p>
<p align="center"><b>*HQ-RTR*</b></p>
- Запустить набор контейнеров с веб приложением и базой данных:
<p align="center">
<img src="picture для варинта 2/translate-hq-rtr.png" width="600" />
<img src="images\module2\docker-compose.png" width="600" />
</p>
### <p align="center"><b>7. Запустите сервис moodle на сервере HQ-SRV</b></p>
- Проверяем набор контейнеров с веб приложением и базой данных:
- Используйте веб-сервер apache
- В качестве системы управления базами данных используйте mariadb
- Создайте базу данных moodledb
- Создайте пользователя moodle с паролем P@ssw0rd и предоставьте ему права доступа к этой базе данных
- У пользователя admin в системе обучения задайте пароль P@ssw0rd
- На главной странице должен отражаться номер рабочего места в виде арабской цифры, других подписей делать не надо
- Основные параметры отметьте в отчёт
<p align="center">
<img src="images\module2\compose ps.png" width="600" />
</p>
- Проверяем доступ до веб приложения с браузера:
<p align="center">
<img src="images\module2\site.png" width="600" />
</p>
### <p align="center"><b>7. Разверните веб приложениена сервере HQ-SRV:</b></p>
- Используйте веб-сервер apache
- В качестве системы управления базами данных используйте mariadb
- Файлы веб приложения и дамп базы данных находятся в директории web
образа Additional.iso
- Выполните импорт схемы и данных из файла dump.sql в базу данных
webdb
66
- Создайте пользователя webс паролем P@ssw0rd и предоставьте ему
права доступа к этой базе данных
- Файлы index.php и директорию images скопируйте в каталог веб сервера
apache
- В файле index.php укажите правильные учётные данные для
подключения к БД
- Запустите веб сервер и убедитесь в работоспособности приложения
- Основные параметры отметьте в отчёте
<p align="center"><b>*HQ-SRV*</b></p>
@@ -1120,15 +1183,15 @@ https://raw.githubusercontent.com/shiraorie/demo2026-1/main/files/compose.yaml
Устанавливаем веб-сервер Apache2 и необходимые пакеты:
apt install -y apache* -y
>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
>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
> apt install -y mariadb-* -y
> Ранее в "рекомендациях" должно было быть скачено
Включаем и добавляем в автозагрузку MySQL:
@@ -1136,206 +1199,138 @@ apt install -y mariadb-* -y
***systemctl enable --now mariadb***
***systemctl enable --now apache2***
Подключаемся к MySQL, создаём базу данных и пользователя:
имя базы даных - " moodledb ";
имя пользователя - "moodle", пароль "P@ssw0rd";
Выполнить монтирование Additional.iso в директорию /mnt:
Вводим следующие команды:
- 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 moodledb.* 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***
> mount /dev/sr0 /mnt/
<p align="center">
<img src="images/module2/78.moodle.png" width="600" />
<img src="images\module2\mount additional.iso.png" width="600" />
</p>
Произвести копирование файлов веб приложения index.php и logo.png в директорию /var/www/html:
Сообщаем git, какую ветку отслеживать или использовать:
>cp /mnt/web/index.php /var/www/html
***git branch --track MOODLE_403_STABLE origin/MOODLE_403_STABLE***
>cp /mnt/web/logo.png /var/www/html
проверяем:
В файле /var/www/html/index.php указать правильные учётные данные для подключения к БД:
***git checkout MOODLE_403_STABLE***
> nano /var/www/html/index.php
<p align="center">
<img src="images/module2/79.png" width="600" />
<img src="images\module2\index.php.png" width="600" />
</p>
Копируем локальный репозиторий в /var/www/html/:
Перейти в интерфейс управления MariaDB:
***cd ..***
***cp -R moodle /var/www/html***
>mariadb u root
Создаём необходимую структуру каталагов для корректной установки и работы Moodle:
Создать базу данных с именем webdb:
***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***
>CREATE DATABASE webdb;
Создать пользователя webc с паролем P@ssw0rd:
>CREATE USER webc@localhost IDENTIFIED BY P@ssw0rd;
Назначить пользователю webc полные права на базу данных webdb, после чего выйти из интерфейса управления MariaDB:
>GRANT ALL PRIVILEGES ON webdb.* TO webc@localhost WITH GRANT OPTION;
EXIT;
Изменить кодировку файла
<p align="center">
<img src="images/module2/moodle_language.jpg" width="600" />
<img src="images\module2\dump.sql.png" width="600" />
</p>
Описываем конфигурационный файл для веб-сервера Apache:
Выполнить импорт схемы и данных из файла dump.sql в базу данных webdb:
***nano /etc/apache2/sites-available/moodle.conf***
>mariadb u webc p D webdb < ~/dump.sql
Проверить:
<p align="center">
<img src="images/module2/80.png" width="600" />
<img src="images\module2\maria.png" width="600" />
</p>
> где:
> - ServerName - основное имя домена
> - ServerAlias - дополнительное имя, по которому будет доступен сайт
> - DocumentRoot - путь до проекта для этого домена
> - AllowOverride All - когда сервер находит .htaccess файл (как определено AccessFileName) ему необходимо знать какие директивы, объявленные в том файле могут отменять ранее утановленную информацию доступа. Эта директива может быть установлена в None, т.е. чтобы сервер не читал файл .htaccess. Если она установленна в All - сервер будет допускать все директивы .htaccess файла.
> - Options -Indexes +FollowSymLinks - означает, что если каталог является символьной ссылкой, перейдите по ссылке
Включить и добавить в автозагрузку службу httpd2:
Создаём символьную ссылку из sites-available на sites-enabled:
>systemctl enable --now apache2
>systemctl restart apache2
***ln -s /etc/apache2/sites-available/moodle.conf /etc/sites-enabled***
Проверяем синтаксис файла виртуального хоста: ***apachectl configtest***
Проверяем доступ до веб приложения с браузера:
<p align="center">
<img src="images/module2/81.png" width="600" />
<img src="images\module2\web-apa.png" width="600" />
</p>
Правим количество входных переменных, которые могут быть приняты в одном запросе, для работы Moodle - необходимо 5000, а значение в php.ini по умолчанию 1000:
### <p align="center"><b>8. На маршрутизаторах сконфигурируйте статическую трансляцию портов</b></p>
- Пробросьте порт 8080 в порт приложения testapp BR-SRV на маршрутизаторе BR-RTR, для обеспечения работы приложения testapp извне
- Пробросьте порт 8080 в порт веб приложения на HQ-SRV на маршрутизаторе HQ-RTR, для обеспечения работы веб приложения извне
- Пробросьте порт 2026 на маршрутизаторе HQ-RTR в порт 2026 сервера HQ-SRV, для подключения к серверу по протоколу ssh из внешних сетей
- Пробросьте порт 2026 на маршрутизаторе BR-RTR в порт 2026 сервера BR-SRV, для подключения к серверу по протоколу ssh из внешних сетей.
<p align="center"><b>*BR-RTR*</b></p>
<p align="center">
<img src="images/module2/82.png" width="600" />
<img src="images\module2\nftables BR-rtr.png" width="600" />
</p>
Проверяем:
***nano /etc/php/8.2/apache2/php.ini***
<p align="center">
<img src="images/module2/83.png" width="600" />
</p>
Перезагружаем apache:
***systemctl restart apache2***
<p align="center"><b>*HQ-CLI*</b></p>
После можно переходить в браузер для установки Moodle по http://<IP | domain-name>/install.php
1. Перед тем как зайти на сайт в hq-cli в файле /etc/hosts прописываем следующее:
***192.168.100.2 moodle.au-team.irpo moodle***
2. Открываем firefox переходим на *http://moodle.au-team.irpo/moodle*
- выбираем Язык - нажимаем "Далее":
<p align="center">
<img src="images/module2/84.web-moodle.png" width="600" />
</p>
3. Подтверждаем пути - правим Каталог данных (в соответствии с созданной ранее директорией - /var/moodledata) - нажимаем "Далее":
<p align="center">
<img src="images/module2/85.png" width="600" />
</p>
4. Выбираем драйвер баз данных MariaDB - нажимаем "Далее":
<p align="center">
<img src="images/module2/86.png" width="600" />
</p>
5. Заполняем параметры ранее созданной Базы данных - "пользователя БД, пароль и порт":
***СЕРВЕР БАЗ ДАННЫХ (ХОСТ) localhost***
***НАЗВАНИЕ БАЗЫ ДАННЫХ moodledb***
***ПОЛЬЗОВАТЕЛЬ БАЗЫ ДАННЫХ moodle***
***ПАРОЛЬ P@ssw0rd***
6. нажимаем - "Продолжить":
<p align="center">
<img src="images/module2/87.png" width="600" />
</p>
7. Нажимаем - "Продолжить": не обращаем внимание на то, что у нас не настроен https
<p align="center">
<img src="images/module2/88.png" width="600" />
</p>
> **РЕКОМЕНДАЦИЯ:**
> пока идет долгая установка делаем nginx на hq-rtr, он идет сразу после moodle
8. заполняем необходимые сведения и нажимаем - "Обновить профиль":
<p align="center">
<img src="images/module2/89.png" width="600" />
</p>
<p align="center">
<img src="images/module2/90.png" width="600" />
</p>
9. Заполняем необходимые сведения и нажимаем - "Сохранить изменения":
<p align="center">
<img src="images/module2/91.png" width="600" />
</p>
<p align="center">
<img src="images/module2/92.png" width="600" />
</p>
### <p align="center"><b>8. Настройте веб-сервер nginx как обратный прокси-сервер на HQ-RTR</b></p>
- При обращении к HQ-RTR по доменному имени moodle.au-team.irpo клиента должно перенаправлять на HQ-SRV на стандартный порт, на сервис moodle
- При обращении к HQ-RTR по доменному имени wiki. au-team.irpo клиента должно перенаправлять на BR-SRV на порт, на сервис mediwiki
<p align="center"><b>*HQ-RTR*</b></p>
1. Установите Nginx
<p align="center">
<img src="images\module2\nftables HQ-rtr.png" width="600" />
</p>
***apt install nginx -y***
### <p align="center"><b>9. Настройте веб-сервер nginx как обратный прокси-сервер на HQ-RTR</b></p>
2. Запустите и активируйте Nginx:
- При обращении по доменному имени web.au-team.irpo у клиента должно открываться веб приложение на HQ-SRV
- При обращении по доменному имени docker.au-team.irpo клиента должно открываться веб приложение testapp.
<p align="center"><b>*ISP*</b></p>
Установить пакет nginx:
>apt-get install -y nginx
Запустите и активируйте Nginx:
***systemctl start nginx***
***systemctl enable nginx***
Настройка Nginx как обратного прокси
Создадим конфигурационный файл для сайта в Nginx, в котором настроим виртуальные хосты. Добавьте конфигурацию для проксирования запросов в файл reverse-proxy.conf:
- Скачиваем файл с github в необходимую директорию:
***apt install dos2unix -y***
***apt install curl -y***
***curl -o /etc/nginx/sites-available/reverse-proxy.conf https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/reverse-proxy.conf***
***dos2unix /etc/nginx/sites-available/reverse-proxy.conf***
- Проверяем его наличие:
<p align="center">
<img src="images/module2/93.nginx.png" width="600" />
</p>
<p align="center">
<img src="images/module2/94.png" width="600" />
</p>
> Сохраните файл и закройте редактор.
Настроить nginx как реверсивный прокси сервер, приведя файл /etc/nginx/sites-available.d/
default.conf к следующему виду:
vim /etc/nginx/sites-available.d/default.conf
3. Настройка Nginx как обратного прокси
Создадим конфигурационный файл для сайта в Nginx, в котором настроим виртуальные хосты. Добавьте конфигурацию для проксирования запросов в файл reverse-proxy.conf:

View File

@@ -1,5 +1,5 @@
[hq]
HQ-SRV ansible_host=sshuser@hq-srv.au-team.irpo ansible_port=3015
HQ-SRV ansible_host=sshuser@hq-srv.au-team.irpo ansible_port=2026
HQ-CLI ansible_host=hq-cli.au-team.irpo
HQ-RTR ansible_host=hq-rtr.au-team.irpo

View File

@@ -1,26 +1,27 @@
#proxy moodle.au-team.irpo
server {
listen 80;
server_name moodle.au-team.irpo;
location / {
proxy_pass http://moodle.au-team.irpo;
server {
listen 80;
server_name web.au-team.irpo;
location / {
proxy_pass http://172.16.1.2:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwrded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
}
#proxy wiki.au-team.irpo
server {
listen 8080;
server_name wiki.au-team.irpo;
location / {
proxy_pass http://wiki.au-team.irpo;
listen 80;
server_name docker.au-team.irpo;
location / {
proxy_pass http://172.16.2.2:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwrded-for $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
set_header X-Forwarded-Proto $scheme;
}
}

BIN
images/module1/dnsmasq.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 86 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
images/module2/copy id.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 89 KiB

BIN
images/module2/df -h.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 43 KiB

BIN
images/module2/disk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

BIN
images/module2/dump.sql.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.6 KiB

BIN
images/module2/export.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
images/module2/exports.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 112 KiB

BIN
images/module2/fstab.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
images/module2/lsblk.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

BIN
images/module2/maria.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

BIN
images/module2/mdadm.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

BIN
images/module2/mount.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

BIN
images/module2/site.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 95 KiB

BIN
images/module2/web-apa.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 114 KiB