'
Симбирцев Е.А., Галяутдинов Д.А.
НАСТРОЙКА И ТЕСТИРОВАНИЕ ПРОТОКОЛА VRRP. ВОПРОСЫ БЕЗОПАСНОСТИ *
Аннотация:
данная статья посвящена настройке и тестированию протокола VRRP, используемого для обеспечения отказоустойчивости маршрутизаторов. Будут рассмотрены пошаговая инструкция по конфигурации VRRP на примере Keepalived, проведено тестирование функциональности протокола, а также ключевые аспекты безопасности.
Ключевые слова:
протокол VRRP, настройка, тестирование, отказоустойчивость
ВВЕДЕНИЕ.В современных сетевых инфраструктурах отказоустойчивость является ключевым требованием для обеспечения бесперебойной работы критически важных сервисов. Одним из эффективных решений для создания резервирования маршрутизаторов является протокол VRRP (Virtual Router Redustancy Protocol), который позволяет автоматически перенаправлять трафик на резервный узел при отказе основного.VRRP является стандартным и широко используемым протоколом для этой задачи, так как он обеспечивает:Высокую доступность: позволяет автоматически перенаправлять трафик на резервный маршрутизатор при сбое основного (Master).Простоту настройки: относительно легко настраивается, особенно с использованием инструментов вроде keepalived.Совместимость: VRRP – это стандартизированный протокол (RFC 3768, обновлен в RFC 5798), поддерживаемый множеством сетевых устройств и программного обеспечения, включая ALT Linux.Целью исследования является изучение принципа работы протокола VRRP, настройка Master и Backup-роутеров, проверка корректной работы переключения виртуального IP-адреса при сбоях системы, а также рассмотрение вопросов безопасности при работе с VRRP.Объектом исследования является протокол VRRP и его реализация в Keepalived.Предметом исследования выступают настройка протокола и тестирование отказоустойчивости сети.ЛИТЕРАТУРНЫЙ ОБЗОР.Описание протокола VVRP.VRRP (Virtual Router Redundancy Protocol) – это сетевой протокол, который повышает надёжность работы шлюза по умолчанию в локальной сети. Он позволяет нескольким маршрутизаторам объединиться в один единый виртуальный маршрутизатор с общим IP-адресом. Этот адрес и будет выполнять роль основного шлюза для подключённых устройств, а также обеспечивать автоматическое переключение на один из резервных маршрутизаторов в случае отказа основного.В протоколе VRRP используется три ключевых термина:a. Основной маршрутизатор (Master): активный роутер, который обрабатывает и передаёт пакеты виртуальной группе маршрутизаторов,b. Резервный маршрутизатор (Backup): роутер, которые отслеживает состояние Master. Если Master перестаёт отвечать, один из Backup-роутеров берёт на себя его роль, что в свою очередь не даёт системе простаивать.c. Virtual IP (VIP): «плавающий» IP-адрес, который используется клиентами в качестве основного шлюза.Таблица 1. Параметры настройки протокола в Keepalived.Настройка VRRP в Keepalived.В рамках данной статьи будет производиться настройка протокола VRRP версии 2 на примере keepalived версии 2.2.8. В качестве ОС будет использоваться ОС «Альт Рабочая станция» 10.4.Данный сервис не только помогает устранить простой системы, но и содержит вспомогательные механизмы мониторинга, что делает его универсальным инструментом для построения высоко доступных сетевых конфигураций.1. Проведем пред настройку системы для дальнейшей работы:a. В конфигурационном файле интерфейса /etc/net/ifaces/<интерфейс>/options необходимо указать статические настройки сети.Таблица 2. Настройки конфигураций интерфейсы.b. На Master и Backup роутерах зададим статические IP в одной подсети соответственно:ip addr add 192.168.1.1/24 dev <интерфейс>ip addr add 192.168.1.2/24 dev <интерфейс>c. Клиенту необходимо назначить IP-адрес в той же подсети, а также указать виртуальный IP-адрес в качестве шлюза:ip addr add 192.168.1.10/24 dev <интерфейс>ip route add default via 192.168.1.1002. Для работы с VRRP в Linux-системах используется демон keepalived:apt-get updateapt-get install keepalived.service3. После установки всех необходимых пакетов переходим в конфигурационный файл /etc/keepalived/keepalived.conf для настройки VRRP.Базовая конфигурация VRRP обеспечивает отказоустойчивость, но уязвима к атакам, поэтому защищённая версия, которая добавляет аутентификацию и фильтрацию пакетов в последующей главе, предотвращает подмену роутеров и DoS-атаки.Таблица 3. Настройки конфигураций для Master-роутера.Таблица 4. Настройки конфигураций для Backup-роутера.4. После настройки конфигураций необходимо запустить демон Keepalived на обоих серверах:systemctl enable --now keepalived.service5. Убедимся в доступности виртуального адреса с машины клиента:ping 192.168.1.1006. Система настроена, можно переходить к тестированию.Тестирование отказоустойчивости1. Проверим текущее состояние VRRP на Master:ip -br -c a show <интерфейс>Убеждаемся, что на нем стоит виртуальный IP, на Backup должен быть только физический IP.2. Перейдем к проверке работоспособности настроенного протокола.Шаг 1: останавливаем сервис keepalived на Master.Шаг 2: проверяем, что виртуальный IP перешел на Backup.Шаг 3: проверяем, что связь клиента и VIP не прервалась. Пинг должен продолжать идти, но уже через Backup-роутер.Примечание: при ручной остановке keepalived на Master допустимо 2-3 потерянных пакета (на время переключения). Возврат Master в работу происходит без потерь, так как включен nopreempt на Backup-роутере.Шаг 4: возвращаем Master-роутер в работу, через 60 секунд «плавающий» адрес должен вернуться.3. Проведем повторное тестирование, включив отслеживание логов на Backup в реальном времени.Рисунок 1. Отслеживание работы VRRP протокола.Анализ поведения сети при переключениях.1. Нормальное поведение (Master активен).Рисунок 2. Master активен.Поскольку Master (192.168.1.1) имеет более высокий приоритет (priority 100), Backup (priority 90) остается в состоянии BACKUP STATE.2. Переход Backup-роутера в состояние Master (при падении Master).Рисунок 3. Падение Master.Master перестал отправлять сообщения, так как keepalived был остановлен,Backup обнаружил таймаут получения сообщений от Master (Receive advertisement timeout) и перешёл в состояние Master, назначив себе виртуальный IP (192.168.1.100),Backup рассылает Gratuitous ARP, уведомляя сеть о смене MAC-адреса на «плавающем» адресе.3. Возвращение Master в работу (обратное переключение).Рисунок 4. Переключение на Master.Master снова появился в сети и начал отправлять сообщения,Поскольку приоритет Master (100) выше Backup (90), Backup возвращается в состояние BACKUP STATE,Виртуальный IP вновь переходит на Master.Исходя из просмотренных логов, можно сделать вывод, что VRRP работает корректно. При падении Master Backup успешно берет на себя виртуальный IP-адрес. При восстановлении работоспособности Master VIP успешно возвращается обратно.Безопасность протокола VRRP.Не менее важной составляющей корректной настройки VRRP является обеспечение безопасности сети, поскольку некачественная настройка конфигурации может привести к ряду уязвимостей.Во-первых, необходимо ограничить доступ к передаваемому трафику. Для этого в протоколе предусмотрены всего два вида аутентификации (auth_type):1. PASS: в данном случае пароль передаётся в открытом виде, что делает его уязвимым к перехвату,2. AH: более безопасный и рекомендуемый вариант, поскольку пароль передаётся в виде хэша.Во-вторых, важно настраивать систему в пределах одной локальной сети с использование VLAN, а также добавить фильтрацию пакетов. Это позволит предотвратить перехват трафика и утечку информации о конфигурации сети.Кроме того, если злоумышленник сможет получить доступ к подсети и узнает идентификатор VRRP и VIP, он может отправлять пакеты с более высоким приоритетом, чем у текущего маршрутизатора. Это в свою очередь обеспечит ему доступ ко всем передаваемым данным и возможность вызвать помехи в сети.Исходя из перечисленного, можно сказать, что VRRP сам по себе не гарантирует полной безопасности. Для обеспечения дополнительной защиты требуется фильтрация пакетов VRRP, использование надёжной аутентификации, ограничение доступа к используемому оборудованию, а также регулярный мониторинг происходящих событий.Проведение атаки на базовый протокол VRRP.Основная цель атаки на VRRP – захват роли Master маршрутизатора злоумышленником.Атака заключается в отправке поддельных VRRP-пакетов с высоким приоритетом, чтобы стать Master и перенаправить трафик через атакующий узел (например, для перехвата данных или DoS).1. С помощью программы Wireshark попробуем отследить интерфейс, через который посылаются пакеты, и перехватить данные.Рисунок 5. Просмотр отправляемых пакетов.2. Проанализировав полученные пакеты, можно с легкостью узнать необходимые параметры для отправки поддельных VRRP-пакетов с более высоким приоритетом.Таблица 5. Конфигурация базового протокола в Wireshark.3. С помощью Python-скрипта отправим поддельные пакеты для получения доступа к данным и посмотрим, как будет идти трафик в WiresharkРисунок 6. Результат выполнения атаки.На основе рис. 7 можно сделать вывод, что базовая настройка протокола VRRP никак не защищает отправляемые пакеты, в результате чего злоумышленник может очень просто узнать параметры конфигурации протокола и перехватить роль Master’а.Проведение атаки на базовый протокол VRRP.1. Произведем защищённую настройку конфигураций согласно таблицам 3 и 4, указав метод аутентификации PASS.2. Также запустим Wireshark с целью добычи необходимых параметров для проведения атаки.Рисунок 7. Просмотр отправляемых пакетов.Таблица 6. Конфигурация базового протокола в Wireshark.На основе полученных пакетов видно, что в этот раз протокол использует аутентификацию для общения между маршрутизаторами, но пароль при этом передается в открытом виде, что так же с легкостью позволяет злоумышленнику произвести атаку.3. Перепишем скрипт, ориентируясь на то, что протокол использует аутентификацию типа PASS, и произведём атаку.Рисунок 8. Результат выполнения атаки.Итак, добавление простой аутентификации не спасает от перехвата трафика, поскольку данные передаются в открытом виде, в том числе и пароль.4. Ограничим доступ к VRRP-пакетам только от доверенных IP-адресов:a) iptables -A INPUT -p vrrp -s 192.168.1.1 -j ACCEPTiptables -A INPUT -p vrrp -s 192.168.1.2 -j ACCEPTПримечание: позволяет Master и Backup-роутеру отправлять VRRP-пакеты.b) iptables -A INPUT -p vrrp -j DROPПримечание: блокирует все VRRP-пакеты, которые не исходят с IP-адресов 192.168.1.1 или 192.168.1.2, предотвращая поддельные VRRP-пакеты от других источников (например, в нашем случае от атакующей машины с IP 192.168.1.99)5. Переключим метод аутентификации на AH и проведем повторную атаку.Рисунок 9. Результат выполнения атаки с включенной фильтрацией.Добавив более безопасный метод аутентификации AH, который передаёт пароль хешированном виде, можно увидеть, что пароль просто так из тела пакета уже не узнать. Несмотря на то, что в Wireshark видны поддельные пакеты, которые отправляет злоумышленник, протокол работает стабильно, блокируя нежелательные пакеты и сохраняя роль Master’а на доверенных адресах. Разница в длине (78 и 54 байта) помогает выявлять поддельные пакеты.Таблица 7. Результат работы iptables.ЗАКЛЮЧЕНИЕ.Как было сказано ранее, Virtual Router Redustancy Protocol позволяет объединить несколько маршрутизаторов в один виртуальный маршрутизатор, где один из них становится активным, а остальные резервными, что делает систему действительно надёжной. Корректная конфигурация протокола в сочетании с тщательным тестированием способствует формированию устойчивой к сбоям сети.Кроме того, соблюдение описанных в последней части статьи рекомендаций поможет защитить сеть от потенциальных угроз, связанных с использованием протокола VRRP. Регулярная проверка конфигураций, постоянный мониторинг работы и периодические аудиты позволяют достичь две цели: обеспечить как максимальную доступность сети, так и её защищенность от внешних и внутренних угроз.
Номер журнала Вестник науки №6 (87) том 1
Ссылка для цитирования:
Симбирцев Е.А., Галяутдинов Д.А. НАСТРОЙКА И ТЕСТИРОВАНИЕ ПРОТОКОЛА VRRP. ВОПРОСЫ БЕЗОПАСНОСТИ // Вестник науки №6 (87) том 1. С. 1573 - 1590. 2025 г. ISSN 2712-8849 // Электронный ресурс: https://www.вестник-науки.рф/article/23770 (дата обращения: 13.07.2025 г.)
Вестник науки © 2025. 16+
*