Установка EVE-NG

Установка EVE-NG — как поставить EVE-NG на Windows 10 от начала и до полной работоспособности со всеми подробностями. Это единый мануал со всеми нужными ссылками, который поможет легко развернуть EVE-NG с минимальными затратами времени.

В интернете много статей, видео, курсов по EVE-NG, но нужно потратить целый день чтобы перелопатить это всё, найти необходимую информацию и обойти подводные камни, а они есть. Исправим это.

Предварительные сведения

Тут собрано основное, что нужно знать о EVE-NG. Если нет времени или неинтересно, тогда можно пропустить и сразу перейти к разделу об установке.

О EVE-NG
  • Что такое EVE-NG? Программная среда на базе виртуализации для моделирования самых различных сетевых топологий в мультивендорной среде с эмулированием реального оборудования. Достигается использованием адаптированных прошивок от конкретного оборудования, таким образом работа в EVE-NG — тоже самое, что и работа с реальным оборудованием;
  • Ограничения. Есть некоторые ограничения в функционале железок. Пример ниже, в подразделе vIOS L2. Выбор оборудования тоже ограничен. Что говорить, реальное железо в этом плане лучше, но стоит денег и размещать его где-то нужно. Если интересно, то вот рассказ как закупился коммутаторами CISCO и что из этого вышло. Новые версии EVE-NG, как и новые версии образов для железок, добавляют поддержку нового оборудования, расширяют функционал;
  • Для чего это нужно? В первую очередь для обучения, во вторую для дизайна и предварительного тестирования проектных решений;
  • Версии EVE-NG. Бесплатная версия Community Edition и платные версии Professional Edition, Lerning Center. В платных версиях упор сделан на одновременную работу нескольких пользователей и расширенный функционал: 1024 устройства в одной лабе, поддержка контейнеров Docker, несколько конфигураций для одной лабы, многое другое — всё это рассказано на главной странице проекта: //www.eve-ng.net/
  • Развитие EVE-NG. Проект появился чуть больше года назад (и значит сейчас самое время его ставить — уже все начальные баги пофиксили) из проекта UNetLab, который на сегодня получил версию 2 и стал закрытым, "только для своих":

//www.routereflector.com/unetlab/#main

UNetLabv2 is now almost ready, except the web UI and OpenVPN. It’s not available to the public, it’s not for commercial use and it’s not a competitor for GNS3, VIRL or EVE-NG. It’s just a tool I develop for myself, available also for elected users and friends.
  • Что в основе EVE-NG? Виртуальная машина Ubuntu 16.04 (далее VM).

Установка EVE-NG

EVE и GNS3

C появлением EVE-NG, GNS3 становится неактуальным. Единственный плюс GNS3 — это стабильная работа модуля Dynamips (эмуляция роутеров CISCO) при скромном потреблении памяти, поэтому для топологий на роутерах CISCO выберу GNS3.

Минус GNS3:

  • Кривая работа модуля QEMU (эмуляция большей части оборудования, включая CISCO ASA, коммутатор CISCO IOS);
  • Нет поддержки Hyper-V, только VMware или Virtual Box.

Минус EVE-NG:

  • Значительные требования к компьютеру, на котором будет запущена среда.
Варианты развёртывания EVE-NG
  1. На голое железо (bare metal) с ISO — отдельный сервер;
  2. В среде виртуализации с ISO — домашний компьютер или сервер виртуализации (должна быть доступна и включена функция вложенной виртуализации — netsted virtualization);
  3. Использование готового виртуального диска в VMware ESXi/Workstation/Player — домашний компьютер или сервер виртуализации.

Вариант 1 хорош, однако довольно дорог, поэтому будем рассматривать сначала вариант 3 — как самый быстрый и простой, затем вариант 2 — ничуть не сложнее, но более универсальный и удобный в дальнейшем использовании. Оба варианта естественно будут развёрнуты на домашнем компьютере. После развёртывания VM рассмотрим работу с ней.

Развертывание на сервере

Тут буквально пару слов: сервер виртуализации можно заюзать на работе, если есть такая возможность — добавить 1 виртуалку никому хуже не будет или же покупать/собирать сервер самому.  Если бы решил покупать сервер для лаб со сложной топологией и устанавливать его дома, то обратил бы внимание на следующие компоненты:

  • CPU Intel Core i5/i7;
  • ASRock B250M-HDV;
  • 2x8Gb DDR4;
  • SSD M.2 250GB Samsung 970 EVO;
  • Корпус Exegate MI-208 450W;
  • CPU Fan 20дБ.

