Разделитель правил файрвола

Удаляет выбранные потоки из SRC x DST x SERVICE и строит минимальный набор итоговых правил.

Режим приватности: локальный. Входные данные остаются в браузере и не отправляются на сервер.

Как сейчас обрабатываются данные

  • Расчёт разделения выполняется в вашем браузере в офлайн-режиме.
  • В офлайн-режиме входные данные не отправляются на сервер.
  • Локальная share-ссылка хранит данные в URL hash (#...). Держите такую ссылку в приватности.
  • Если вы переключитесь в серверный режим, входные данные будут отправляться на сервер для обработки/сессии.

Правила в читаемом виде

JSON

CSV / экспорт для вендоров


🛡️ NGFW / ACL Tool • Safe rule splitting • Zero new permissions

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 подсети
  • any
  • tcp/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.