Лабы по СетиТК 2024 / Baraeva_Elizaveta_lb7
.docМИНОБРНАУКИ РОССИИ
Санкт-Петербургский государственный
электротехнический университет
«ЛЭТИ» им. В. И. Ульянова (Ленина)
Кафедра МО ЭВМ
отчет
по лабораторной работе №7
по дисциплине «Сети и телекоммуникации»
Тема: Сетевые экраны. IPTABLES
Студентка гр. 2383 |
|
Бараева Е. Н. |
Преподаватель |
|
Борисенко К. А. |
Санкт-Петербург
2024
Цель работы.
Целью работы является изучение принципов работы с сетевыми экранами.
Задание.
Для выполнения лабораторной работы необходимо настроить три виртуальные машины Ub1, Ub2 и Ub3 так, чтобы они находились в одной подсети.
Кроме того, для некоторых пунктов необходимо установить дополнительные службы на виртуальные машины: apache2, ftpd – и выполнить следующие задачи:
Заблокировать доступ по IP-адресу ПК Ub1 к Ub3. Продемонстрировать результаты с попыткой подключения Ub1 и Ub2 к Ub3.
Заблокировать доступ по 23-му порту на Ub1. Продемонстрировать возможность доступа по ssh на Ub1 и невозможность доступа по 23-му порту.
Разрешить доступ только по ssh на Ub2. Предоставить результат.
Запретить ICMP-запросы на IP-адрес 8.8.8.8 двумя способами. Необходимо создать два правила: в цепочке INPUT и цепочке OUTPUT. С помощью Wireshark на хосте нужно продемонстрировать разницу между двумя способами блокировки и сделать вывод о том, какой вариант эффективнее.
Полностью запретить доступ к Ub3. Разрешить доступ по ICMPпротоколу.
Запретить подключение к Ub1 по порту 73. Настроить логирование попыток подключения по 73-му порту. Продемонстрировать результаты логирования.
Заблокировать доступ по 13-му порту к Ub3 с Ub1 по его MACадресу. Продемонстрировать результат, сменить MAC-адрес на Ub3 и продемонстрировать успешное подключение к Ub3 по 13-му порту.
Полностью закрыть доступ к Ub1. Разрешить доступ для Ub3 к Ub1, используя диапазон портов 13-73. В результате необходимо показать невозможность подключения к 74 порту и возможность – к ssh или ftp.
Разрешить только одно ssh-подключение к Ub3. Продемонстрировать результат попытки подключения с Ub2 при наличии открытой ssh-сессии с Ub1 к Ub3.
Выполнение работы.
Настроим три виртуальные машины с адресами:
UB1 192.168.0.5/24; UB2 192.168.0.4/24; UB3 192.168.0.6/24
Заблокируем доступ по ip-адресу UB1 к UB3.
Рисунок 1 – Команда iptables на UB1 и недоступность UB3 с UB1
Рисунок 2 – Доступность UB3 с UB2
Заблокируем доступ к 23-му порту на UB1. Далее проверим доступность UB1 с UB3 через ssh и через порт 23.
Рисунок 3 – Команда iptables на UB1
Рисунок 4 – Недоступность к по порту 23
Рисунок 5 – Доступ к UB1 по ssh
Разрешим доступ только по ssh на UB2. Для этого разрешим пакеты через ssh и запретим все остальные. Далее проверим доступность UB2 с UB1 при помощи команды ping и доступность UB2 с UB1 по ssh.
Рисунок 6 – Команды iptabels на UB2
Рисунок 7 – Недоступность UB2 с UB1 при выполнении команды ping
Рисунок 8 – Доступность UB2 с UB1 через ssh
Запретим на UB1 ICMP запросы на 8.8.8.8 через правило в цепочке INPUT, а затем обновим таблицы и запретим через правило в цепочке OUTPUT. Для анализа трафика вместо Wireshark будем использовать версию данной программы для CLI – TShark.
Рисунок 9 – Цепочка INPUT на UB1
Рисунок 10 – Запрет ICMP запросов к 8.8.8.8 с UB1 при цепочке INPUT
Рисунок 11 – Отправка и прием ICMP запросов к 8.8.8.8 с UB1 при цепочке INPUT
Рисунок 12 – Цепочка OUTPUT на UB1 и запрет ICMP запросов к 8.8.8.8
Рисунок 13 – Отправка и прием ICMP запросов к 8.8.8.8 с UB1 при цепочке OUTPUT
После экспериментов можно заключить, что вариант через цепочку OUTPUT эффективнее, так как лишние ICMP запросы не нагружают сеть.
Полностью запретим доступ к UB3, однако оставим возможность доступа по ICMP протоколу. Также проверим доступность с UB2 на UB3 через ssh и при помощи команды ping.
Рисунок 14 – Команды iptables на UB3
Рисунок 15 – Недоступность UB3 с UB2 через ssh
Рисунок 16 – Доступность UB3 с UB2 через ICMP протокол
Запретим подключение к UB1 по порту 73, а также настроим логирование попыток данного подключения. Они находятся в файле /var/log/kern.log, в котором записаны отклоненные попытки подключения.
Рисунок 17 – Команды iptables на UB1
Рисунок 18 – Попытка подключение к UB1 с UB2 через порт 73
Рисунок 19 – Лог в /var/log/kern.log
Заблокируем доступ по порту 13 с UB1 к UB3 по его MAC-адресу. Затем изменим у UB3 MAC-адрес и снова проверим доступ.
Рисунок 20 – Команда iptables на UB1
Рисунок 21 – Недоступность UB3 с UB1 через порт 13 после ожидания
Рисунок 22 – Сгенерированный новый MAC-адрес для UB3
Рисунок 23 – Доступность UB3 через порт 13 после смены MAC-адреса
Полностью закроем доступ к UB1, но разрешим доступ для UB3 к UB1 через диапазон портов 13-73. Затем проведем проверку недоступности соединения через порт 74 и доступности соединения через порт 22, т.е. через shh.
Рисунок 24 – Команды iptables на UB1
Рисунок 25 – Недоступность соединения через порт 74 с UB3 на UB1
Рисунок 26 – Доступность через ssh с UB3 на UB1
Разрешим только одно ssh-подключение к UB3. Затем, при созданном ssh подключении к UB3 с UB1, произведем попытку создания еще одного ssh подключения c UB2 на UB3, и проверим недоступность второго соединения.
Рисунок 27 – Команда iptables на UB3
Рисунок 28 – Доступность UB3 с UB1 через ssh
Рисунок 29 – Недоступность UB3 с UB2 через ssh
Вывод.
В ходе работы были изучены принципы работы с сетевыми экранами. Решены следующие задачи: создание трех виртуальных машин, изучение блокирования и допуска приема и отправки пакетов с помощью iptables, настраивание логирования событий.