Получился бы относительно холодный, маленький и тихий сервер. Для дома — то, что надо.


Системные требования

Эмулятор EVE-NG весьма прожорлив, компьютер, на который будет производиться установка, должен иметь:

  • Хороший многоядерный процессор. Кроме этого процессор должен поддерживать SLAT, чтобы работала вложенная виртуализация. Для Intel это - Core i3/i5/i7. Посмотреть поддержку SLAT для Intel по модели процессора можно тут;
  • Памяти минимум 8Gb. Так как самой виртуальной машине EVE-NG придётся выделить минимально 3-4Gb для самых скромных топологий.

Относительно слабый процессор ещё как-то можно пережить,  хотя консоли устройств будут тормозить, но если компьютер имеет 4Gb оперативной памяти, то однозначно апгрейд или же смотреть в сторону GNS3.


Развёртывание с VMware Player

Скачиваем VMware Player по ссылке, устанавливаем, для комфортной работы и снижения трафика при установке отключаем проверку обновлений и отсылку информации об использовании.

Player бесплатен для некоммерческого использования.

Если на компьютере используется встроенный Hyper-V, то его нужно отключить (cmd запускать от имени Администратора):

C:\WINDOWS\system32>bcdedit /set hypervisorlaunchtype off

Перезагрузить компьютер.

Для включения Hyper-V (машины VMware стартовать не смогут):

C:\WINDOWS\system32>bcdedit /set hypervisorlaunchtype auto
Подготовка VM

Качаем образ VM отсюда: //www.eve-ng.net/index.php/community

Установка EVE-NG

Размер образа VM в формате .ova — 1,3Gb. Запускаем Player, выбираем Open a Virtual Machine и затем выбираем наш образ EVE Community Edition.ova:

Установка EVE-NG

Pleyer предложит выбрать хранилище для распаковки, желательно указать быстрый диск/SSD. Распаковка в формат vmdk займёт некоторое время, после чего VM появится в списке для запуска. Выбрать VM и обязательно отредактировать свойства:

Выбрать необходимое количество памяти для VM и в свойствах Processors отметить чекбокс Virtualize Intel VT-x/EPT or AMD-V/RVI. Если этого не сделать не будет работать вложенная виртуализация и всё будет печально, если вообще заработает, а при входе в машину отображается сообщение:

Установка EVE-NG

Выбрать сетевую карту, которая смотрит в интернет: Network adapters - Configure adapters. Если этого не сделать, то машина может при старте зацепиться не за ту физическую сетевую и в результате веб-интерфейс окажется недоступным, поэтому нужно:

Установка EVE-NG

После всех настроек стартуем VM.


Развёртывание с Hyper-V

Windows 10 Pro имеет встроенный Hyper-V последней версии — удобно, бесплатно и грех им не пользоваться. Последнюю сборку Windows 10 иметь не обязательно, но рассказывается именно по ней. Если есть быстрый интернет, то всегда неплохо загрузить помощник по обновлению и обновиться:

Установка EVE-NG

Подготовка VM

Создаём новую VM, выбираем машину 1 поколения, остальное по умолчанию. После создания редактируем параметры:

  • Память. Увеличить количество памяти, динамическую память использовать не надо;
  • Процессор. Увеличить количество виртуальных процессоров;
  • Сетевой адаптер. Выбираем подключение к Коммутатору по умолчанию;
  • Контрольные точки. Снять чекбокс Использовать автоматические контрольные точки - это сэкономит время на ожидание слияния дисков после выключения и последующего запуска VM;
  • Автоматическое действие при запуске. Выбрать Ничего.

Запускаем PowerShell от имени Администратора и выполняем:

Set-VMProcessor -VMName <VMName> -ExposeVirtualizationExtensions $true

Установка EVE-NG

Это включит вложенную виртуализацию для VM.

Качаем образ VM отсюда: //www.eve-ng.net/index.php/community

Установка EVE-NG

Размер ISO 800Mb, добавляем ISO в DVD-дисковод VM, стартуем VM.

Установка Ubuntu

Убунту она Убунту и есть, никаких отличий от установки оригинала и везде можно жмакать Yes/Enter, кроме:

  • Install EVE VM

