Files
demo2026-1/README.md

2081 lines
76 KiB
Markdown
Raw Normal View History

2025-06-08 21:03:01 +05:00
# laba
2025-06-09 16:30:15 +05:00
## <p align="center"><b>МОДУЛЬ 1</b></p>
2025-06-08 21:03:01 +05:00
2025-06-08 21:05:58 +05:00
Задание:
Необходимо разработать и настроить инфраструктуру информационно коммуникационной системы согласно предложенной топологии (см. Рисунок 1). Задание включает базовую настройку устройств:
2025-06-08 21:03:01 +05:00
- присвоение имен устройствам,
- расчет IP-адресации,
- настройку коммутации и маршрутизации.
2025-06-08 21:05:58 +05:00
2025-06-08 21:03:01 +05:00
В ходе проектирования и настройки сетевой инфраструктуры следует вести отчет о своих действиях, включая таблицы и схемы, предусмотренные в задании. Итоговый отчет должен содержать одну таблицу и пять отчетов о ходе работы. Итоговый отчет по окончании работы следует сохранить на диске рабочего места
2025-06-09 16:06:58 +05:00
<p align="center">
<img src="images/module1/2. топология сети.png" width="600" />
</p>
2025-06-09 16:08:50 +05:00
<p align="center">
<img src="images/module1/1. Таблица IP-адресов.png" width="600" />
</p>
2025-06-08 21:14:53 +05:00
2025-06-09 16:08:50 +05:00
<p align="center"><b>Чтобы зайти на стенд для 1 модуля.</b></p>
2025-06-08 21:14:53 +05:00
2025-06-09 16:15:15 +05:00
<p align="center"><b>User name: m1</b></p>
<p align="center"><b>Password: modul1</b></p>
2025-06-08 21:14:53 +05:00
2025-06-09 16:06:58 +05:00
Перед включением виртуалок Настроем вланы. По заданию HQ-SRV в 100 влане, а HQ-CLI в 200
> **Примечание:**
> Основные сведения о настройке коммутатора и выбора реализации разделения на VLAN занесите в отчёт
2025-06-08 21:19:15 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/4. vlan.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/5. vlan.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/6. vlan.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/7. vlan.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
**ISP преднастроена, но включать ее надо**
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/8. таблица адресации.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
2025-06-08 22:34:29 +05:00
2025-06-09 16:05:36 +05:00
### <p align="center"><b>Сетевая связность - между HQ и BRANCH</b></p>
2025-06-08 21:24:36 +05:00
> **Примечание:**
> Сведения об адресах занесите в отчёт, в качестве примера используйте Таблицу 3
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-RTR*</b></p>
2025-06-08 21:24:36 +05:00
Задаём сразу FQDN - выбор имени домена произвольный:
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/9. сетевая связность.png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
По такой же аналогии настройте остальные имена
Чтобы настроить адресацию переходим:
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/10..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
Заодно настроим GRE туннель
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/11..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/12..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-08 21:40:45 +05:00
Включаем пересылку пакетов между портами (интерфейсами)
2025-06-08 21:37:35 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/13..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/14..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-08 21:41:39 +05:00
Применяем:
***sysctl -p***
2025-06-08 21:37:35 +05:00
Прокинем PAT так, как по приколу тачки, что подключены к роутеру пинговать инет не будут.
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/15..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/16. nftables.png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
Обязательно добавим в автозагрузку и активируем
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/17..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
2025-06-08 21:42:52 +05:00
Туннель мы допустим подняли, но чтобы пакеты через него пошли, нужна маршрутизация.
2025-06-08 21:37:35 +05:00
> **Примечание:**
> Сведения о настройке и защите протокола(ospf) занесите в отчёт
Установим frr.
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/18..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
> **РЕКОМЕНДАЦИЯ:**
> ПОКА FRR СКАЧИВАЕТСЯ ПЕРЕХОДИМ К НАСТРОЙКЕ BR-RTR
2025-06-08 21:37:35 +05:00
В файле /etc/frr/daemons - включим поддержку OSPFv2 (IPv4)
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/19..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
Не забываем перезапускать, чтобы изменения вступили в силу
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/20..png" width="600" />
</p>
2025-06-08 21:37:35 +05:00
Переходим к настройке frr (ospf)
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/21..png" width="600" />
</p>
2025-06-08 21:24:36 +05:00
2025-06-08 22:04:43 +05:00
Поставим пароль на frr
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/22..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
Не забываем перезапустить
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/23..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
И добавить в автозагрузку
2025-06-09 16:15:15 +05:00
<p align="center">
<img src="images/module1/24..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-08 22:34:29 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*BR-RTR*</b></p>
2025-06-08 22:04:43 +05:00
Произведем те же манипуляции
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/25..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/26..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/27..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/28..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/29..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/30..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/31..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/32..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/33..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
> **РЕКОМЕНДАЦИЯ:**
> ПОКА FRR СКАЧИВАЕТСЯ ДОДЕЛЫВАЕМ FRR НА HQ-RTR
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/34..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/35..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/36..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/37..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/38..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/39..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
Ура сетевая связность у между hq и br настроена
2025-06-09 20:35:44 +05:00
Для проверки пингуем с br-rtr:
2025-06-08 22:04:43 +05:00
***ping 192.168.100.1***
> **РЕКОМЕНДАЦИЯ:**
> сразу на HQ-RTR скачаем: apt update && apt install y isc-dhcp-server
2025-06-08 22:34:29 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-SRV*</b></p>
2025-06-08 22:04:43 +05:00
Задаем имя:
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-10 16:17:56 +05:00
<img src="images/module1/hq-srv.FQDN.png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:04:43 +05:00
Прокинем инет:
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:31:54 +05:00
<img src="images/module1/40. hq-srv.png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 20:37:22 +05:00
Перезапускаем сервис:
2025-06-08 22:04:43 +05:00
***Systemctl restart networking***
Проверяем:
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/41..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-08 22:34:29 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*BR-SRV*</b></p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/43..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:38:15 +05:00
<img src="images/module1/42. br-srv.png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 20:37:22 +05:00
Перезапускаем сервис:
2025-06-08 22:04:43 +05:00
***Systemctl restart networking***
Проверяем:
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/41..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
> **РЕКОМЕНДАЦИЯ:**
> сразу скачиваем на HQ-SRV: apt update && apt install -y dnsmasq
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
### <p align="center"><b>Создание локальных учетных записей</b></p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center"><b>Создайте пользователя sshuser на серверах</b></p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-SRV и BR-SRV*</b></p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/44. sshuser.png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
Пользователь sshuser должен иметь возможность запускать sudo без дополнительной аутентификации.
В дебиане нету судо поэтому скачаем:
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/45..png" width="600" />
</p>
2025-06-08 22:04:43 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/46..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
НА BR-SRV СДЕЛАЙТЕ ТОЖЕ САМОЕ
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
<p align="center"><b>Создайте пользователя net_admin на маршрутизаторах</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-RTR и BR-RTR*</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/47. net_admin.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/48..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
В дебиане нет sudo поэтому скачаем
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/49..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/50..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
СДЕЛАЙТЕ ТОЖЕ САМОЕ НА BR-RTR
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
### <p align="center"><b>Настройка безопасного удаленного доступа на серверах HQ-SRV и BR-SRV:</b></p>
2025-06-08 22:27:11 +05:00
- Для подключения используйте порт 2024
- Разрешите подключения только пользователю sshuser ● Ограничьте количество попыток входа до двух
- Настройте баннер «Authorized access only»
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-SRV и BR-SRV*</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/51. ssh.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
Редактируем файл /etc/ssh/sshd_config:
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/52..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/53..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/54..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/55..png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
ДУБЛИРУЕМ ТОЖЕ САМОЕ НА BR-SRV
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
### <p align="center"><b>Установим и настроим DHCP-сервер</b></p>
2025-06-08 22:27:11 +05:00
и зарезервируем адрес для HQ-SRV, чтобы потом на всех остальных оконечных устройствах задавая адреса сразу создавать пользователей
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-RTR:*</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 20:37:22 +05:00
Скачаем: ***apt install y isc-dhcp-server***
2025-06-08 22:27:11 +05:00
Первым делом нам необходимо указать, что наш DHCP сервер должен принимать запросы только с ens20 интерфейса.
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/56. dhcp.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/57..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
Настройка протокола динамической конфигурации хостов.
- Настройте нужную подсеть
- Для офиса HQ в качестве сервера DHCP выступает маршрутизатор HQ-RTR.
- Клиентом является машина HQ-CLI.
- Исключите из выдачи адрес маршрутизатора
- Адрес шлюза по умолчанию адрес маршрутизатора HQ-RTR.
- Адрес DNS-сервера для машины HQ-CLI адрес сервера HQ-SRV.
- DNS-суффикс для офисов HQ au-team.irpo
- Сведения о настройке протокола занесите в отчёт
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-14 14:07:00 +05:00
<img src="images/module1/58..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/59..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/60..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
> **Примечание:**
> Сведения о настройке протокола занесите в отчёт
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
### <p align="center"><b>Настройка DNS для офисов HQ и BR.</b></p>
2025-06-08 22:27:11 +05:00
- Основной DNS-сервер реализован на HQ-SRV.
- Сервер должен обеспечивать разрешение имён в сетевые адреса устройств и обратно в соответствии с таблицей 2
- В качестве DNS сервера пересылки используйте любой общедоступный DNS сервер
Нам необходимо настроить DNS сервер. Будем использовать dnsmasq.
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-SRV*</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/61. dns.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/62..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/63..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
Теперь открываем скрипт-инициализации сервиса dnsmasq
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/64..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
ищем строчку DNSMASQ_OPTS
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:41:55 +05:00
<img src="images/module1/65.png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
Убираем оттуда local-service
2025-06-09 16:29:30 +05:00
<p align="center">
2025-06-09 16:40:54 +05:00
<img src="images/module1/66..png" width="600" />
2025-06-09 16:29:30 +05:00
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 20:37:22 +05:00
Перезагружаем службу dnsmasq:
2025-06-08 22:27:11 +05:00
***systemctl restart dnsmasq***
2025-06-09 20:37:22 +05:00
После настройки dns-сервера прописываем всем машинам в /etc/resolv.conf:
2025-06-09 20:38:46 +05:00
***nameserver 192.168.100.2***
2025-06-08 22:27:11 +05:00
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/67. таблица доменных имен.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
### <p align="center"><b>Настройте часовой пояс на всех устройствах, согласно месту проведения экзамена.</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 16:36:26 +05:00
<p align="center"><b>*HQ-SRV, HQ-CLI, BR-SRV*</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 20:37:22 +05:00
Проверяем какой часовой пояс установлен:
2025-06-08 22:27:11 +05:00
***timedatectl status***
2025-06-09 16:29:30 +05:00
<p align="center">
<img src="images/module1/68. часовой пояс.png" width="600" />
</p>
2025-06-08 22:27:11 +05:00
2025-06-09 20:37:22 +05:00
Если отличается, то устанавливаем:
2025-06-08 22:27:11 +05:00
***timedatectl set-timezone Asia/Yekaterinburg***
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
## <p align="center"><b>МОДУЛЬ 2</b></p>
2025-06-08 22:34:29 +05:00
2025-06-09 20:39:40 +05:00
<p align="center"><b>Чтобы зайти на стенд для 2-3 модуля.</b></p>
2025-06-08 22:34:29 +05:00
2025-06-09 16:29:30 +05:00
<p align="center"><b>User name: m2</b></p>
<p align="center"><b>Password: modul2</b></p>
2025-06-08 22:27:11 +05:00
2025-06-09 22:59:37 +05:00
### <p align="center"><b>1. Настройте доменный контроллер Samba на машине BR-SRV.</b></p>
2025-06-08 22:27:11 +05:00
2025-06-19 18:53:24 +05:00
**<p align="center"><b>(СДЕЛАТЬ СРАЗУ 3 СНАПШОТА НА BR-SRV(samba), HQ-CLI(Active Directory), HQ-SRV(mdadm))</b></p>**
2025-06-09 20:45:15 +05:00
2025-06-08 22:27:11 +05:00
- Создайте 5 пользователей для офиса HQ: имена пользователей формата user№.hq. Создайте группу hq, введите в эту группу созданных пользователей
- Введите в домен машину HQ-CLI
- Пользователи группы hq имеют право аутентифицироваться на клиентском ПК
- Пользователи группы hq должны иметь возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id. Запускать другие команды с повышенными привилегиями пользователи группы не имеют права
- Выполните импорт пользователей из файла users.csv. Файл будет располагаться на виртуальной машине BR-SRV в папке /opt
2025-06-09 16:36:26 +05:00
<p align="center"><b>*BR-SRV*</b></p>
2025-06-08 22:27:11 +05:00
> **Обязательно:**
> Временно заменяем в /etc/resolv.conf 192.168.100.2 на 10.0.1.4, чтобы samba быстрее скачивалось
Переходим к настройкам самого контроллера домена на BR-SRV
2025-06-09 17:01:27 +05:00
<p align="center">
<img src="images/module2/1.samba.png" width="600" />
</p>
> **РЕКОМЕНДАЦИЯ:**
2025-06-19 17:10:33 +05:00
> НА CLI: apt-get update && apt-get remove -y alterator-datetime && apt-get install -y task-auth-ad-sssd && apt-get install -y admc
> НА CLI: apt-get install -y openssh-server && systemctl restart sshd.
2025-06-09 17:01:27 +05:00
> НА HQ-SRV: apt update && apt install mdadm -y
Появится синее окно, не пугайтесь, так и должно быть. В первом окне вводим имя домена au-team.irpo, а во втором — имя нашего сервера hq-srv
2025-06-09 20:34:03 +05:00
Удаляем докер:
2025-06-09 17:01:27 +05:00
***apt remove docker.io -y && ip link delete docker0;***
2025-06-09 20:34:03 +05:00
- Проверяем что установлено имя в формате FQDN;
- Задаём domainname;
- Очищаем конфигурацию samba;
- Разворачиваем контроллер домена Active Directory на базе SambaDC с Dnsmasq в качестве DNS
2025-06-09 17:01:27 +05:00
<p align="center">
<img src="images/module2/2.png" width="600" />
</p>
<p align="center">
<img src="images/module2/3.png" width="600" />
</p>
2025-06-09 20:34:03 +05:00
Подготовка домена: Samba-tool --realm=au-team.irpo --domain=au-team adminpass=”PAssw0rd” --dnsbackend=SAMBA_INTERNAL --option=”dns forwrder=192.168.100.2” --server-role=dc
2025-06-09 17:01:27 +05:00
ВЫ МОЖЕТЕ НАПИСАТЬ ТОЛЬКО «Samba-tool domain provision», А ОСТАЛЬНОЕ ОНО СПРОСИТ САМО
<p align="center">
<img src="images/module2/4.png" width="600" />
</p>
2025-06-09 20:34:03 +05:00
Как видим че то не так, надо перезапустить машинку:
2025-06-09 17:01:27 +05:00
***reboot***
Вводим все заново
Проверяем:
<p align="center">
<img src="images/module2/5.png" width="600" />
</p>
Ничего не показывает, надо перезапустить машину, снова проверяем:
<p align="center">
<img src="images/module2/6.png" width="600" />
</p>
> **Обязательно:**
2025-06-09 20:47:14 +05:00
> ВВОДИМ МАШИНУ обратно В ДОМЕН:
2025-06-09 17:01:27 +05:00
> nano /etc/resolv.conf nameserver 192.168.100.2
> **РЕКОМЕНДАЦИЯ:**
2025-06-09 20:47:14 +05:00
> НА BR-SRV здесь же скачиваем: apt install ansible -y
2025-06-09 17:01:27 +05:00
> НА HQ-SRV скачиваем: apt install nfs-kernel-server -y
<p align="center"><b>На клиента ставим необходимые пакеты</b></p>
2025-06-19 13:24:20 +05:00
2025-06-19 18:53:24 +05:00
**<p align="center"><b>(СДЕЛАТЬ,если не сделали, НА HQ-CLI SNAPSHOT)</b></p>**
2025-06-09 17:01:27 +05:00
<p align="center"><b>*CLI*</b></p>
2025-06-09 20:34:03 +05:00
При установке пакета task-auth-ad-sssd у вас возникнет ошибка, связанная с конфликтом с пакетом alterator-datetime, его необходимо удалить:
***apt-get update && apt-get remove -y alterator-datetime***
2025-06-09 17:01:27 +05:00
2025-06-09 20:34:03 +05:00
После пропишем инсталл:
2025-06-09 17:01:27 +05:00
***apt-get install -y task-auth-ad-sssd***
Переходим к редактированию временного соединения и в качестве DNS-сервера прописываем адрес HQ-SRV, а также указываем поисковый домен:
<p align="center">
<img src="images/module2/7.png" width="600" />
</p>
2025-06-09 20:34:03 +05:00
Переходим в Центр управления системой, на вкладке Пользователи выбираем Аутентификация
2025-06-09 17:01:27 +05:00
<p align="center">
<img src="images/module2/8.png" width="600" />
</p>
<p align="center">
<img src="images/module2/9.png" width="600" />
</p>
<p align="center">
<img src="images/module2/10.png" width="600" />
</p>
Вводим пароль администратора домена:
<p align="center">
<img src="images/module2/11.png" width="600" />
</p>
2025-06-09 20:34:03 +05:00
Нажимаем ОК и перезагружаем систему:
2025-06-09 17:01:27 +05:00
<p align="center">
<img src="images/module2/12.png" width="600" />
</p>
> **РЕКОМЕНДАЦИЯ:**
> НА BR-SRV скачиваем: apt install -y docker.io docker-compose
2025-06-19 12:10:20 +05:00
> НА HQ-SRV скачиваем: apt install -y apache* -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
2025-06-09 17:01:27 +05:00
В качестве проверки после перезагрузки можно выполнить аутентификацию от имени доменного пользователя Administrator:
<p align="center">
<img src="images/module2/13.png" width="600" />
</p>
2025-06-09 20:34:03 +05:00
Организуем отслеживание подключения к домену: CLI: На клиенте с граф. интерфейсом установим Модуль удаленного управления базой данных конфигурации (ADMC) • Установим пакет admc:
2025-06-09 17:01:27 +05:00
***apt-get install -y admc***
2025-06-09 20:34:03 +05:00
Для использования ADMC необходимо предварительно получить ключ Kerberos для администратора домена. Получить ключ Kerberos можно, например, выполнив следующую команду, из под обычного пользователя:
2025-06-09 17:01:27 +05:00
***kinit Administrator***
ADMC запускается из меню запуска приложений: пункт «Системные» → ADMC или из командной строки (команда admc).
2025-06-09 20:34:03 +05:00
_____________________________________________________________________________________
2025-06-09 20:49:15 +05:00
2025-06-09 17:01:27 +05:00
Если admc долго не может запуститься(не выдает ошибок, но не запускается), то внесите изменения в файл /etc/krb5.conf
<p align="center">
<img src="images/module2/14.png" width="600" />
</p>
2025-06-09 20:49:15 +05:00
2025-06-09 20:34:03 +05:00
_____________________________________________________________________________________
На вкладке «Компьютеры» в графическом режиме удобно отслеживать подключение к домену.
2025-06-09 17:01:27 +05:00
2025-06-09 20:34:03 +05:00
Создаем пять юзеров:
2025-06-09 17:01:27 +05:00
<p align="center">
<img src="images/module2/15.png" width="600" />
</p>
<p align="center">
<img src="images/module2/16.png" width="600" />
</p>
2025-06-09 22:57:05 +05:00
<p align="center"><b>Создаем группу hq и в нее добавляем раннее созданных пользователей</b></p>
2025-06-09 17:01:27 +05:00
Пользователи группы hq должны иметь возможность повышать привилегии для выполнения ограниченного набора команд: cat, grep, id. Запускать другие команды с повышенными привилегиями пользователи группы не имеют права
<p align="center"><b>*CLI*</b></p>
2025-06-10 16:08:45 +05:00
Настройте файл */etc/sudoers* на рабочей станции Linux, как описано в предыдущем ответе, используя синтаксис для доменных групп:
***%hq ALL=(ALL) NOPASSWD: /bin/cat, /bin/grep, /usr/bin/id***
2025-06-09 17:01:27 +05:00
2025-06-22 10:59:00 +05:00
<p align="center"><b>Выполните импорт пользователей из файла users.csv. Файл будет располагаться на виртуальной машине BR-SRV в папке /opt</b></p>
2025-06-23 16:12:09 +05:00
- Сначала скачаем необходимую утилиту на *BR-SRV*:
2025-06-22 10:59:00 +05:00
2025-06-22 11:30:09 +05:00
***apt install dos2unix -y***
2025-06-22 10:59:00 +05:00
2025-06-23 16:12:09 +05:00
***apt install curl -y***
2025-06-22 10:59:00 +05:00
2025-06-23 16:12:09 +05:00
- Потом на BR-SRV скачиваем скрипт, который выполнит за нас задание, в нужную директорию:
2025-06-22 12:30:54 +05:00
2025-06-23 16:12:09 +05:00
***curl -o /opt https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/import_users.sh***
2025-06-22 10:59:00 +05:00
2025-06-22 11:30:09 +05:00
***ls /opt***
2025-06-22 10:59:00 +05:00
2025-06-23 16:20:28 +05:00
***dos2unix /opt/import_users.sh***
2025-06-22 10:59:00 +05:00
2025-06-22 11:28:35 +05:00
<p align="center">
<img src="images/module2/dos2unix.png" width="600" />
</p>
- Проверяем наличие скрипта:
2025-06-22 13:22:01 +05:00
***nano /opt/import_users.sh***
2025-06-22 11:28:35 +05:00
<p align="center">
<img src="images/module2/import_users.png" width="600" />
</p>
- Делаем файл исполняемым и выполняем его:
2025-06-22 11:30:09 +05:00
***chmod +x /opt/import__users.sh***
2025-06-22 10:59:00 +05:00
2025-06-22 11:30:09 +05:00
***/opt/import_users.sh***
2025-06-22 10:59:00 +05:00
2025-06-09 17:01:27 +05:00
> **РЕКОМЕНДАЦИЯ:**
> НА BR-SRV скачиваем: apt install y mariadb-*
2025-06-09 21:30:07 +05:00
2025-06-09 22:59:37 +05:00
### <p align="center"><b>2. Сконфигурируйте файловое хранилище</b></p>
2025-06-09 21:30:07 +05:00
2025-06-19 18:53:24 +05:00
<p align="center"><b>(СДЕЛАТЬ SNAPSHOT, если не сделали, на HQ-SRV)</b></p>
2025-06-09 21:30:07 +05:00
- При помощи трёх дополнительных дисков, размером 1Гб каждый, на HQ-SRV сконфигурируйте дисковый массив уровня 5
- Имя устройства md0, конфигурация массива размещается в файле /etc/mdadm.conf
- Обеспечьте автоматическое монтирование в папку /raid5
- Создайте раздел, отформатируйте раздел, в качестве файловой системы используйте ext4
- Настройте сервер сетевой файловой системы(nfs), в качестве папки общего доступа выберите /raid5/nfs, доступ для чтения и записи для всей сети в сторону HQ-CLI
- На HQ-CLI настройте автомонтирование в папку /mnt/nfs
- Основные параметры сервера отметьте в отчёте
Подготовка дисков
<p align="center"><b>*HQ-SRV*</b></p>
Убедитесь, что дополнительные диски распознаны системой. Список подключенных дисков можно проверить командой:
<p align="center">
<img src="images/module2/17.mdadm.png" width="600" />
</p>
Создайте RAID 5 массив из трех 1Гб дисков (предположим, они определены как /dev/sdb, /dev/sdc, и /dev/sdd):
Скачаем службу mdadm:
<p align="center">
<img src="images/module2/18.png" width="600" />
</p>
<p align="center">
<img src="images/module2/19.png" width="600" />
</p>
Проверяем:
<p align="center">
<img src="images/module2/20.png" width="600" />
</p>
Проверьте статус RAID массива:
<p align="center">
<img src="images/module2/21.png" width="600" />
</p>
Сохраните конфигурацию массива в файл /etc/mdadm.conf:
<p align="center">
<img src="images/module2/22.png" width="600" />
</p>
2025-06-09 21:42:14 +05:00
1. Создание файловой системы и настройка монтирования
2025-06-09 21:30:07 +05:00
Создайте раздел и отформатируйте его в ext4:
<p align="center">
<img src="images/module2/23.png" width="600" />
</p>
Создайте точку монтирования и настройте автоматическое монтирование в /etc/fstab:
<p align="center">
<img src="images/module2/24.png" width="600" />
</p>
Смонтируйте файловую систему:
<p align="center">
<img src="images/module2/25.png" width="600" />
</p>
2025-06-09 21:42:14 +05:00
2. Настройка NFS-сервера на HQ-SRV
2025-06-09 21:30:07 +05:00
Установите NFS-сервер (если он еще не установлен):
<p align="center">
<img src="images/module2/26.nfs-server.png" width="600" />
</p>
Создайте директорию для общего доступа:
<p align="center">
<img src="images/module2/27.png" width="600" />
</p>
Настройте права доступа для общей папки:
<p align="center">
<img src="images/module2/28.png" width="600" />
</p>
Настройте экспорт NFS для всей сети с разрешением на чтение и запись.
Откройте файл /etc/exports и добавьте строку:
<p align="center">
<img src="images/module2/29.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>
> **ПРИМЕЧАНИЕ**
> Основные параметры сервера отметьте в отчёте
2025-06-09 21:42:14 +05:00
3. Настройка автомонтирования на HQ-CLI (под ALT Workstation)
2025-06-09 21:30:07 +05:00
<p align="center"><b>*HQ-CLI*</b></p>
Создайте точку монтирования:
<p align="center">
2025-06-09 21:33:43 +05:00
<img src="images/module2/32,cli-automount.png" width="600" />
2025-06-09 21:30:07 +05:00
</p>
Настройте автомонтирование в /etc/fstab, откройте этот файл и добавьте следующую строку:
<p align="center">
<img src="images/module2/33.png" width="600" />
</p>
Смонтируйте папку вручную (или перезагрузите систему для применения настроек):
<p align="center">
<img src="images/module2/34.png" width="600" />
</p>
Проверка подключения NFS на HQ-CLI:
<p align="center">
<img src="images/module2/35.png" width="600" />
</p>
> **РЕКОМЕНДАЦИЯ:**
> НА HQ-SRV скачиваем: apt install -y mariadb-* -y
2025-06-09 22:59:37 +05:00
### <p align="center"><b>3. Настройте службу сетевого времени на базе сервиса chrony</b></p>
2025-06-09 21:30:07 +05:00
- В качестве сервера выступает HQ-RTR
2025-06-09 23:19:56 +05:00
- На HQ-RTR настройте сервер chrony, выберите стратум 5
2025-06-09 21:30:07 +05:00
- В качестве клиентов настройте HQ-SRV, HQ-CLI, BR-RTR, BR-SRV
2025-06-09 21:42:14 +05:00
1. Настройка NTP сервера:
2025-06-09 21:38:10 +05:00
2025-06-09 21:30:07 +05:00
<p align="center"><b>*HQ-RTR*</b></p>
Установим пакет chrony на каждой машине:
***apt install -y chrony***
Приводим конфигурационный файл "chrony.conf" к следующему виду:
***nano /etc/chrony/chrony.conf***
<p align="center">
<img src="images/module2/36.chrony.png" width="600" />
</p>
2025-06-09 21:35:50 +05:00
> где:
> - server 127.0.0.1 iburst prefer - указываем сервером синхронизации самого себя, опция «iburst» принудительно отправляет сразу несколько пакетов для точности синхронизации,
> - hwtimestamp * - опция, чтобы сетевой интерфейс считал собственный источник времени верным и синхронизировал клиентов с ним;
> - local stratum 5 - устанавливаем для себя значение по stratum = 5;
> - allow - кому разрешается подключаться к серверу и запрашивать время: чтобы не перечеслять все используемые в задании IPv4 и IPv6 сети, используется 0/0 и ::/0;
2025-06-09 21:30:07 +05:00
Запускаем и добавляем в автозагрузку службу chronyd, и не забываем рестартать сервис:
2025-06-09 21:36:48 +05:00
***systemctl enable --now chrony***
2025-06-09 21:30:07 +05:00
***systemctl restart chrony***
<p align="center">
<img src="images/module2/37.png" width="600" />
</p>
Проверяем:
<p align="center">
<img src="images/module2/38.png" width="600" />
</p>
2025-06-09 21:42:14 +05:00
2. Настройка NTP клиентов:
2025-06-09 21:30:07 +05:00
<p align="center"><b>*HQ-SRV, BR-SRV, BR-RTR, HQ-CLI*</b></p>
Установим пакет chrony:
***apt install -y chrony***
2025-06-09 21:39:37 +05:00
2025-06-09 21:30:07 +05:00
Приводим конфигурационный файл "chrony.conf" к следующему виду:
***nano /etc/chrony/chrony.conf***
<p align="center">
<img src="images/module2/39.png" width="600" />
</p>
> где: 192.168.100.1 - IPv4 адрес HQ-R;
Запускаем и добавляем в автозагрузку службу chronyd:
systemctl enable --now chrony
> на cli chronyd
systemctl restart chrony
> на cli chronyd
Проверяем с клиента HQ-SRV:
<p align="center">
<img src="images/module2/40.png" width="600" />
</p>
Проверяем с сервера HQ-R:
<p align="center">
<img src="images/module2/41.png" width="600" />
</p>
BR-R | BR-SRV | CLI: Настройка аналогична HQ-SRV - за исключением указания соответствующих адресов
> **РЕКОМЕНДАЦИЯ:**
2025-06-19 18:49:59 +05:00
> НА HQ-SRV скачиваем: apt install -y git
> НА HQ-RTR скачиваем: apt install nginx -y
2025-06-09 21:30:07 +05:00
2025-06-09 22:59:37 +05:00
### <p align="center"><b>4. Сконфигурируйте ansible на сервере BR-SRV</b></p>
2025-06-09 21:30:07 +05:00
<p align="center"><b>(СДЕЛАЙ SNAPSHOT НА BR-SRV)</b></p>
- Сформируйте файл инвентаря, в инвентарь должны входить HQSRV, HQ-CLI, HQ-RTR и BR-RTR
- Рабочий каталог ansible должен располагаться в /etc/ansible
- Все указанные машины должны без предупреждений и ошибок отвечать pong на команду ping в ansible посланную с BR-SRV
<p align="center"><b>*BR-SRV*</b></p>
1. Установите Ansible (если он еще не установлен):
***apt update && apt install ansible -y***
2. Создание рабочего каталога Ansible
Ansible обычно уже использует /etc/ansible как рабочий каталог, но если его нет, создайте его вручную:
<p align="center">
<img src="images/module2/42.png" width="600" />
</p>
3. Создание файла инвентаря
2025-06-22 12:25:14 +05:00
Создайте инвентарь файла : /etc/ansible/hosts. Открываем файл /etc/ansible/hosts
2025-06-09 21:30:07 +05:00
2025-06-23 16:14:54 +05:00
- Скачиваем файл с github, в нужную директорию:
> !dos2unix и curl на BR-SRV уже скачаны!
2025-06-22 13:27:28 +05:00
2025-06-23 16:14:54 +05:00
***curl -o /etc/ansible https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/hosts.file***
2025-06-22 13:27:28 +05:00
2025-06-22 13:29:17 +05:00
***dos2unix /etc/ansible/hosts.file***
2025-06-22 13:27:28 +05:00
2025-06-22 13:29:17 +05:00
- Проверяем его наличие:
2025-06-22 13:27:28 +05:00
2025-06-09 21:30:07 +05:00
<p align="center">
<img src="images/module2/43.png" width="600" />
</p>
<p align="center">
2025-06-10 17:15:57 +05:00
<img src="images/module2/new-ansible1.png" width="600" />
2025-06-09 21:30:07 +05:00
</p>
4. Настройка SSH-доступа к машинам
Для того чтобы Ansible мог управлять машинами без необходимости ввода пароля, настройте SSH-доступ:
<p align="center">
<img src="images/module2/45.png" width="600" />
</p>
______________________________________________________________________________________
<p align="center"><b>(ДОПОЛНЕНИЕ)</b></p>
<p align="center"><b>*HQ-CLI*</b></p>
Для hq-cli нужно установить ssh службу: ***apt-get install -y openssh-server***
Перезагружаем ssh на hq-cli: ***systemctl restart sshd***
Для того чтобы зайти в конфиг ssh на альт линукс(cli) нужно ввести команду:
***nano /etc/openssh/sshd_config***
______________________________________________________________________________________
Скопируйте SSH-ключ на всех машинах в инвентаре : Выполните эту команду для каждой машины, чтобы разрешить безпарольный доступ:
<p align="center">
<img src="images/module2/46.png" width="600" />
</p>
<p align="center">
<img src="images/module2/47.png" width="600" />
</p>
<p align="center">
2025-06-10 17:16:58 +05:00
<img src="images/module2/new-ansible2.png" width="600" />
2025-06-09 21:30:07 +05:00
</p>
<p align="center">
<img src="images/module2/49.png" width="600" />
</p>
5. Проверка подключения в Ansible
Выполните команду "ansible all -m ping" для проверки соединения со всеми хостами из инвентаря файла:
<p align="center">
<img src="images/module2/50.png" width="600" />
</p>
> **РЕКОМЕНДАЦИЯ:**
> НА HQ-SRV скачиваем: git clone git://git.moodle.org/moodle.git
2025-06-09 22:59:37 +05:00
### <p align="center"><b>5. Развертывание приложений в Docker на сервере BR-SRV.</b></p>
2025-06-09 21:30:07 +05:00
2025-06-09 22:05:21 +05:00
- Создайте в домашней директории пользователя файл wiki.yml для приложения MediaWiki.
- Средствами docker compose должен создаваться стек контейнеров с приложением MediaWiki и базой данных.
- Используйте два сервиса
- Основной контейнер MediaWiki должен называться wiki и использовать образ mediawiki
- Файл LocalSettings.php с корректными настройками должен находиться в домашней папке пользователя и автоматически монтироваться в образ.
- Контейнер с базой данных должен называться mariadb и использовать образ mariadb (субд).
- Разверните
- Он должен создавать базу с названием mediawiki, доступную по стандартному порту, пользователя wiki с паролем WikiP@ssw0rd должен иметь права доступа к этой базе данных
- MediaWiki должна быть доступна извне через порт 8080.
2025-06-09 21:30:07 +05:00
2025-06-09 22:05:21 +05:00
<p align="center"><b>*BR-SRV*</b></p>
1. Скачиваем докер:
***apt install -y docker.io docker-compose***
2. Включаем и добавляем в автозагрузку службу docker:
***systemctl enable --now docker.service***
3. В домашней директории пользователя root создаём файл wiki.yml со следующим содержимым:
2025-06-23 16:22:30 +05:00
- Чтобы вручную файл не заполнять просто скачиваем его с github в нужную директорию:
2025-06-23 14:23:45 +05:00
> !dos2unix и curl на BR-SRV уже скачаны!
2025-06-22 12:30:54 +05:00
2025-06-09 22:05:21 +05:00
2025-06-23 16:22:30 +05:00
***curl -o ~/ https://raw.githubusercontent.com/4bobus/laba/main/files/wiki.yml***
2025-06-22 12:30:54 +05:00
***dos2unix ~/wiki.yml***
- Проверяем его наличие:
***nano ~/wiki.yml***
2025-06-09 22:05:21 +05:00
<p align="center">
<img src="images/module2/51.png" width="600" />
</p>
> где:
> - 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
4. Чтобы отдельный volume для хранения базы данных имел правильное имя - создаём его средствами docker:
***docker volume create dbvolume***
5. Выполняем сборку и запуск стека контейнеров с приложением MediaWiki и базой данных описанных в файле wiki.yml:
***docker-compose -f wiki.yml up -d***
Проверяем:
<p align="center">
<img src="images/module2/52.png" width="600" />
</p>
<p align="center">
<img src="images/module2/53.png" width="600" />
</p>
<p align="center"><b>*HQ-CLI*</b></p>
***su -***
***echo “192.168.200.2 wiki.au-team.irpo mediawiki” >> /etc/hosts***
1. Переходим в браузер http://wiki.au-team.irpo:8080/ для продолжения установки через веб-интерфейс - нажимаем set up the wiki:
<p align="center">
<img src="images/module2/54.png" width="600" />
</p>
2. Выбираем необходимый Язык - нажимаем Далее:
<p align="center">
<img src="images/module2/55.png" width="600" />
</p>
3. После успешной проверки внешней среды - нажимаем Далее:
<p align="center">
<img src="images/module2/56.png" width="600" />
</p>
4. Заполняем параметры подключение к Базе Данных в соответствие с заданными переменными окружения в wiki.yml, которые соответствуют требованиям задания:
Пример заполнения:
Хост базы данных: db
Имя базы данных: mediawiki
Имя пользователя базы данных: wiki
Пароль базы данных: WikiP@ssw0rd
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/57.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/58.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
2025-06-09 22:09:08 +05:00
5. Заполняем необходимые сведения:
2025-06-19 17:39:04 +05:00
> Пароль: P@ssw0rddd
2025-06-09 22:09:08 +05:00
2025-06-09 22:05:21 +05:00
<p align="center">
<img src="images/module2/60.png" width="600" />
</p>
<p align="center">
<img src="images/module2/61.png" width="600" />
</p>
<p align="center">
<img src="images/module2/62.png" width="600" />
</p>
2025-06-09 22:09:08 +05:00
<p align="center">
<img src="images/module2/63.png" width="600" />
</p>
2025-06-09 22:05:21 +05:00
6. После чего будет автоматически скачен файл LocalSettings.php - который необходимо передать на BR-SRV в домашнюю директорию пользователя root туда же где лежит wiki.yml:
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/64.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
7. Забираем файл LocalSettings.php с CLI:
<p align="center"><b>*HQ-CLI:*</b></p>
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/65.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/66.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
<p align="center"><b>*BR-SRV:</b></p>
Перемещаем в домашнюю директорию пользователя /root:
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/67.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
Проверяем:
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/68.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
_____________________________________________________________________________________
Прямой поиск файла поиск файла LocalSettings.php командой find:
***find / -name LocalSettings.php 2>/dev/null***
<p align="center">
2025-06-09 22:09:08 +05:00
<img src="images/module2/70.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
Команда "ls"(list) показывает файлы и директории в текущем каталоге.
Команда "pwd" показывает каталоr в котором ты находишься.
_____________________________________________________________________________________
<p align="center">
2025-06-09 22:54:35 +05:00
<img src="images/module2/71.png" width="600" />
</p>
Перезапускаем сервисы средствами docker-compose:
***docker-compose -f wiki.yml stop***
***docker-compose -f wiki.yml up -d***
<p align="center">
<img src="images/module2/72.png" width="600" />
</p>
<p align="center"><b>*Снова HQ-CLI:*</b></p>
1. Проверяем доступ к http://wiki.au-team.irpo:8080
<p align="center">
<img src="images/module2/73.png" width="600" />
</p>
2. Вход, в моем случае, из под пользователя admin с паролем P@ssw0rddd
<p align="center">
<img src="images/module2/74.png" width="600" />
</p>
<p align="center">
<img src="images/module2/75.png" width="600" />
</p>
2025-06-09 22:59:37 +05:00
### <p align="center"><b>6. На маршрутизаторах сконфигурируйте статическую трансляцию портов</b></p>
2025-06-09 22:54:35 +05:00
- Пробросьте порт 80 в порт 8080 на BR-SRV на маршрутизаторе BR-RTR, для обеспечения работы сервиса wiki
- Пробросьте порт 2024 в порт 2024 на HQ-SRV на маршрутизаторе HQ-RTR
- Пробросьте порт 2024 в порт 2024 на BR-SRV на маршрутизаторе BR-RTR
<p align="center"><b>*BR-RTR*</b></p>
<p align="center">
<img src="images/module2/76.br-rtr.png" width="600" />
</p>
<p align="center"><b>*HQ-RTR*</b></p>
<p align="center">
<img src="images/module2/77.hq-rtr.png" width="600" />
</p>
2025-06-09 22:59:37 +05:00
### <p align="center"><b>7. Запустите сервис moodle на сервере HQ-SRV</b></p>
2025-06-09 22:54:35 +05:00
- Используйте веб-сервер apache
- В качестве системы управления базами данных используйте mariadb
- Создайте базу данных moodledb
- Создайте пользователя moodle с паролем P@ssw0rd и предоставьте ему права доступа к этой базе данных
- У пользователя admin в системе обучения задайте пароль P@ssw0rd
- На главной странице должен отражаться номер рабочего места в виде арабской цифры, других подписей делать не надо
- Основные параметры отметьте в отчёт
<p align="center"><b>*HQ-SRV*</b></p>
2025-06-19 18:00:10 +05:00
2025-06-20 22:37:38 +05:00
> Ранее в "рекомендациях" должно было быть скачено
2025-06-09 22:54:35 +05:00
Устанавливаем веб-сервер Apache2 и необходимые пакеты:
2025-06-19 18:00:10 +05:00
apt install -y apache* -y
2025-06-09 22:54:35 +05:00
Устанавливаем PHP и необходимые модули:
2025-06-19 18:00:10 +05:00
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
2025-06-09 22:54:35 +05:00
Установка СУБД MySQL:
2025-06-19 18:00:10 +05:00
apt install -y mariadb-* -y
2025-06-20 22:37:38 +05:00
> Ранее в "рекомендациях" должно было быть скачено
2025-06-09 22:54:35 +05:00
Включаем и добавляем в автозагрузку MySQL:
***systemctl enable --now mariadb***
***systemctl enable --now apache2***
Подключаемся к MySQL, создаём базу данных и пользователя:
имя базы даных - " moodledb ";
имя пользователя - "moodle", пароль "P@ssw0rd";
2025-06-19 18:17:44 +05:00
Вводим следующие команды:
- mysql
2025-06-19 18:02:55 +05:00
- CREATE DATABASE moodledb DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
- CREATE USER 'moodle'@'localhost' IDENTIFIED BY 'P@ssw0rd';
2025-06-19 18:59:46 +05:00
- GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER ON moodledb.* TO 'moodle'@'localhost';
2025-06-19 18:02:55 +05:00
- EXIT;
2025-06-09 22:54:35 +05:00
______________________________________________________________________________________
2025-06-20 22:33:40 +05:00
Если вдруг в веб при вводе параметров базы данных будет вылазить ошибка *данной базы данных не существует, данному пользователю не даны права на создание базы данных*, то удаляем их и создаем заново:
2025-06-09 22:54:35 +05:00
2025-06-19 18:03:39 +05:00
***>DROP DATABASE moodledb;***
2025-06-09 22:54:35 +05:00
***>DROP USER 'moodle'@'localhost';***
______________________________________________________________________________________
Устанавливаем git, чтобы можно было скачать проект Moodle:
2025-06-20 22:36:26 +05:00
> Ранее в "рекомендациях" должно было быть скачено
2025-06-09 22:54:35 +05:00
***apt install -y git***
Загружаем код проекта Moodle:
***git clone git://git.moodle.org/moodle.git***
2025-06-20 22:36:26 +05:00
> Ранее в "рекомендациях" должно было быть скачено
2025-06-09 22:54:35 +05:00
Переходим в загруженный каталог moodle:
***cd moodle***
Извлекаем список каждой доступной ветви:
***git branch -a***
<p align="center">
<img src="images/module2/78.moodle.png" width="600" />
</p>
Сообщаем git, какую ветку отслеживать или использовать:
***git branch --track MOODLE_403_STABLE origin/MOODLE_403_STABLE***
проверяем:
***git checkout MOODLE_403_STABLE***
<p align="center">
<img src="images/module2/79.png" width="600" />
</p>
Копируем локальный репозиторий в /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***
2025-06-19 17:29:17 +05:00
<p align="center">
<img src="images/module2/moodle_language.jpg" width="600" />
</p>
2025-06-09 22:54:35 +05:00
Описываем конфигурационный файл для веб-сервера Apache:
***nano /etc/apache2/sites-available/moodle.conf***
<p align="center">
<img src="images/module2/80.png" width="600" />
</p>
> где:
> - 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***
<p align="center">
<img src="images/module2/81.png" width="600" />
</p>
Правим количество входных переменных, которые могут быть приняты в одном запросе, для работы Moodle - необходимо 5000, а значение в php.ini по умолчанию 1000:
<p align="center">
<img src="images/module2/82.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">
2025-06-19 18:41:15 +05:00
<img src="images/module2/84.web-moodle.png" width="600" />
2025-06-09 22:54:35 +05:00
</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***
2025-06-19 18:59:46 +05:00
***НАЗВАНИЕ БАЗЫ ДАННЫХ moodledb***
2025-06-09 22:54:35 +05:00
***ПОЛЬЗОВАТЕЛЬ БАЗЫ ДАННЫХ 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
***apt install nginx -y***
2025-06-23 16:18:37 +05:00
2. Запустите и активируйте Nginx:
2025-06-09 22:54:35 +05:00
***systemctl start nginx***
***systemctl enable nginx***
2025-06-23 16:18:37 +05:00
3. Настройка Nginx как обратного прокси
2025-06-09 22:54:35 +05:00
2025-06-22 13:40:13 +05:00
Создадим конфигурационный файл для сайта в Nginx, в котором настроим виртуальные хосты. Добавьте конфигурацию для проксирования запросов в файл reverse-proxy.conf:
2025-06-09 22:54:35 +05:00
2025-06-23 16:18:37 +05:00
- Скачиваем файл с github в необходимую директорию:
2025-06-22 13:36:54 +05:00
***apt install dos2unix -y***
2025-06-23 14:21:14 +05:00
***apt install curl -y***
2025-06-23 16:18:37 +05:00
***curl -o /etc/nginx/sites-available https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/reverse-proxy.conf***
2025-06-22 13:36:54 +05:00
2025-06-23 16:19:34 +05:00
***dos2unix /etc/nginx/sites-available/reverse-proxy.conf***
2025-06-23 14:21:14 +05:00
2025-06-22 13:36:54 +05:00
- Проверяем его наличие:
2025-06-22 13:40:13 +05:00
<p align="center">
<img src="images/module2/93.nginx.png" width="600" />
</p>
2025-06-09 22:54:35 +05:00
<p align="center">
<img src="images/module2/94.png" width="600" />
</p>
2025-06-23 16:18:37 +05:00
> Сохраните файл и закройте редактор.
2025-06-09 22:54:35 +05:00
2025-06-23 16:18:37 +05:00
- Создайте символическую ссылку на этот файл в папке sites-enabled для активации конфигурации:
2025-06-09 22:54:35 +05:00
<p align="center">
<img src="images/module2/95.png" width="600" />
</p>
2025-06-23 16:18:37 +05:00
- Проверьте конфигурацию Nginx на наличие синтаксических ошибок:
2025-06-09 22:54:35 +05:00
<p align="center">
<img src="images/module2/96.png" width="600" />
2025-06-09 22:05:21 +05:00
</p>
2025-06-19 19:13:10 +05:00
2025-06-09 22:54:35 +05:00
> на hq-rtr в файле /etc/resolv.conf должно быть прописано dns 192.168.100.2
2025-06-23 16:18:37 +05:00
> *Если конфигурация правильная, вы увидите сообщение syntax is ok.*
2025-06-09 22:54:35 +05:00
2025-06-23 16:18:37 +05:00
- Перезагрузите Nginx, чтобы применить изменения:
2025-06-09 22:54:35 +05:00
***systemctl reload nginx***
### <p align="center"><b>9. Удобным способом установите приложение Яндекс Браузере для организаций</b></p>
<p align="center"><b>*HQ-CLI*</b></p>
<p align="center">
<img src="images/module2/97.yandex.png" width="600" />
</p>
<p align="center">
<img src="images/module2/98.png" width="600" />
</p>
<p align="center">
<img src="images/module2/99.png" width="600" />
</p>
2025-06-10 12:15:46 +05:00
2025-06-09 22:54:35 +05:00
> **ПРИМЕЧАНИЕ:**
> Установку браузера отметьте в отчёте
2025-06-20 22:33:40 +05:00
> **РЕКОМЕНДАЦИЯ:**
2025-06-20 22:35:09 +05:00
> Скачиваем на HQ-SRV: apt install cups cups-pdf -y
2025-06-20 22:33:40 +05:00
> Скачиваем на HQ-CLI: apt-get install cups cups-pdf -y
2025-06-09 22:54:35 +05:00
## <p align="center"><b>МОДУЛЬ 3</b></p>
<p align="center"><b>(1,2 заданий не будет, 7ое задание будет)</b></p>
2025-06-10 12:05:51 +05:00
### <p align="center"><b>3. Перенастройте ip-туннель с базового до уровня туннеля, обеспечивающего шифрование трафика</b></p>
<p align="center"><b>*HQ-RTR*</b></p>
2025-06-10 15:55:34 +05:00
1. Для начала необходимо установить пакет на наш роутер *HQ-RTR*:
2025-06-10 12:05:51 +05:00
***apt update***
***apt install strongswan***
<p align="center">
<img src="images/module3/1.ipsec.png" width="600" />
</p>
2. Конфигурация IPsec:
На обоих роутерах отредактируйте файл /etc/ipsec.conf, добавив следующее:
<p align="center">
<img src="images/module3/2.png" width="600" />
</p>
Далее нужно настроить файл ipsec.secrets. Вносим туда строку:
***172.16.4.2 172.16.5.2 : PSK “123qweR%”***
<p align="center">
<img src="images/module3/3.png" width="600" />
</p>
Ещё один конфиг charon.conf, открываем его b редактируем в нём следующую строку, приводя к виду:
***install_routes = no***
<p align="center">
<img src="images/module3/4.png" width="600" />
</p>
И осталось только перезагрузить службу ipsec:
***ipsec restart***
<p align="center">
<img src="images/module3/5.png" width="600" />
</p>
<p align="center"><b>*BR-RTR*</b></p>
2025-06-10 15:55:34 +05:00
1. Для начала необходимо установить пакет на наш роутер *BR-RTR*:
2025-06-10 12:05:51 +05:00
***apt update***
***apt install strongswan***
<p align="center">
<img src="images/module3/6.png" width="600" />
</p>
2. Конфигурация IPsec:
На обоих роутерах отредактируйте файл /etc/ipsec.conf, добавив следующее:
<p align="center">
<img src="images/module3/7.png" width="600" />
</p>
Далее нужно настроить файл ipsec.secrets. Вносим туда строку:
***172.16.5.2 172.16.4.2 : PSK “123qweR%”***
<p align="center">
<img src="images/module3/8.png" width="600" />
</p>
Ещё один конфиг charon.conf, открываем его и редактируем в нём следующую строку, приводя к виду:
***install_routes = no***
<p align="center">
<img src="images/module3/9.png" width="600" />
</p>
И осталось только перезагрузить службу ipsec:
***ipsec restart***
<p align="center">
<img src="images/module3/5.png" width="600" />
</p>
2025-06-10 15:55:34 +05:00
3. Также можно проверить передаются ли зашифрованные пакеты по сети, для этого нам пригодится утилита tcpdump *на BR-RTR*:
2025-06-10 12:05:51 +05:00
***apt install tcpdump***
2025-06-10 15:55:34 +05:00
И теперь мы можем проверить это, пропишем на роутере *BR-RTR* команду:
2025-06-10 12:05:51 +05:00
2025-06-10 15:53:33 +05:00
***tcpdump -i ens18 -n -p esp***
2025-06-10 12:05:51 +05:00
2025-06-10 15:55:34 +05:00
А на роутере *HQ-RTR* отправим эхо-запрос на порту в сторону branch(br-srv):
2025-06-10 12:05:51 +05:00
***ping 192.168.200.2***
Как можно заметить, на правом роутере мы видим зашифрованные пакеты с меткой ESP:
<p align="center">
2025-06-10 16:13:07 +05:00
<img src="images/module3/isp-end.png" width="600" />
2025-06-10 12:05:51 +05:00
</p>
2025-06-10 16:16:56 +05:00
<p align="center"><b>Слева HQ-RTR - Cправа BR-RTR</b></p>
2025-06-10 16:13:07 +05:00
2025-06-10 12:14:25 +05:00
> Если IPsec настроен правильно, вы должны видеть защищённый трафик между вашими серверами.
### <p align="center"><b>4. Настройте межсетевой экран на маршрутизаторах HQ-RTR и BR-RTR на сеть в сторону ISP</b></p>
Для выполнения этого задания нам нужно обеспечить работу только нужных протоколов, а именно: HTTP, HTTPS, DNS, NTP, ICMP. А также запретить остальные подключения из сети Интернет во внутреннюю сеть.
<p align="center"><b>*HQ-RTR*</b></p>
2025-06-23 15:59:51 +05:00
- Скачаем готовый nftables.conf с github:
2025-06-23 15:57:27 +05:00
> !dos2unix и curl на HQ-RTR уже скачаны!
2025-06-23 15:58:47 +05:00
***curl -o /etc/nftables.conf https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/hq-rtr/nftables.conf***
2025-06-23 15:57:27 +05:00
2025-06-23 15:58:47 +05:00
***dos2unix /etc/nftables.conf***
2025-06-23 15:57:27 +05:00
2025-06-23 15:59:51 +05:00
- Проверяем содержимое файла /etc/nftables.conf:
2025-06-23 16:02:37 +05:00
> !меняем префикс(маску) ip-адреса в соответствии со своим заданием!
2025-06-10 12:14:25 +05:00
<p align="center">
2025-06-11 18:25:22 +05:00
<img src="images/module3/firewall.jpg" width="600" />
2025-06-10 12:14:25 +05:00
</p>
2025-06-23 15:59:51 +05:00
- Не забываем применять:
2025-06-10 12:14:25 +05:00
<p align="center">
<img src="images/module3/11.firewall.png" width="600" />
</p>
<p align="center"><b>*BR-RTR *</b></p>
2025-06-23 15:59:51 +05:00
- Скачаем готовый nftables.conf с github:
2025-06-23 15:57:27 +05:00
2025-06-23 15:58:47 +05:00
***apt install dos2unix -y***
2025-06-23 15:57:27 +05:00
2025-06-23 15:58:47 +05:00
***apt install curl -y***
2025-06-23 15:57:27 +05:00
2025-06-23 15:58:47 +05:00
***curl -o /etc/nftables.conf https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/br-rtr/nftables.conf***
2025-06-23 15:57:27 +05:00
2025-06-23 15:58:47 +05:00
***dos2unix /etc/nftables.conf***
2025-06-23 15:57:27 +05:00
2025-06-23 15:59:51 +05:00
- Проверяем содержимое файла /etc/nftables.conf:
2025-06-23 16:02:37 +05:00
> !меняем префикс(маску) ip-адреса в соответствии со своим заданием!
2025-06-23 15:57:27 +05:00
2025-06-10 12:14:25 +05:00
<p align="center">
2025-06-11 18:17:05 +05:00
<img src="images/module3/firewall.jpg" width="600" />
2025-06-10 12:14:25 +05:00
</p>
2025-06-23 15:59:51 +05:00
- Не забываем применять:
2025-06-23 15:57:27 +05:00
2025-06-10 12:14:25 +05:00
<p align="center">
<img src="images/module3/14.png" width="600" />
</p>
И проверим, не отвалился ли туннель ipsec после настройки правил на HQ-RTR:
***ipsec status***
<p align="center">
<img src="images/module3/15.png" width="600" />
</p>
2025-06-10 12:15:46 +05:00
2025-06-10 12:14:25 +05:00
> Видим, что соединение установлено и всё хорошо!
Проверим также наличие связи между конечными устройствами, отправим эхо-запрос с *HQ-CLI на BR-SRV*:
***ping 192.168.200.2***
<p align="center">
<img src="images/module3/16.png" width="600" />
</p>
2025-06-10 12:15:46 +05:00
2025-06-10 12:14:25 +05:00
> Связь есть, всё отлично! Задание выполнено!
### <p align="center"><b>5. Настройте принт-сервер cups на сервере HQ-SRV.</b></p>
2025-06-10 12:05:51 +05:00
2025-06-10 12:40:56 +05:00
1. Для начала необходимо установить пакеты cups и cups-pdf на HQ-SRV:
<p align="center">
<img src="images/module3/17.png" width="600" />
</p>
Теперь необходимо включить службу cups, чтобы она запускалась вместе с системой:
***systemctl enable now cups***
Далее, необходимо отредактировать конфиг /etc/cups/cupsd.conf
<p align="center">
<img src="images/module3/18.png" width="600" />
</p>
<p align="center">
<img src="images/module3/19.png" width="600" />
</p>
2025-06-10 12:46:01 +05:00
> Во всех блоках Location необходимо добавить строку Allow all, как на скриншоте
2025-06-10 12:40:56 +05:00
Перезапускаем службу cups для применения изменений:
systemctl restart cups
2. Переходим к подключению клиента HQ-CLI
Скачиваем cups:
***apt-get install cups cups-pdf -y***
<p align="center">
<img src="images/module3/20.png" width="600" />
</p>
На HQ-CLI выполняем следующую команду для подключения к принт-серверу:
***lpadmin -p CUPS -E -v ipp://hq-srv.au-team.irpo:631/printers/PDF -m everywhere***
Установим принтер CUPS, как принтер по умолчанию:
***lpoptions -d CUPS***
<p align="center">
<img src="images/module3/21.png" width="600" />
</p>
> Как можно заметить, принтер CUPS успешно подключен.
Из-за того, что на HQ-CLI также установлен принт-сервер, можно отключить локальный принтер “Cups-PDF”, чтобы он не мешал.
***lpadmin -x Cups-PDF***
<p align="center">
<img src="images/module3/22.png" width="600" />
</p>
Теперь у нас остался один принтер. Проверим его работу. Откроем любой текстовый документ и попробуем его распечатать.
<p align="center">
<img src="images/module3/23.png" width="600" />
</p>
Перейдем в веб-интерфейс CUPS по адресу https://hq-srv.au-team.irpo:631
- Вкладка *Принтеры*
- Выбираем наш принтер.
- Жмем кнопку Показать все задания
### <p align="center"><b>6. Реализуйте логирование при помощи rsyslog на устройствах HQ-RTR, BR-RTR, BR-SRV</b></p>
1. Сперва необходимо настроить наш сервер для сбора логов.
Установим пакет rsyslog на HQ-SRV:
apt install rsyslog
Далее, отредактируем файл конфигурации, расположенный по пути
/etc/rsyslog.conf:
<p align="center">
<img src="images/module3/24.rsyslog.png" width="600" />
</p>
> Для передачи логов будем использовать протокол TCP, поэтому раскомментируем (уберем #) модуль imtcp, чтобы rsyslog мог получать логи с удаленных узлов.
<p align="center">
<img src="images/module3/25.png" width="600" />
</p>
> Также необходимо в конец конфига добавить шаблон для сбора логов, чтобы rsyslog сохранял логи по пути, который указан в задании.
Включаем службу rsyslog, чтобы она запускалась вместе с системой и перезапускаем ее для применения изменений:
***systemctl enable rsyslog***
***systemctl restart rsyslog***
<p align="center">
<img src="images/module3/26.png" width="600" />
</p>
> Сервер для приема логов настроен
2. Переходим к настройке клиентов. Начнем с роутеров.
Установим пакет rsyslog на HQ-RTR:
<p align="center">
<img src="images/module3/27.png" width="600" />
</p>
<p align="center">
<img src="images/module3/28.png" width="600" />
</p>
Далее, отредактируем файл конфигурации, расположенный по пути
/etc/rsyslog.conf:
<p align="center">
<img src="images/module3/29.png" width="600" />
</p>
> В блоке MODULES необходимо раскомментировать модули, которые обеспечивают поддержку логирования. (Все кроме модуля imuxsock, потому что вместо него будет использован модуль imjournal). Модуль imjournal придется дописать вручную.
Теперь опускаемся в самый низ конфига, там расположены правила.
Добавляем в самый конец строку, которая отвечает за отправку логов уровня предупреждения (warning) и выше:
****.warning @@192.168.100.2:514***
<p align="center">
<img src="images/module3/30.png" width="600" />
</p>
Теперь перезапускаем службу rsyslog, чтобы применить изменения.
***systemctl restart rsyslog***
*НА BR-RTR НУЖНО ПОВТОРИТЬ АНАЛАГИЧНО.*
3. Продолжаем настройку клиентов на BR-SRV
Установим на BR-SRV пакет rsyslog:
***apt install rsyslog***
<p align="center">
<img src="images/module3/31.png" width="600" />
</p>
Далее, отредактируем файл конфигурации, расположенный по пути /etc/rsyslog.conf:
<p align="center">
<img src="images/module3/32.png" width="600" />
</p>
> Здесь также необходимо раскомментировать модули imjournal, imklog, immark
<p align="center">
<img src="images/module3/33.png" width="600" />
</p>
> И добавить строку в конец конфига для того, чтобы логи отправлялись на сервер.
Включаем службу rsyslog, чтобы она запускалась вместе с системой и перезапускаем ее для применения изменений:
***systemctl enable rsyslog***
***systemctl restart rsyslog***
<p align="center">
<img src="images/module3/34.png" width="600" />
</p>
4. За время пока выполнялась настройка клиентов уже должны появиться логи, проверим каталог /opt на HQ-SRV:
<p align="center">
<img src="images/module3/35.png" width="600" />
</p>
> Как можно заметить, были автоматически созданы каталоги с именами клиентов. В каждом из них есть файл rsyslog.txt
Проверим, что логируются только сообщения уровня warning и выше.
Добавим несколько записей различного уровня в лог на любом из клиентов, например на BR-SRV, командами:
***logger -p user.info “Test info”***
***logger -p user.warning “Test warning”***
> сообщения уровня warning:
***logger -p user.error “Test error”***
> сообщения уровня error:
<p align="center">
<img src="images/module3/36.png" width="600" />
</p>
Теперь проверим на HQ-SRV содержимое файла /opt/br-srv/rsyslog.txt:
<p align="center">
<img src="images/module3/37.png" width="600" />
</p>
> Как можно заметить, здесь появились только сообщения уровня warning и error.
5. Перейдем к настройке ротации логов. На HQ-SRV создадим файл /etc/logrotate.d/rsyslog
Запишем в него следующее содержимое:
<p align="center">
<img src="images/module3/38.png" width="600" />
</p>
> Настройка ротации на этом закончена, каждую неделю будут проверяться логи и если какие-то из них больше 10МБ, они будут сжаты в архив.
### <p align="center"><b>8. Реализуйте механизм инвентаризации машин HQ-SRV и HQ-CLI через Ansible на BR-SRV</b></p>
2025-06-10 13:05:34 +05:00
1. Для начала необходимо создать каталог, в котором будут размещены отчеты о рабочих местах:
***mkdir /etc/ansible/PC_INFO***
<p align="center">
<img src="images/module3/39.inventory_ansible.png" width="600" />
</p>
2. Далее, создадим плейбук /etc/ansible/inventory.yml:
2025-06-22 13:47:05 +05:00
- Скачиваем его с github в необходимую директори:
2025-06-23 14:26:28 +05:00
> !dos2unix и curl на BR-SRV уже скачаны!
2025-06-22 13:47:05 +05:00
2025-06-23 16:05:47 +05:00
***curl -o /etc/ansible https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/inventory.yml***
2025-06-22 13:47:05 +05:00
***dos2unix /etc/ansible/inventory.yml***
- Потом проверяем его содержимое:
2025-06-10 13:05:34 +05:00
<p align="center">
<img src="images/module3/40.png" width="600" />
</p>
<p align="center">
<img src="images/module3/41.png" width="600" />
</p>
3. Проверим работу, командой:
***ansible-playbook /etc/ansible/inventory.yml***
<p align="center">
<img src="images/module3/42.png" width="600" />
</p>
2025-06-10 13:11:23 +05:00
> - Ansible помечает результат как changed, так как фактическое состояние системы меняется. При первом запуске плейбука это ожидаемое поведение.
> - Если запустить плейбук ещё раз, то Ansible покажет для тех же задач статус ok, потому что требуемое состояние уже достигнуто и ничего менять не нужно.
2025-06-10 13:05:34 +05:00
4. Проверим наличие и содержимое, созданных отчетов:
***ls -la /etc/ansible/PC_INFO***
***cat /etc/ansible/PC_INFO/hq-cli.yml***
***cat /etc/ansible/PC_INFO/hq-srv.yml***
<p align="center">
<img src="images/module3/43.png" width="600" />
</p>
> Как можно заметить, отчеты созданы и содержат необходимую информацию. Задание выполнено.
### <p align="center"><b>9. Реализуйте механизм резервного копирования конфигурации для машин HQ-RTR и BR-RTR, через Ansible на BR-SRV</b></p>
2025-06-10 13:11:23 +05:00
1. Создадим также каталог, в котором будут размещены резервные копии конфигураций маршрутизаторов:
***mkdir /etc/ansible/NETWORK_INFO***
<p align="center">
<img src="images/module3/44.backup_ansible.png" width="600" />
</p>
2. И создаём сам плейбук /etc/ansible/backup.yml:
2025-06-22 13:50:52 +05:00
> *ОБЯЗАТЕЛЬНО УСТАНОВИТЕ sudo НА HQ-RTR и BR-RTR*
- Скачаем файл с github в нужную директорию:
2025-06-23 14:26:28 +05:00
> !dos2unix и curl на BR-SRV уже скачаны!
2025-06-22 13:50:52 +05:00
2025-06-23 16:05:47 +05:00
***curl -o /etc/ansible https://raw.githubusercontent.com/4bobus/laba/refs/heads/main/files/backup.yml***
2025-06-22 13:50:52 +05:00
***dos2unix /etc/ansible/backup.yml***
- Проверяем его содержимое:
2025-06-10 13:11:23 +05:00
<p align="center">
<img src="images/module3/45.png" width="600" />
</p>
со следующим содержимым:
*ОБЯЗАТЕЛЬНО УСТАНОВИТЕ sudo НА HQ-RTR и BR-RTR*
<p align="center">
<img src="images/module3/46.png" width="600" />
</p>
3. Абсолютно также, как и в предыдущем задании, проверяем его работу, командой:
***ansible-playbook /etc/ansible/backup.yml***
<p align="center">
<img src="images/module3/47.png" width="600" />
</p>
> - Как и в прошлом задании, Ansible помечает результат как changed, так как фактическое состояние системы меняется. При первом запуске плейбука так и должно быть.
> - И если запустить его ещё раз, то Ansible покажет для тех же задач статус ok, потому что требуемое состояние уже достигнуто и ничего менять не нужно.
4. Проверим наличие созданных отчетов:
***ls -la /etc/ansible/NETWORK_INFO***
***ls -la /etc/ansible/NETWORK_INFO/HQ-RTR***
***ls -la /etc/ansible/NETWORK_INFO/BR-RTR***
<p align="center">
<img src="images/module3/48.png" width="600" />
</p>
А также их содержимое, если хотите убедиться, что действительно скопировалось, для примера покажем файл interfaces с маршрутизатора HQ-RTR, остальные можете сами:
2025-06-10 13:11:44 +05:00
***cat /etc/ansible/NETWORK_INFO/HQ-RTR/interfaces***
2025-06-10 13:11:23 +05:00
<p align="center">
<img src="images/module3/49.png" width="600" />
</p>
> По итогу все резервные копии конфигураций созданы и содержат необходимую информацию. Задание выполнено.