Компьютерные сети МИИГАиК

Добро пожаловать на начальную страницу

Лабораторная работа №0

Установка необходимого софта Для выполнения курса лабораторных работ требуется установить следующий набор программ: Virtualbox Ссылка на установочные файлы (Не забудьте включить виртуализацию в bios, если у вас Windows/Linux) Obsidian Ссылка на подробную инструкцию по установке

1 min · 35 words · Maxim Muravev

Лабораторная работа №1

Шаблон для выполнения работы Для выполнения работы создайте новый файла в Obsidian, назовите его “Фамилия Имя Отчество Группа”, скопируйте и вставьте представленный ниже шаблон: # Лабораторная работа №1 ## Создание виртуальных машин в virtualbox ### Создание сети ```bash $ VBoxManage natnetwork add --netname natnet1 --network "10.0.x.0/24" --enable --dhcp on $ VBoxManage list natnetworks ``` <Тут должен быть скриншот выполненых выше команд> ### Создание машин <Тут должны быть скриншоты, со всеми этапами создания и настройки обоих машин в virtualbox> ## Установка ubuntu server <Тут должны быть скриншоты настройки ubuntu server для обоих машин> ## Установка необходимого софта <Тут должны быть скриншоты вывода команд apt update/install> ## Ручная настройка сети на ubuntu server ```bash # Вставьте сюда вывод команд ip a и cat /etc/netplan/50-cloud-init.yaml # !!!! ДО ТОГО, КАК ВЫ ИЗМЕНИТЕ НАСТРОЙКИ СЕТИ !!!! ``` ```bash # После изменений настроек сети вставьте вывод команд ip a и cat /etc/netplan/50-cloud-init.yaml ``` ## Проверка сетевой доступности двух машин 1. Ваш ответ на вопрос, в свободной форме 2. Ваш ответ на вопрос, в свободной форме 3. Ваш ответ на вопрос, в свободной форме ## Самоконтроль 1. Ваш ответ на вопрос, в свободной форме 2. Ваш ответ на вопрос, в свободной форме 3. Ваш ответ на вопрос, в свободной форме Теоретическая часть Модель OSI Модель OSI (Open Systems Interconnection) — это сетевая модель, разработанная Международной организацией по стандартизации (ISO) для описания и стандартизации коммуникационных процессов в компьютерных сетях. Модель OSI состоит из семи уровней, каждый из которых выполняет определённые функции для обеспечения передачи данных между устройствами в сети. ...

10 min · 1966 words · Maxim Muravev

Лабораторная работа №2

Шаблон для выполнения работы Для выполнения работы создайте новый файла в Obsidian, назовите его “Фамилия Имя Отчество Группа”, скопируйте и вставьте представленный ниже шаблон: # Лабораторная работа №2 ## Сервер 1 ```bash <Тут должен быть вывод команд, можно скриншотами> $ cat /home/user/python_server.py $ cat /etc/systemd/system/python_server.service $ systemctl status python_server ``` ## Сервер 2 ```bash <Тут должен быть вывод команд, можно скриншотами> $ cat /etc/dnsmasq.conf # только последние строки, которые вы настраивали $ systemctl status dnsmasq $ cat /etc/nginx/sites-available/ivanov.local $ systemctl status nginx $ cat /var/www/static/index.html ``` ## Тестирование Команды выполняются на втором сервере. ```bash <Тут должен быть вывод команд, можно скриншотами> $ cat /etc/resolv.conf $ ping -c 4 python.ivanov.local $ ping -c 4 static.ivanov.local $ curl -X GET http://python.ivanov.local $ curl -X GET http://static.ivanov.local $ curl -X POST -d "name=John" python.ivanov.local $ curl -X PUT -d "name=JohnDoe" python.ivanov.local $ curl -X DELETE python.ivanov.local ``` ## Вопросы для самопроверки 1. Какие методы HTTP существуют, и для чего они используются? 2. Как сервер отвечает на различные запросы? 3. Какой тип DNS-записи отвечает за привязку доменного имени к IP? 4. Что такое CNAME-запись? 5. Какой конфигурационный файл отвечает за настройки NGINX? 6. Какие основные блоки конфигурации используются для настройки сервера? Теоретическая часть Протокол HTTP HTTP (HyperText Transfer Protocol) — это протокол прикладного уровня, который используется для передачи гипертекста (обычно веб-страниц) по сети, в основном в Интернете. Он лежит в основе взаимодействия между веб-браузерами (клиентами) и веб-серверами, позволяя передавать данные, такие как HTML-документы, изображения, видео и другие ресурсы. ...