Если на Коммутаторе по умолчанию нет настроек, то сеть нормально подхватится автоматом - это оптимальный вариант. После установки Ubuntu будет перезагрузка и потом работает скрипт по установке уже EVE-NG. Всё очень просто и довольно быстро.


Обновление

По факту новые версии EVE-NG Community выходят редко, последняя версия уже была установлена, поэтому на данный момент обновлять ничего не надо:

Установка EVE-NG

Когда через полгода появится новая версия, то обновление стандартное:

apt-get update
apt-get upgrade

Автоматическая установка скриптом, вот такое простое обновление, с этим здорово повезло — всё максимально просто.

11 июня 2018 релиз EVE-NG v2.0.3-92.

Ещё 1 момент: если VM работает штатно, в новой версии нет существенных исправлений, то вобщем-то лучше и не обновляться. Надо понимать, что обновление всегда может нарушить существующую работу VM и уж конечно перед обновлением всегда нужно создавать контрольную точку.


Работа с VM

Первый запуск

Установка EVE-NG

VM загрузилась, на стартовом экране указан её IP и реквизиты для входа - это удобно. Сразу доступен SSH, можно подключаться через Putty. При первом входе отрабатывает скрипт, который позволяет сменить пароль рута, выбрать имя хоста и сетевые настройки - рекомендую всё по умолчанию, всё это неважно и на работу не влияет. После работы скрипта VM ещё раз перезапускается. Если потом захочется запустить скрипт и изменить настройки, то написано как это сделать в FAQ: //eve-ng.net/faq

Подключение к Веб

Забиваем в браузере IP VM, логин/пароль admin/eve, третий параметр пока трогать не надо. Попадаем в рабочую среду - тут можно создавать папки и непосредственно файлы лаб.

Установка EVE-NG

Для лабы достаточно задать имя, сохранить и лаба открывается - эта основная среда для работы. Самый важный пункт тут Add an object - Node, открывается список поддерживаемых железок. Пока все железки выделены серым, то есть недоступны, нужно загрузить образы прошивок для них в VM:

Установка EVE-NG

Единственное что доступно — это очень простой по своим возможностям Virtual PC в самом низу списка.

Загрузка образов

Закидывать образы на машину с помощью WinCSP. Папки для образов:

/opt/unetlab/addons/dynamips - прям в корень
/opt/unetlab/addons/qemu - создать папки, стандартное название образа virtioa.qcow2 или hda.qcow2

Установка EVE-NG

Полный список как должно начинаться название папки для конкретного оборудования можно посмотреть в файле:

/opt/unetlab/html/includes/init.php

Или в документации: //www.eve-ng.net/documentation/images-table

Молчаливый парень с Youtube показывает как заливать и раздаёт образы (в описании к видео):

  • Для Dynamips. Только залить образы;
  • Для QEMU vIOS и vIOS l2. Залить образы и запустить скрипт по настройке прав:
cd /opt/unetlab/wrappers
./unl_wrapper -a fixpermissions

Топик Вконтакте, там можно пошариться, надыбать пароль/логин к FTP и оттуда забрать образы ASA, ASAv, образы Windows-машин, может ещё чего полезное.

Также образ ASAv 9.7.1 можно забрать в 4 уроке NetSkills по ASA: //blog.netskills.ru/2018/05/cisco-asa-admin-4-eve-ng.html

VM перезапускать не надо, добавленные образы сразу будут доступны.

Полный список образов в документации: //www.eve-ng.net/documentation/supported-images

Тут надо сказать, что образы отличные от списка действительно не заработают, но есть исключения. Так ASAv 9.5.2 нормально работает, может глюки проявятся позже, пока ничего такого не обнаружил. Кстати, в HowTo инсталляция ASAv рассматривается именно на примере asav-952-204, почему этот образ исключён из поддерживаемых.. это мелочи, но обращаю внимание.

vIOS L2

Всё рассказанное в статье — рабочее, стараюсь максимально проверять. Однако в процессе работы обнаруживаются нюансы, так при работе выяснилось, что указанный выше образ vIOS L2 15.0 от 05.06.2014 не слишком свежий, хотя в целом работоспособный. Порты не переходят в режим Access, соответственно нельзя включить Port Security. Стал разбираться что же должен уметь последний vIOS L2:

  • Layer-2 forwarding;
  • Switchport;
  • 802.1q trunk, 802.1q vlans;
  • Spanning Tree;
  • Port-Channel (Pagp and Lacp);
  • 802.1x passthrough;
  • Port-ACLs;
  • Dynamic Arp Inspection;
  • DHCP Snooping;
  • IP device tracking;
  • Switched Virtual Interfaces;
  • Layer-3 forwarding over SVIs;
  • Routing protocols.

