Разбиение правила Firewall — безопасное удаление одного взаимодействия
Разделитель правил файрвола
Удаляет выбранные потоки из SRC x DST x SERVICE и строит минимальный набор итоговых правил.
Как сейчас обрабатываются данные
- Расчёт разделения выполняется в вашем браузере в офлайн-режиме.
- В офлайн-режиме входные данные не отправляются на сервер.
- Локальная share-ссылка хранит данные в URL hash (#...). Держите такую ссылку в приватности.
- Если вы переключитесь в серверный режим, входные данные будут отправляться на сервер для обработки/сессии.
Правила в читаемом виде
JSON
CSV / экспорт для вендоров
Firewall Rule Splitter
Инструмент для безопасного разбиения правила межсетевого экрана и удаления конкретного сетевого взаимодействия
(например: Office_LAN → DB_Server : tcp/3389) без нарушения остальных разрешений.
Разбиение правила firewall — это процесс безопасного удаления одного или нескольких сетевых взаимодействий из существующего правила межсетевого экрана без изменения остальных разрешений. Такая задача часто возникает при сопровождении NGFW, UserGate и ViPNet.
Что делает инструмент
- Разворачивает правило в набор потоков
Sources × Destinations × Services - Точно вычитает указанные взаимодействия
- Упаковывает результат в минимальный набор новых правил
- Генерирует структурированный JSON (основа для автоматизации / SaaS)
Почему это важно
В реальном NGFW одно “красивое” правило часто означает десятки разрешений. Ошибка при ручном редактировании может либо сломать доступ, либо — что хуже — дать лишние права.
Почему изменение одного правила — это риск?
Правило firewall почти всегда эквивалентно произведению:
Sources × Destinations × Services
Например, 2 источника × 2 назначения × 3 сервиса = 12 взаимодействий. Нужно убрать одно — а остальное оставить.
- Удалили сервис из правила → сломали доступ всем источникам
- Добавили deny выше → конфликты, “магия” при матчинге, рост сложности
- Разбили вручную → случайно создали лишние разрешения
Как работает инструмент
Основа — вычитание множества разрешённых потоков:
ALLOW = S × D × V RESULT = ALLOW − REMOVE
RESULT всегда является подмножеством ALLOW. Новые разрешения не появляются — мы только удаляем то, что ты указал.
Реальный пример
Исходное правило
Sources: Office_LAN, IT_Admins
Destinations: App_Server, DB_Server
Services: tcp/80, tcp/443, tcp/3389
Нужно убрать: Office_LAN → DB_Server : tcp/3389
Результат
- Office_LAN → App_Server : 80,443,3389
- Office_LAN → DB_Server : 80,443
- IT_Admins → App_Server : 80,443,3389
- IT_Admins → DB_Server : 80,443,3389
Удалён только один поток. Все остальные взаимодействия сохранены.
Интеллектуальная упаковка в минимальный набор правил
После вычитания потоков результат можно представить десятками отдельных строк. Чтобы политика оставалась читаемой, инструмент применяет безопасные стратегии группировки:
- Service-first grouping — группировка по назначениям и сервисам (часто даёт минимум правил)
- Pair grouping — группировка по паре
source+destinationс объединением портов
Алгоритм выбирает стратегию с меньшим количеством правил, не создавая новых разрешений.
Поддерживаемые форматы ввода
- IPv4 адреса
- CIDR подсети
anytcp/443,udp/53- Диапазоны
tcp/1000-2000
Данные нормализуются перед обработкой: регистр, формат протокола, сортировка, дедупликация. Это делает результат детерминированным (важно для последующей автоматизации).
Зачем нужен JSON-вывод?
JSON — это “канонический слой”, который позволяет масштабировать инструмент дальше:
- экспорт под UserGate и ViPNet xFirewall (следующий этап)
- интеграции в скрипты, CI/CD и IaC
- хранение изменений в Git и контроль версий
- переход к SaaS-модели (rule review / policy optimization)
{
"schema_version": "1.0",
"engine_version": "1.0",
"rules": [
{
"id": "rule_1",
"action": "allow",
"comment": "Auto-split from original rule",
"sources": ["Office_LAN","IT_Admins"],
"destinations": ["App_Server"],
"services": ["tcp/80","tcp/443","tcp/3389"]
}
],
"removed_flows": [
{"src":"Office_LAN","dst":"DB_Server","service":"tcp/3389"}
]
}
Для кого этот инструмент
- сетевые инженеры и админы NGFW
- специалисты SOC / ИБ, которые ревьюят политики
- DevOps, которые поддерживают инфраструктуру и доступы
- интеграторы и инженеры сопровождения UserGate / ViPNet
FAQ
Создаёт ли инструмент новые разрешения?
Нет. Результат всегда подмножество исходного правила.
Можно ли удалить один порт?
Да, если порт указан как отдельный сервис. (Вычитание из диапазона — в расширенной версии.)
Это подходит для NGFW?
Да. Логика универсальна и применяется к политике доступа большинства вендоров.
Данные сохраняются?
По умолчанию — нет. Можно включить share-link через transient (временное хранение).
Готовы безопасно дробить правила?
Firewall Rule Splitter помогает менять политику доступа без ручной боли и без риска “сломать прод”. Следующий шаг — экспорт под UserGate и ViPNet xFirewall.