12 min · 2432 words · Maxim Muravev

Лабораторная работа №3

Шаблон для выполнения работы Для выполнения работы создайте новый файла в Obsidian, назовите его “Фамилия Имя Отчество Группа”, скопируйте и вставьте представленный ниже шаблон: # Лабораторная работа №3 ## Практическая часть ```bash Вставьте сюда содержимое файла openssl_root.cnf ``` ```bash Вставьте сюда вывод команд из этапа 1.2 ``` ```bash Вставьте сюда вывод команд из этапа 1.3 ``` ```bash Вставьте сюда содержимое openssl_subca.cnf ``` ```bash Вставьте сюда вывод команд из этапа 2.2 ``` ```bash Вставьте сюда вывод команд из этапа 2.3 ``` ```bash Вставьте сюда вывод команд из этапа 2.4 ``` ```bash Вставьте сюда вывод команд из этапа 3.1 ``` ```bash Вставьте сюда вывод команд из этапа 3.2 ``` ```bash Вставьте сюда вывод команд из этапа 4 ``` ```bash # Вставьте сюда вывода следующей команды, где cert.pem -- название вашего конечного сертификата $ openssl x509 -in cert.pem -noout -text ``` ## Вопросы для самопроверки 1. **Что такое TLS/SSL и какие основные задачи оно решает?** 2. **Какие этапы включает процесс установления TLS/SSL-соединения?** 3. **Что такое CA и SubCA, и в чем разница между ними?** 4. **Что такое цепочка доверия и как она работает в контексте TLS/SSL?** 5. **Для чего используется файл конфигурации openssl.cnf при создании сертификатов?** 6. **Какие ключевые параметры конфигурации следует указывать для Root CA в openssl.cnf?** 7. **Как создать CSR (Certificate Signing Request) и для чего он используется?** 8. **Какими командами OpenSSL можно проверить цепочку доверия для конечного сертификата?** 9. **Какие поля включаются в CSR при его создании, и какие из них обязательны?** 10. **Что произойдет, если в цепочке доверия будет отсутствовать сертификат Root CA?** Теоретическая часть Введение Протоколы TLS (Transport Layer Security) и SSL (Secure Sockets Layer) играют ключевую роль в защите данных, передаваемых через интернет. TLS, являясь развитием SSL, обеспечивает три основных аспекта безопасности: ...

8 min · 1654 words · Maxim Muravev

Лабораторная работа №4

Шаблон для выполнения работы Для выполнения работы создайте новый файла в Obsidian, назовите его “Фамилия Имя Отчество Группа”, скопируйте и вставьте представленный ниже шаблон: # Лабораторная работа №4 ## Практическая часть ### Сервер 1 ```bash # Вывод команды sudo iptables -L -v ``` ```bash # Вывод команд curl http://192.168.1.151:80 curl http://192.168.1.151:81 ``` ```bash # Результат команды ssh -p 2222 i.ivanov@192.168.1.151 ``` ### Сервер 2 ```bash # Вывод команды sudo iptables -L -v ``` ```bash # Скриншоты подключения по ssh с сервера 1 и с вашей машины ``` ```bash # Выполните команду ping -c 4 192.168.1.152 с вашей машины и с сервера 1 ``` ```bash # Выполните команду curl http://python.ivanov.local с сервера 1 ``` ## Вопросы для самопроверки 1. Какую роль выполняет iptables в Linux? 2. Какие существуют таблицы в iptables и для чего они используются? 3. В чём разница между цепочками INPUT, OUTPUT и FORWARD? 4. Какое назначение имеет таблица nat? 5. Какие действия может выполнять iptables над пакетами? 6. Что такое маскарадинг, и как его настроить с помощью iptables? 7. Какие команды позволяют сбросить текущие правила iptables? 8. Как запретить весь входящий трафик, кроме разрешённых правил? 9. Почему важно указывать правила для выхода (OUTPUT), если на сервере выполняются другие сетевые службы? 10. Как проверить работоспособность настроенного проброса портов? Теоретическая часть 1. Ознакомление с принципами работы iptables iptables — это инструмент командной строки для настройки сетевых экранов (firewall) в Linux. Он управляет правилами фильтрации сетевого трафика и позволяет контролировать, какие пакеты могут проходить через сетевой стек системы. ...

9 min · 1824 words · Maxim Muravev