В современном мире сетевая безопасность стала одним из ключевых аспектов в области информационных технологий. Для практического освоения принципов защиты сетей и систем, создание и настройка виртуального стенда являются важным этапом в обучении специалистов по сетевой безопасности. В этой статье мы рассмотрим шаги по созданию и настройке стенда на GNS3, популярной платформе для моделирования сетей, с целью проведения простых лабораторных работ по сетевой безопасности.
GNS3 (Graphical Network Simulator-3) — это программное обеспечение с открытым исходным кодом, которое моделирует сложные сети, максимально приближаясь к тому, как работают реальные сети. И все это без специального сетевого оборудования, такого как маршрутизаторы и коммутаторы.
GNS3 состоит из двух частей:
-
Клиентская часть (GNS3-all-in-one)
Представляет из себя графический интерфейс (GUI) в котором создаются топологии.
-
Серверная часть
Это ПО, на котором запускается эмуляция работы устройств из вашей топологии. Это может быть встроенный в клиентскую часть сервер, локальная или удаленная виртуальная машина.
В качестве серверной части рекомендуется использовать виртуальные машины, которые представлены для разных платформ (VMware, Virtualbox и т.д.). GNS3 может быть использован и без серверной части, но это сильно ограничивает его функции.
GNS3 поддерживает как эмуляцию, так и симуляцию устройств:
- Эмуляция: GNS3 имитирует или эмулирует аппаратное обеспечение устройства, и вы запускаете реальные ОС на виртуальном устройстве. Например, вы можете скопировать Cisco IOS с реального физического маршрутизатора Cisco и запустить его на виртуальном эмулируемом маршрутизаторе Cisco в GNS3.
- Симуляция: GNS3 имитирует функции и возможности такого устройства, как коммутатор. Вы используете не настоящие ОС (например, Cisco IOS), а скорее симулированное устройство, разработанное GNS3, например встроенный коммутатор L2.
Первым делом требуется установить клиентскую часть GNS3 на вашем ПК. Последние версии под разные ОС находятся по ссылке.
Инструкции по установке доступны в официальной документации: Windows, Linux, Mac.
Также нам понадобится установить виртуальную машину GNS3.
При написании этой статьи использовалась клиентская часть версии 2.2.45 и виртуальная машина для VMware Workstation с такой же версией. В качестве хостовой системы используется EndeavourOS (основан на Arch Linux).
При первом запуске откроется Мастер настройки.
Мастер настройки
Выбираем 1 пункт "Run appliances in a virtual machine", так как мы будем использовать виртуальную машину для эмуляции устройств и нажимаем Next. Откроется окно настройки локального сервера.
Настройки локального сервера
Здесь меняем Host binding на сеть VMware Host-only, так как GNS требует, чтобы локальный сервер работал в той же сети, что и виртуальная машина. Порт можно выбрать любой. В Linux-based системах лучше выбирать порт выше 1024, так как они не требуют для запуска root-прав. Нажимаем Next. Начнётся проверка локального сервера.
Проверка подключения к локальному серверу
Если вы всё правильно установили, то GNS3 напишет, что подключение прошло успешно. Нажимаем Next. Откроется окно настройки виртуальной машины.
Настройки виртуальной машины
Здесь выбираем VMware. Если вы уже импортировали GNS3 VM, то она отобразится в списке, если же вы этого ещё не сделали, то самое время скачать и импортировать её в VMware и после нажать Refresh. Вы можете установить любое число виртуальных ядер и памяти, для примера установлено 4 ядра и 16 Гб оперативной памяти. Нажимаем Next. Откроется окно подтверждения.
Подтверждение настроек виртуальной машины
Проверьте настройки и нажимайте Finish. Если вы сделали всё правильно, то в VMware должна была запустится виртуальная машина.
Окно VMware
После настройки GNS3 должно открыться окно создания проекта. Если вы его случайно закрыли, или по какой-то причине оно не открылось, то его можно открыть вручную: File -> New Blank Project.
Создание нового проекта GNS3
Можете назвать свой проект как угодно. Я назову его sample_project. После нажмите OK. Теперь доступно главное окно GNS3.
Главное окно GNS3
Окно содержит множество элементов, рассмотрим каждое из них.
Рабочее пространство это окно, в котором создаются топологии.
Рабочее простанство
Здесь представлены кнопки для быстрого доступа к инструментам.
Панель инструментов
Здесь представлены все устройства, которые могут быть в вашей топологии.
Панель устройств
Устройства сгруппированы в следующие группы:
Кнопка | Название |
---|---|
Роутеры | |
Коммутаторы и хабы | |
Конечные устройства (ПК, Облако и т.д.) | |
Устройства безопасности | |
Все устройства | |
Добавить соединение |
Здесь указаны все устройства в сети и их состояние (включено/выключено).
Информация о топологии
Если при установке и настройке вы сделали всё правильно, то в окне Servers Summary должны отображаться два сервера: локальный (на скриншоте arslan-laptop) и виртуальная машина (на скриншоте GNS3 VM). Также здесь отображается нагруженность серверов и какие устройства на них работают.
Информация о серверах
Создадим простую топологию:
- Три компьютера
- Один коммутатор
Компьютеры будут иметь статические IP-адреса, чтобы не требовался DHCP-сервер в сети.
Первым делом создадим три компьютера. Откроем группу End Devices в панели устройств и перетащим VPCS (Virtual PC Simulator) в рабочую зону.
Группа End Devices
При добавлении устройства нам предлагают выбор сервера. Выбираем виртуальную машину.
Выбор сервера
После добавления всех компьютеров, рабочая область должна выглядеть примерно так:
Топология с компьютерами
Добавим в топологию Ethernet Switch из группы Switches:
Группа Switches
Так же, как и при добавлении сервера, выбираем в качестве сервера нашу виртуальную машину. Сейчас рабочая область выглядит вот так:
Топология с добавленным коммутатором
Теперь нам нужно добавить соединения между устройствами. В панели устройств выбираем Add a Link и нажимаем на PC1. Появится выбор порта. В случае с VPCS нам доступен только один порт.
Выбор порта у PC1
Соединяем его со Switch1. Нажимаем на Switch1 и выбираем порт Ethernet0.
Выбор порта у Switch1
Мы успешно создали первую связь. Необходимо проделать то же самое с другими ПК. Должно получится следующим образом:
Топология со связями
Обратите внимание на цвета у связей. В таблице приведены все возможные цвета:
Цвет | Состояние |
---|---|
Красный | Устройство выключено |
Жёлтый | Устройство приостановлено |
Зелёный | Устройство включено |
{% hint style="warning" %} Примечание: Если устройство помечено зелёным, то это ещё не значит, что порт находится в рабочем состоянии (он может быть выключен программно). Рекомендуется перепроверять, что порт включен через конфигурацию. {% endhint %}
Запустим все устройства в топологии. Для этого нажмём кнопку Play в панели инструментов.
Запуск топологии
Все ПК в топологии стали активными, что видно по цвету связей и в информации о топологии.
Запущенная топология
VPCS представляет собой очень упрощенное устройство, поэтому управлять им можно только через командную консоль.
Консоль VPCS
Пусть все наши ПК находятся в одной сети 10.10.10.0/24. Назначим IP-адреса следующим образом
Компьютер | IP-адрес |
---|---|
PC1 | 10.10.10.1 |
PC2 | 10.10.10.2 |
PC3 | 10.10.10.3 |
В VPCS адреса назначаются через команду ip:
Установка IP-адреса у PC1
Проделаем это для остальных ПК в топологии:
Установка IP-адреса у PC2
Установка IP-адреса у PC3
Проверим, что все ПК видят друг друга через команду ping:
Команды ping на PC1
Команды ping на PC2
Команды ping на PC3
Если все пинги прошли успешно, то поздравляю, вы успешно создали свою первую топологию в GNS3!
На самом деле, с помощью стандартных устройств GNS3 нужные топологии не сделать. Есть специальный сайт, где представлено множество устройств, преднастроенных проектов и ПО. Установка выходит за рамки статьи, но есть туториал.
Ещё рекомендую вам самим изучить документацию к GNS3, так как она содержит много полезных вещей, которые были опущены в статье.
В этой статье мы разобрали, как установить GNS3 с виртуальной машиной, как их настроить и как сделать свою первую топологию. Надеюсь, что она вам пригодится в рамках выполнения лабораторных работ по сетевой безопасности.