Что не умеет:

  • Зеркалирование трафика (SPAN);
  • Private Vlan;
  • L3 Port-Channel;
  • QoS.

Забрать можно тут (версия 15.2 от 14.05.2015). Файл нужно переименовать в virtioa.qcow2, положить в папку viosl2.. и запустить скрипт по настройке прав.

Там же лежит более свежий vIOS (15.5 против 15.4 из видео).

Kali Linux

Рано или поздно потребуется Kali Linux, чтобы наводить ужас на железки CISCO. Кому лень делать самому, могут забрать здесь (логин/пароль для входа в VM root/toor). Скрипт настройки прав нужно выполнить.

Если работать с Kali не доводилось, то что тут есть хорошего для сети:

  1. Терминальная утилита macof (пример: macof -n 1000, для генерации 1000 mac-адресов), генерирует mac-адреса для атаки переполнения CAM-таблицы коммутатора. После переполнения CAM-таблицы, коммутатор будет работать как концентратор, рассылая пакет из всех портов, кроме того, через который он поступил. Такая ситуация даёт возможность перехватывать чужие пакеты, что при нормальной работе коммутатора невозможно;
  2. Сниффер dsniff (пример: dsniff -c, для автоматического сбора паролей, передаваемых открытом тестом), привет telnet'у.
  3. Терминальная утилита arpspoof (пример: arpspoof -t IP1 IP2, подменяет ARP-кеш жертв IP1 и IP2), позволяет проводить атаку man in the middle, когда все пакеты между жертвами идут через компьютер атакующего. Необходимо включить пересылку пакетов на интерфейсе: sysctl -w net.ipv4.ip_forward=1;
  4. Многофункциональная утилита Yersinia (запуск yersinia –G ), для сбора информации и атак на 2 уровне: CDP, DTP и так далее.

Примеры работы с Kali Linux представлены исключительно в целях обучения противодействию сетевым атакам.

Для тех, кто хочет разобраться — нужно скачать готовую VM Kali для VMware, распаковать zip-архив, запустить консольную утилиту vmware-vdiskmanager (идёт в комплекте с Workstation Pro):

C:\WINDOWS\system32>cd C:\Program Files (x86)\VMware\VMware Workstation\

C:\Program Files (x86)\VMware\VMware Workstation>vmware-vdiskmanager.exe -r "J:\Kali\Kali-Linux-2018.2-vm-amd64.vmdk" -t 0 "J:\Kali\kalinew.vmdk"
...
Creating disk 'J:\Kali\kalinew.vmdk'
Convert: 100% done.
Virtual disk conversion successful.

Задача получить единый диск для VM. После конвертации, старые части диска *.vmdk нужно удалить, Workstation Pro тоже больше не нужна. Теперь получившуюся папку с файлами нужно закинуть в EVE:

Установка EVE-NG

И запустить конвертацию уже в QEMU (все сборки Linux в EVE имеют название hda.qcow2):

cd /opt/unetlab/addons/qemu/kali
/opt/qemu/bin/qemu-img convert -f vmdk -O qcow2 kalinew.vmdk hda.qcow2

После чего получившийся диск закинуть уже по месту (папка должна обязательно называться /opt/unetlab/addons/quemu/linux..), а исходные файлы удалить. Затем выполнить скрипт настройки прав:

cd /opt/unetlab/wrappers 
./unl_wrapper -a fixpermissions
ACS сервер

Нода ACS сервера жрёт ресурсы и сильно тормозит EVE, на слабых установках лучше её не ставить.

Для полноценной работы с AAA нужен ACS сервер. Со странички проекта: //eve-ng.com/documentation/images-table видим, что версия ACS 5.8.1.4 точно подойдёт, файл должен называться hda.qcow2 и лежать в папке /opt/unetlab/addons/qemu/acs-5814, к примеру.

Вконтакте есть готовый образ, но он без пароля для CLI и без реквизитов.

Инструкция по созданию своего образа: //eveбng.net/documentation/howto-s/119-howto-add-cisco-acs

  • Скачать ACS ISO;
  • Установить VMware Workstation Pro, при запуске выбрать пробную лицензию;
  • Создать машину 2 ядра, 4Gb оперативки, тип Red Hat 6 64-bit, диск 1 файлом и подсунуть ISO;
  • Выбрать тип установки 1:

Установка EVE-NG

  • Дождаться пока отработает и перезагрузится:

Установка EVE-NG

  • На этом моменте выключить машину и закачать файл диска vmdk на EVE, затем конвертнуть:
cd /opt/unetlab/addons/qemu/acs
/opt/qemu/bin/qemu-img convert -f vmdk -O qcow2 acs.vmdk hda.qcow2
  • Перенести готовый диск по месту, кильнуть vmdk и иже с ним и выполнить скрипт настройки прав.

Дальше уже ACS сервер запускается в лабе EVE, настраивается по месту с момента когда машину потушили — setup. Ряд простых настроек, дальше сервер проводит окончательное конфигурирование, перезагрузка и вот можно присоединяться через Веб: HTTPS, реквизиты: ACSAdmin/default. Будет предложена смена пароля:

Установка EVE-NG

После этого попадаем на страницу ввода лицензии:

Установка EVE-NG

И пока лицензия не будет введена, дальше ничего сделать нельзя. Как установить демо-лицензию:

Установка EVE-NG

Ещё важный момент, продукт для лицензирования называется Cisco Secure Access Control System Evaluation:

Установка EVE-NG

Файл лицензии ACS........lic приходит на почту, его нужно подпихнуть через браузер в ACS и готово — 90 дней/50 устройств:

Установка EVE-NG

Работа с образами

Образы залиты, вот теперь по поводу 3 пункта:

Установка EVE-NG

  • Html5 console — консоль каждого устройства открывается в новой вкладке браузера, Copy-Past не работает и вообще неудобно;
  • Native console — более удобная штука, далее работа только с ней, требует установки клиентского пака: //www.eve-ng.net/downloads/windows-client-side-pack

Установка клиентского папка позволяет запускать Wireshark для каждого интерфейса — это круто.

Если для какой-то железки было залито несколько версий образов, то выбрать версию можно при добавлении устройства в лабу:

Установка EVE-NG

Потребление ресурсов

Ограничил VM 3Gb памяти. Накидал простую топологию из 1 ASA, 1 vIOS, 1 vIOS L2, 1 3725 и 3 VPS (настройки для устройств - по умолчанию), запустил:

Установка EVE-NG

Смотрим, пункт меню Nodes:

Для VPC потребление памяти не указано, ну наверное совсем мало, оставшиеся 4 железки — 2 гига, смотрим в самой Ubuntu:

Установка EVE-NG

Free memory is the amount of memory which is currently not used for anything. This number should be small, because memory which is not used is simply wasted.
Available memory is the amount of memory which is available for allocation to a new process or to existing processes.

Доступно памяти 1,4Gb из 3, а 690Mb вообще ничем не занято.

Это было для Hyper-V, проверяем для VMware (топология та же):

Установка EVE-NG

Доступно памяти 1,5Gb из 3, при этом 1Gb ничем не занят. Гипервизоры разные, поэтому есть отличия, если приглядеться.

Вывод: Насколько понимаю, среда EVE-NG выделяет реальной памяти для устройств меньше, чем расчётное значение (но расход памяти всё равно жестокий).

Работа с устройствами

Чтобы открыть консоль, надо щёлкнуть на железке. В Яндекс.Браузере выглядит так:

Установка EVE-NG

Сколько чекбокс Запомнить выбор ни отмечай, не запоминает. Отписал в поддержку, поддержка подтвердила наличие проблемы и обещала исправить в ближайших версиях (24.05.18 прислали письмо, что пофиксили, проверил, теперь всё в норме). Поэтому скачал специально для EVE-NG Chrome, в нём всё нормально и выглядит это так:

Установка EVE-NG

Копипаст, кстати, нормально работает.

Правой кнопкой на устройстве Capture — выбор интерфейса:

Установка EVE-NG

И открывается Wireshark — лепота:

Установка EVE-NG

Что хотел показал/рассказал, удачи в использовании. Материал дополняется по мере поступления новой информации.

Установка EVE-NG: 4 комментария

  1. Спасибо больше за статью она многим поможет в обучении.
    Сам уже настроил лабораторную но несколько дней потратил.

  2. Прочёл вашу статью, статья познавательная.Спасибо.
    Приобрел сервер по вами предложенными позициям.
    Подскажите совместимы ли ASRock B250M-HDV и CPU Xeon E3-1245v6 .

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *