среда, 4 июля 2018 г.

Установка эмулятора сети EVE-NG

  Понадобилось мне установить эмулятор компьютерной сети EVE-NG (The Emulated Virtual Environment)
  Эта статья описывает установку и первичную настройку EVE-NG. Условия следующие:
  1. DHCP нет и все настройки IP надо вбивать вручную
  2. В интернет выходим через прокси.
  3. При первом входе в систему нам понадобится интернет. Система что-то активно будет выкачивать 
  Должен заметить, что у EVE-NG очень нехилые системные требования. Во всех примерах люди брали минимум 4 ядра и 8 ГБ ОЗУ. Я так понял, что связано это с тем, что EVE для каждого сетевого устройства пытается запустить свою виртуальную машину, что затратно. Например я с ходу дал ей 8 ядер процессора и 16 ГБ ОЗУ.
  EVE поставляется в виде готового Ubuntu-дистрибутива. Можно установить EVE на существующую систему, но с этим я не разбирался.
  На странице загрузки EVE-NG я скачал iso-образ, и запустился с него.

Установка


Скрин 1. Язык установщика
  На первом экране выбираем язык установщика. Я оставил по умолчанию.

Скрин 2. Запуск установки eve-ng
  На втором экране выбрал "Install Eve VM".

Скрин 3. Еще язык установщика
  На третьем еще один выбор языка. Так и не понял чем он отличается от первого

Скрин 4. Расположение выбрать "Other"
  Эти три окна позволяют выбрать месторасположение. Я устанавливал расположение в Украине. На четвертом скрине выбрал "Other".

Скрин 5. Расположение выбрать "Europe"
  На пятом - "Europe".

Скрин 6. Расположение выбрать "Ukraine"
  На шестом - "Ukraine"

Скрин 7. Локаль по умолчанию
  На седьмом скрине выбрал локаль системы. Я оставил по умолчанию.
  Далее инсталятор пытается автоматически получить все настройки IP протокола. В той сети отсутствовал DHCP-сервер, поэтому попытка закончилась неудачей. Мне прийдется все параметры IP вводить вручную.

Скрин 8. Не получает DHCP ответ
  На 8-м скрине просто нажимаем "Continue". Далее.

Скрин 9. Сконфигурировать сеть вручную
  На 9-м выбрал сконфигурировать сеть вручную (Configure network manually).

Скрин 10. Ввод IP адреса
  На 10-м скрине ввел IPv4 адрес.

Скрин 11. Ввод маски сети
  Скрин 11. Заводится IP маска подсети

Скрин 12. Ввод шлюза
  На скрине 12 вводим IPv4-адрес шлюза

Скрин 13. Указать DNS-сервер
  На 13-м указываем IPv4 адрес DNS-сервера

Скрин 14. Указать имя хоста
  Скрин 14 дает возможности выбора имени хоста с EVE

Скрин 15. Указать домен DNS
На скрине 15 вводим DNS-суффикс хоста.

Скрин 16. Указать прокси
  На 16-м указать прокси, если нужен. Иначе оставить пустым. Прокси надо указывать в формате принятом в Линукс-системах. Например "http://proxy.domain.com:3128/".

Скрин 17. Установка обновлений
  На 17-м скрине указываем что делать с обновлениями. Я выбрал устанавливать обновления автоматически (Install security updates automatically).

Скрин 18. Установка завершена
  Скрин 18 завершает первый этап установки EVE. После нажатия кнопки "Continue" система будет перегружена.

Первый старт

  Система перегрузилась. При включении система начала активно устанавливать из интернета какие-то пакеты. Продолжалось это минут 20. Потом при первом заходе пользователя продолжились вопросы о настройке, причем те же что на этапе установки.
  При первом старте системы вводим имя пользователя "root" и пароль "eve".

Скрин 19. Изменение пароля пользователя root
  На первом окне (скрин 19) нам попросят поменять пароль пользователя root. Пароль надо будет вводить дважды. Второе окно точно такое-же. и я его здесь не привел.

Скрин 20. Имя хоста
  На 20-м опять вводим имя хоста.
Скрин 21. DNS домен
  Скрин 21. Настроим домен нашего компьютера.

Скрин 22. IP адрес статический.
  Скрин 21. Как будем получать IP адрес. Повторюсь, что DHCP у меня нет, IP будет статический.

Скрин 23. Ввод IP адреса
  Скрин 23. Вручную указываем адрес IPv4

Скрин 24. Ввод маски подсети

Скрин 24 показывает ввод IPv4 маски нашей подсети.

Скрин 25. Шлюз по умолчанию
  На 25-м скрине IPv4 адрес шлюза по умолчанию.

Скрин 26. IP адрес DNS-сервера
  На скрине 26 вводим IPv4 адрес первичного DNS сервера

Скрин 27. IP адрес вторичного DNS сервера
Скрин 27. IPv4 адрес вторичного DNS.

Скрин 28 Адрес NTP-сервера
  Скрин 28 просит ввести DNS-имя или IP сервера синхронизации времени. Тут я немного забегу вперед и скажу, что когда я после окончания установки залез в настройки NTP эти данные почему-то не сохранились и пришлось вводить их вручную.

Скрин 29. Тип интернет-соединения
  Скрин 29 просит указать тип соединения в интернет. Если прямое соединение, то указать "Direct connection", если прокси без пароля, то "Anonymous proxy". Прокси требующий имя и пароль - "Authenticated proxy".
  Мне нужен анонимус прокси.

Скрин 30. Прокси сервер
  На 30-м скрине указываем наш прокси в  формате DNS_Имя:порт. Я указал "proxy.domain.com:3128". Хотя возможно это не правильно, ниже объясню почему.
  Если теперь в браузере залезть на IP адрес нашего eve-ng сервера, то получим приглашение ввести имя и пароль. Сразу после установки доступно имя "admin" и пароль "eve". Там можно уже работать.

Выловленные ошибки инсталяции

  Установка на этом закончилась. Но если сейчас вы попытаетесь добавить в сеть устройства, то обнаружите только некий Virtual PC Simulator. Как добавить в EVE-NG роутеры, коммутаторы я напишу отдельную статью. Эта и так получилась большой.
  Сейчас хочу разобрать ошибки обнаружившиеся после установки.

Ошибка 1 с NTP сервером

  Я уже упоминал на скрине 28 ошибку с настройкой сервера синхронизации времени. Если для вас точное время важно, то сами в /etc/ntp.conf добавьте ваш ntp-сервер.

Ошибка 2 с прокси

  Вторая ошибка связана с тем. что я имел доступ в интернет через прокси. И когда попытался установить через интернет пакет, то получил ошибку:
root@eve-ng:~# apt-get update
E: Syntax error /etc/apt/apt.conf.d/00proxy:4: Extra junk at end of file
root@eve-ng:~#
  Понятно проблема, в файле /etc/apt/apt.conf.d/00proxy. Его содержимое было таким:
Acquire::http::Proxy http://proxy.domain.com:3128/
Acquire::https::Proxy http://proxy.domain.com:3128/
Acquire::ftp::Proxy http://proxy.domain.com:3128/
  Для исправления ситуации надо в каждой строке прокси взять в двойные кавычки и в конце строки добавить символ точки с запятой.
  Правильное содержимое
Acquire::http::Proxy "http://proxy.domain.com:3128/";
Acquire::https::Proxy "http://proxy.domain.com:3128/";
Acquire::ftp::Proxy "http://proxy.domain.com:3128/";