Установка маршрутизатора pfSense в Hyper-V
В прошлых статьях мы рассматривали эмуляцию ЛВС с помощью GNS3. Он предоставляет удобные и наглядные инструменты для управления текущей конфигурацией виртуальной сети, но при этом требует значительных ресурсов для запуска виртуальных устройств.
Сегодня мы рассмотрим установку pfSense – программного межсетевого экрана и маршрутизатора на виртуальную машину Hyper-V для использования в качестве пограничного маршрутизатора между виртуальной частной сетью и физической . В последующем мы будем использовать полученную виртуальную сеть для развертывания домена Active Directory с DHCP-сервером.
Почему не Mikrotik
Раньше я всегда использовал Mikrotik для экспериментов с виртуальными сетями, но с тут всегда существовали определенные ограничения, приходилось заморачиваться с получением бесплатных лицензий. С версии 7 микротик стало сложнее ставить в виртуальные машины, так что я решил найти бесплатное решение, которое будучи один раз настроенным, можно клонировать и использовать множество раз!
Схема сети
Давайте определимся что мы хотим получить - нам нужна виртуальная локальная сеть которая не будет иметь доступа к внешней локальной сети, но при этом будет иметь доступ к сети Интернет.
Это необходимо потому что в нашей локальной сети уже работает DHCP-сервер, а для нормальной работы доменной сети Active Directory необходим DHCP-сервер, если в сети присутствуют два таких сервера, это неизбежно приводит к разнообразным конфликтам и глюкам в работе ЛВС.
Чтобы этого избежать мы настроим внутреннюю сеть для виртуальных машин Active Directory, а также установим pfSense в качестве маршрутизатора которая будет смотреть и в нашу внутреннюю сеть локальную сеть для внутренней сети маршрутизатор будет являться шлюзом по умолчанию. На внешнем интерфейсе нас будет настроен DHCP-клиент,а в межсетевом экране мы пропишем SRCNAT - masquerading, обеспечивая доступ к сети Интернет.
В результате у нас получается схема:
Настройка Hyper-V
Добавим частную сеть и внешнюю сеть для LAN.
В правой панели Диспетчера Hyper-V выберем Диспетчер виртуальных коммутаторов.
Выберем Частная и нажмем Создать виртуальный коммутатор:
Введем название VLAN 1 и нажмем Ок
Слева на самом верху выберем Создать виртуальный сетевой к...
И на этот раз выберем Внешняя:
Нажмем Создать виртуальный коммутатор
Назовем LAN и выберем сетевой адаптер нашего ПК через который мы подключены к сети Интернет. Нажмем ОК.
У нас получится:
Нажмем ОК для внесения изменений в настройки.
Загрузка установочного образа
Образ с текущей версией вы можете скачать по ссылке:
https://www.pfsense.org/download/
Загружать нужно – Community Edition
На момент написания статьи это версия - 2.7.2
Выбираем архитектуру – AMD64(64-bit)
Установщик - DVD Image (ISO) installer
Зеркало – любое
Нажимаем Download и ждем окончания загрузки.
Образ упакован с помощью gzip
Чтобы распаковать скачайте и установите 7zip - https://www.7-zip.org/
Создание виртуальной машины
После распаковки образа создаём виртуальную машину.
Назовем Router 1. Я храню диски виртуальных машин на отдельной диске:
Нажмем Далее и выставим Поколение 2:
Оставим 1024 и нажмем Далее:
В подключение выберем LAN:
Уменьшим размер диска до 20 и нажмем Далее:
Выберем Установить операционную систему из файла загрузочного образа, выберем на диске файл pfSense-CE-2.7.2-RELEASE-amd64.iso и нажмем Далее:
Нажмем Готово
Выберем виртуальную машину из списка, щелкнем на нем правой кнопкой мыши и выберем меню параметры:
Перейдем на вкладку Безопасность и снимем галочку Включить безопасную загрузку:
Выберем пункт Установка оборудования и пункт Сетевой адаптер и нажмите Добавить:
Выберем VLAN 1 и нажмем ОК:
Откроем консоль виртуальной машины и нажмем Пуск:
Начнется загрузка маршрутизатора. Отобразится окно:
Нажмем Enter:
Нажмем Enter:
Выберем Auto UFS и нажмем Enter:
Нажмем Enter:
Нажмем Enter:
Нажмем Enter:
Нажмем Enter.
Будет произведена установка системы, на следующем экране нажмем Enter, система перезагрузиться.
После перезагрузки настроим сетевые адаптеры:
Ответим n и Enter
Введем hn0 и Enter
Введем hn1 и Enter
Нажмем y и Enter.
Будет произведена настройка необходимых служб, их запуск и открыто главное меню pfSense:
Обратите внимание, адаптеру LAN был автоматически присвоен адрес 192.168.1.1.
В pfSense по умолчанию на интерфейсе LAN работает DHCP-сервер и настроен адрес 192.168.1.1. Так как у нас будет свой DHCP-сервер позже мы его отключим и настроим нужный нам адрес.
Уже на этом этапе вы можете использовать pfSense как обычный маршрутизатор для частной сети, например, если мы введем Windows 10 в частную сеть и выставим для сетевого адаптера получение адреса по DHCP, то у нас сразу появится доступ к сети Интернет:
Обратите внимание - DNS-суффикс для поиска был автоматически выставлен как home.arpa!
Временное отключение межсетевого экрана pfSense
Сейчас мы с вами сделаем то, что я ни в коем случае не рекомендую делать в реально работающей сети, а именно отключим межсетевой экран pfSense это нужно нам для того чтобы получить доступ к администрированию на интерфейсе WAN.
Перед тем как продолжить, на всякий случай, перезагрузим pfSense - введем 5 и нажмем Enter.
Как в любом нормальном маршрутизаторе доступ к администрированию устройства запрещен c интерфейса wan и единственный способ получить доступ к веб-интерфейсу - подключаться из сети LAN. Нас это не устраивает, поэтому мы просто временно отключим межсетевой экран.
Откроем консоль нашей виртуальной машины и нажмем 8 и Enter:
Откроется консоль bash.
Введем команду:
pfctl -d
Мы отключили межсетевой экран pfSense.
Уже сейчас должен появиться пинг до нашего маршрутизатора!
Обратите внимание, что отключение таким способом действует только до перезагрузки pfSense!
Включаем межсетевой экран pfSense
Для включения межсетевого экрана достаточно ввести
pfctl -e
Навсегда отключаем межсетевой экран на интерфейсе WAN в pfSense
Обратите внимание! Ни в коем случае, никогда, не включайте полный доступ к устройству на WAN интерфейсе в реальной сети! Это влечет за собой серьезные риски безопасности, а хакеры и разнообразные боты будут очень рады если вы это сделаете!
Открываем Shell из главного меню и вводим:
pfSsh.php playback enableallowallwan
Adding allow all rule...
Turning off block private networks (if on)...
Turning off block bogon networks (if on)...
Reloading the filter configuration...
Теперь даже после перезагрузки устройства вас будет полный доступ к устройству с интерфейса WAN.
Включение SSHD в pfSense
Прежде чем подключиться к маршрутизатору, нужно на нем включить службу sshd
Для этого выйдем из консоли bash:
exit
Откроется главное меню.
Введем 14 и Enter, далее y и Enter.
Служба будет настроена и запущена.
Подключение к pfSense по SSH
Теперь, когда мы отключили межсетевой экран мы можем подключится к устройству по SSH.
Для подключения воспользуемся putty.
Скачать утилиту вы можете с сайта
Запустим putty и введем адрес нашего устройства - 192.168.1.43
Теперь вы сможете зайти на устройство.
Логин: admin
Пароль: pfsense
Входим в web-интерфейс
В pfSense есть встроенный веб-интерфейс, для управления устройством из браузера.
Просто откройте адрес:
Логин: admin
Пароль: pfsense
Я не буду рассматривать работу с устройством через веб-интерфейс, все что нужны мы будем производить в консоли.
Настройка сетевых адаптеров в pfSense
При подключении к частной сети наш маршрутизатор автоматически настроил ip-адрес интерфейса LAN на 192.168.1.1.
Давайте вернемся к схеме нашей будущей сети:
Согласно её, адрес шлюза по умолчанию нашей частной сети VLAN 1 должен быть:
172.16.0.254
Давайте пропишем его для интерфейса hn1.
В главном меню pfSense нажмем 2 и Enter:
Available interfaces:
1 - WAN (hn0 - dhcp, dhcp6)
2 - LAN (hn1 - static)
Enter the number of the interface you wish to configure:
Нажмем 2 и Enter:
Enter the number of the interface you wish to configure: 2
Configure IPv4 address LAN interface via DHCP? (y/n)
Нажмем n и Enter:
Enter the new LAN IPv4 address. Press <ENTER> for none:
>
Введем
172.16.0.254
И нажмем Enter
Subnet masks are entered as bit counts (as in CIDR notation) in pfSense.
e.g. 255.255.255.0 = 24
255.255.0.0 = 16
255.0.0.0 = 8
Enter the new LAN IPv4 subnet bit count (1 to 32):
>
Введем 24 и Enter
For a WAN, enter the new LAN IPv4 upstream gateway address.
For a LAN, press <ENTER> for none:
>
Нажмем Enter
Configure IPv6 address LAN interface via DHCP6? (y/n)
Нажмем n и Enter:
Enter the new LAN IPv6 address. Press <ENTER> for none:
>
Нажмем Enter
Отключение DHCP-сервера на интерфейсе LAN в pfSense
На следующем шаге нам нужно будет определиться нужен ли нам встроенный в pfSense DHCP-сервер. В нашем случае он не нужен и мы нажмем n.
Do you want to enable the DHCP server on LAN? (y/n)
Нажмем n и Enter:
Disabling IPv4 DHCPD...
Disabling IPv6 DHCPD...
Отключение https для веб-интерфейса в pfSense
Вы можете отключить обязательное использование https для веб-интерфейса pfSense, это особенно полезно во время первоначальной настройки или в тестовых или виртуальных средах как наша.
Do you want to revert to HTTP as the webConfigurator protocol? (y/n)
Так как у нас всё равно тестовая сеть, чтобы не мучиться с браузерами отключим SSL для веб-интерфейса
Нажмем y и Enter:
Please wait while the changes are saved to LAN...
Reloading filter...
Если связь у вас пропадет, просто перезапустите сессию!
После перезахода в putty, адрес интерфейса LAN поменяется:
Hyper-V Virtual Machine - Netgate Device ID: fa0b573c7cd11544a1fe
*** Welcome to pfSense 2.7.2-RELEASE (amd64) on pfSense ***
WAN (wan) -> hn0 -> v4/DHCP4: 192.168.1.43/24
LAN (lan) -> hn1 -> v4: 172.16.0.254/24
0) Logout (SSH only) 9) pfTop
1) Assign Interfaces 10) Filter Logs
2) Set interface(s) IP address 11) Restart webConfigurator
3) Reset webConfigurator password 12) PHP shell + pfSense tools
4) Reset to factory defaults 13) Update from console
5) Reboot system 14) Disable Secure Shell (sshd)
6) Halt system 15) Restore recent configuration
7) Ping host 16) Restart PHP-FPM
8) Shell
Enter an option:
Обязательно перезагрузим pfSense чтобы все настройки применились корректно!
Настройка NAT (masquerade) на интерфейсе LAN в pfSense
В pfSense по умолчанию используется автоматическая функция настройки NAT (masquerade) для интерфейса LAN. Поэтому нам не придется вообще ничего настраивать.
Проверяем доступ к сети интернет с интерфейса LAN в pfSense
У меня уже установлена Windows 10 в Hyper-V.
Изменим настройки виртуальной машины, откроем её свойства и в разделе Сетевой адаптер поменяем LAN на VLAN 1:
Настроим сеть в Windows 10. Не забывайте отключать IPv6, чтобы в будущем избежать непонятных ошибок и глюков:
В pfSense встроен свой DNS-сервер, так что мы указываем его адрес в качестве DNS-сервера.
Проверим доступность Интернета:
Пинг и трассировка работают.
Сайты загружаются и скорость доступа как на основном ПК :
Заключение
Сегодня мы рассмотрели установку и настройку программного межсетевого экрана pfSense для использования в качестве пограничного маршрутизатора между частной сетью Hyper-V и физической локальность ЛВС.
Создали виртуальную частную сеть в Hyper-V.
Загрузили образ с файлом ISO с сайта разработчика.
Установили pfSense в виртуальной машине Hyper-V.
Рассмотрели временный способ отключения и включения межсетевого экрана в pfSense.
Рассмотрели способ навсегда отключить межсетевой экран на интерфейсе WAN.
Подключились к pfSense через SSH
Настроили сеть на интерфейсе LAN
Отключили DHCP-сервер на интерфейсе LAN
Отключили HTTPS для доступа к веб-интерфейса с LAN
Настроили сеть на виртуальной машине Windows 10 расположенной в частной сети за интерфейсом LAN.
Проверили пинг и трассировку до ya.ru
Проверили доступность сети Интернет из браузера и скорость подключения с помощью сервиса яндекса.
Добавить комментарий