news
Новый дата-центр TOR3 в Канаде
VB
24 октября 2022
Обновлено 24 октября 2022

Установка балансировщика HAProxy на PfSense

VPS

Что такое PfSense

PfSense — мощный программный комплекс, в основе которого лежит FreeBSD. Обычно его используют в качестве шлюза, брандмауэра, узла для перенаправления трафика, прокси и т.д. Несмотря на то, что «под капотом» установлена FreeBSD​, почти для всех операций достаточно браузера. Эта вот простота в сочетании с мощностью и возможностями кастомизации путем «доустановки» плагинов - та самая «киллер-фича» PfSense, благодаря которой он до сих пор популярен.

Что такое HAProxy

HAProxy — достаточно простой балансировщик нагрузки с открытым исходным кодом. Первоначально его можно было установить только на выделенный сервер под управлением Linux, но теперь HAProxy можно установить на виртуальные машины, большое количество маршрутизаторов бизнес-уровня, и т.д. В этой статье я опишу, как установить HAProxy на программный комплекс PfSense.

Подготовка инфраструктуры

Чтобы показать, как работает HAProxy, вам нужно подготовить как минимум три сервера: два в качестве серверов, обеспечивающих работу служб вашего проекта и «раздающих» контент, третий в качестве брандмауэра PfSense и балансировщика HAProxy. Последовательность действий будет такой:

  • Войдите в личный кабинет ServerSpace и создайте изолированную локальную сеть;

pic1

pic2

  • Разверните три сервера, один из них под PfSense, другие под ОС, соответствующую требованиям вашего проекта. Важный момент - все три сервера должны находиться в одном датацентре. По окончании развертывания вы должны увидеть в списке серверов нечто похожее;

pic3

  • Выключите все три сервера и подключите их к только что созданной «приватной» сети;

pic4 pic5

  • Залогиньтесь в веб-интерфейс сервера PfSense (учетные данные можно увидеть на вкладке Status сервера в личном кабинете), затем перейдите на страницу Interfaces > Assignments и назначьте интерфейс LAN на свободный сетевой порт;

pic6

  • Перейдите на страницу Interfaces > LAN и выполните настройки в соответствии с информацией о сетевом соединении сервера в личном кабинете;

pic7

  • Поскольку порты 80 и 443 впоследствии будут использоваться для обслуживания клиентов проекта, я изменю порт веб-интерфейса PfSense. Следует перейти в настройки брандмауэра PfSense и создать правило, разрешающее пропускать трафик на выбранный неиспользуемый порт, затем назначить этот порт на странице System > Advanced в качестве порта веб-интерфейса;

pic10 pic11

  • Откройте интерфейс PfSense уже на «новом» порту, снова перейдите к настройкам брандмауэра и создайте правило, разрешающее весь трафик во «внутренней» сети;

pic12

  • На этом подготовительные работы в том, что касается PfSense, завершены, теперь нужно подключить будущие серверы контента к нашей локальной сети. Чтобы сделать это, можно добавить новый интерфейс в файлы конфигурации сети вручную, однако, поскольку на серверах еще нет контента, быстрее просто переустановить ОС сервера через личный кабинет уже после подключения к локальной сети. Результат будет тот же, "приватные" IP всех трех серверов будут доступны;

pic13 pic14

Установка HAProxy

Чтобы установить и настроить HAProxy на сервере PfSense, нужно выполнить следующие действия:

  • Откройте веб-интерфейс сервера PfSense, перейдите на страницу System > Package Manager > Available Packages и установите последнюю доступную версию HAProxy;

pic15

  • Теперь создадим бэкенд. Перейдите на страницу Services > HAProxy > Backend и укажите в соответствующих полях «внутренние» IP-адреса ваших серверов контента и прослушиваемые сервисами порты;

pic17 pic18 pic19

  • Создайте фронтенд балансировщика. Для этого перейдите на страницу Services > HAProxy > Frontend, установите WAN-адрес в качестве «целевого» IP и настройте «транзит» трафика на ранее созданный бэкенд;

pic21 pic22

  • На странице Services > HAProxy > Settings, установите лимит на количество одновременных подключений и можете включать сервис;

pic23

Размещение файлов проекта и проверка работы HAProxy

Не буду дублировать информацию, просто дам ссылку на эту статью. Разверните веб-сайт, как описано в разделе «Развертывание веб-сайта», для проверки работы HAProxy выполните шаги, указанные в разделе «Проверка работы балансера». Ожидается похожий результат.

Максимизация безопасности

Для повышения безопасности вы можете полностью блокировать любой трафик к вашим контент-серверам через «публичный» WAN-интерфейс, за исключением трафика, исходящего с вашего собственного IP-адреса. Вернитесь обратно в личный кабинет ServerSpace, откройте настройки каждого контент-сервера и добавьте два сетевых правила - одно должно разрешать трафик с вашего собственного IP-адреса, другое - запрещать сетевую активность с любых других адресов. Внимание, чтобы не потерять доступ к серверам, следует ставить «разрешающие» правила перед «запрещающими».

Выводы

Прочитав этот материал, вы узнали, что такое PfSense и теперь можете установить на нем балансировщик HAProxy, а также повысить безопасность данных вашего проекта.

Оценка:
5 из 5
Аverage rating : 5
Оценок: 1
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300