# ТСПУ: Технические средства противодействия угрозам Полное руководство на основе [лекции по архитектуре, настройке и эксплуатации ТСПУ](https://www.youtube.com/watch?v=raNP3IMgwRU) > **Примечание:** Данная документация сгенерирована с помощью ИИ на основе транскрипта ~5-часовой видеолекции и проверена вручную. Может содержать неточности. ## Оглавление ### [1. Введение и общая архитектура АСБИ](chapters/01.md) - 1.1. Что такое АСБИ (Автоматизированная система обеспечения безопасности интернета) - 1.2. Закон о суверенном интернете и участники проекта (ГУП ГРЧЦ, АО ДЦА, RDP.ru) - 1.3. Что такое ТСПУ — комплекс оборудования у операторов связи - 1.4. Общая схема: байпасы, балансировщики, фильтры, сегмент управления ### [2. Прохождение трафика через ТСПУ](chapters/02.md) - 2.1. Стык оператора связи: типы инкапсуляции (VLAN, QinQ, MPLS, PPPoE) - 2.2. Разделение на LAN-порты (абоненты) и WAN-порты (интернет) - 2.3. Простейший вариант ТСПУ (один байпас, один фильтр) - 2.4. Типовая схема ТСПУ ### [3. Байпас (Bypass)](chapters/03.md) - 3.1. Назначение и роль байпаса в ТСПУ - 3.2. Байпасы Silicom (федеральный проект) - 3.2.1. Порты: Net0/Net1 (оператор) и Mon0/Mon1 (балансировщик) - 3.2.2. Режим Inline — основной рабочий режим - 3.2.3. Режим TAP — копирование трафика без влияния на оператора - 3.2.4. Режим Active Bypass — замыкание без копирования - 3.2.5. Режим Power-off Bypass — аварийное замыкание при обесточивании - 3.2.6. Переключение между режимами и влияние на оператора - 3.3. Байпасы GL Sun (пилотный проект, Урал) - 3.3.1. Отличие от Silicom: только режим Power-off Bypass - 3.3.2. Флап линков при каждом переключении - 3.4. Мониторинг каналов: Heartbeat-пакеты байпаса - 3.5. Автоматическое переключение в TAP/Active Bypass при потере канала ### [4. Балансировщик (EcoFilter Balancer)](chapters/04.md) - 4.1. Назначение: распределение трафика по фильтрам - 4.2. Аппаратная платформа: 32-портовый, 1U, пропускная способность 3.2 Тбит/с - 4.3. Организация портов: пары LAN/WAN, линки - 4.3.1. Принцип чётных/нечётных портов - 4.3.2. Жёсткая привязка: трафик возвращается в тот же линк - 4.4. Фильтры на балансировщике (Flow rules) - 4.4.1. Байпас служебного трафика (BGP, мультикаст, маршрутизация) - 4.4.2. Отправка трафика на группу балансировки - 4.5. Балансировка трафика - 4.5.1. Хэш-сумма: source IP + destination IP + протокол - 4.5.2. Учёт количества ядер фильтров - 4.5.3. Дополнительный 4-байтный заголовок для фильтров - 4.5.4. Симметричность хэша: одна сессия — один фильтр, одно ядро - 4.6. Отказоустойчивость - 4.6.1. Keep-alive пакеты к фильтрам - 4.6.2. Программный байпас при потере группы портов - 4.6.3. Перебалансировка трафика (опционально) - 4.7. Работа с различными инкапсуляциями (VLAN, MPLS) - 4.8. Обработка HTTP-редиректов и TCP Reset через фильтры ### [5. Фильтр (EcoFilter)](chapters/05.md) - 5.1. Путь пакета через фильтр - 5.1.1. Проверка: IP-пакет или нет - 5.1.2. Проверка по ACL (привязка к пулу) - 5.1.3. Проверка по DPI-листу (IP-подсети) - 5.1.4. Обработка движком DPI - 5.1.5. Решение: пропустить или заблокировать (drop) - 5.2. Работа на уровне L2: фильтр как «прозрачный провод» ### [6. Места установки ТСПУ в сети оператора](chapters/06.md) - 6.1. До BRAS/BPE/BNG (между абонентами и терминацией сессий) - 6.1.1. Особенность: PPPoE-трафик - 6.2. До CGNAT (после BRAS) — наиболее удобная точка - 6.2.1. Видимость серых абонентских IP-адресов - 6.3. После CGNAT (ближе к выходу в интернет) - 6.3.1. Только белые адреса, сложности траблшутинга - 6.4. Режим On-a-stick (BRAS/CGNAT подключены петлёй) - 6.4.1. Двойное прохождение трафика через ТСПУ - 6.4.2. Разделение по VLAN для обработки трафика одного направления - 6.4.3. Проблемы двойной обработки и best practice ### [7. Эшелонированная система (ТСПУ тип Б)](chapters/07.md) - 7.1. Назначение: обработка трафика, не прошедшего через ТСПУ тип А - 7.2. Проблема асимметричного трафика у крупных операторов - 7.3. Балансировщик Eco Highway - 7.3.1. BGP-загрузка списков фильтрации из ЦСУ - 7.3.2. Блокировка по IP-адресам на уровне балансировщика (Telegram, реестр РКН) - 7.3.3. Фильтры в режиме On-a-stick, VLAN-разделение LAN/WAN - 7.3.4. Фильтры занимаются только URL-фильтрацией по реестру РКН - 7.4. Два конвейера (Pipeline) в Eco Highway - 7.4.1. Разделение портов между конвейерами - 7.4.2. Физическая перемычка между конвейерами - 7.4.3. Прохождение пакета: drop / отправка на фильтр / переход на второй конвейер - 7.4.4. Удвоение количества правил фильтрации - 7.5. Отличия EcoFilter Balancer от Eco Highway - 7.6. Отсутствие логирования на Eco Highway (только real-time) - 7.7. Прозрачный пропуск трафика, уже обработанного ТСПУ тип А ### [8. Формирование протокольных списков (двухстадийная блокировка)](chapters/08.md) - 8.1. Первый этап: распознавание протоколов на фильтрах (ТСПУ тип А) - 8.2. Отправка логов на SPFS (сервер предварительного формирования списков) - 8.3. Передача логов по GRPC в центральную систему управления - 8.4. Анализ, очистка от ложных срабатываний, формирование списков - 8.5. Загрузка очищенных списков обратно на фильтры (HTTP) и на Eco Highway (BGP) - 8.6. Время полного цикла блокировки: ~5–15 минут ### [9. Центральная система управления (ЦСУ)](chapters/09.md) - 9.1. Архитектура: две независимые площадки (основная и резервная) - 9.2. Связь с ТСПУ через VPN (криптошлюз «Континент») - 9.3. Масштаб: ~350 площадок, ~5000 устройств - 9.4. Подсистемы ЦСУ: формирование списков, мониторинг, логирование, картография - 9.5. Новая ЦСУ для федерального проекта (замена уральской) ### [10. Сегмент управления ТСПУ](chapters/10.md) - 10.1. Адресация: 10.<регион>.<площадка>.0/24 - 10.2. Распределение адресов: байпасы, балансировщики, BMC, фильтры, IPMI, SPFS, СПХД - 10.3. Шлюз по умолчанию — криптошлюз «Континент» - 10.4. Подсеть логирования (единая для всех ТСПУ) ### [11. Фильтр: аппаратная платформа](chapters/11.md) - 11.1. Младшая линейка: EcoFilter 2020/2040 - 11.2. Старшая линейка: EcoFilter 4080/4120/4160 - 11.3. Модели 2019 года (пилотный проект, Урал) - 11.3.1. Процессоры Intel Xeon 2695/2699, 18/22 ядра, 128/256 ГБ RAM - 11.3.2. Фиксированные сетевые интерфейсы - 11.4. Модели 2020 года (федеральный проект) - 11.4.1. Процессор Intel Xeon Gold 6212, 24 ядра, 192/384 ГБ RAM - 11.4.2. Сменные сетевые интерфейсы, 4× SFP+ лог-порта - 11.5. Разделение интерфейсов: LAN (чётные) / WAN (нечётные) - 11.6. История платформы: от CGNAT (2013) к DPI-фильтру ### [12. Сессии и трансляции на фильтре](chapters/12.md) - 12.1. Понятие сессии: local IP:port + global IP:port + remote IP:port - 12.2. Понятие трансляции: local IP:port ↔ global IP:port - 12.3. Режим без NAT: local = global - 12.4. Направление сессии: Egress (от абонента) / Ingress (к абоненту) - 12.5. Принцип: локальный IP абонента всегда на первом месте - 12.6. Связь трансляций и сессий: одна трансляция — много сессий - 12.7. Тайм-ауты сессий и трансляций - 12.8. Команды: `show session`, `show xl`, фильтрация по `local`/`remote`, pipe и count ### [13. Фильтр: первоначальная настройка и CLI](chapters/13.md) - 13.1. Подключение: консоль (115200 8N1) и SSH (порт 22) - 13.2. Логин по умолчанию: admin / econat - 13.3. Операционный режим (>) и конфигурационный режим (#) - 13.4. Навигация по дереву конфигурации: system, pools, access-lists - 13.4.1. Переход в раздел, exit (..), root (/) - 13.4.2. Автодополнение (Tab), история команд (↑↓), справка (?) - 13.5. Применение конфигурации: `apply`, сохранение: `wr` - 13.6. Управление конфигурациями: save, load, copy, clear config - 13.7. Одновременная работа двух пользователей: ограничения - 13.8. «Мышеловка» (trap mode) при незакрытой скобке - 13.9. Ключевое слово `ls` для быстрого просмотра ### [14. Фильтр: конфигурация подсистем](chapters/14.md) - 14.1. Консольный порт: скорость, тайм-аут неактивности - 14.2. Management-интерфейс: IP, gateway, DNS, allowed IP - 14.2.1. Добавление/удаление записей: `+=` и `-=` - 14.3. Терминал (SSH): auto-logout, prompt, нумерация строк - 14.3.1. Лимит сессий (20), опасность `never` для auto-logout - 14.4. Пользователи: создание, удаление, уровни доступа, пароли (secret 0 / 15) - 14.5. TACACS+: авторизация, fallback на локальную базу - 14.6. NTP: до 3 серверов, период обновления - 14.7. SNMP: community (read-only), traps, allow-ip - 14.8. Системное журналирование (syslog) - 14.8.1. Внешние лог-серверы (до 2), hostname, time shift - 14.8.2. Уровни логирования по подсистемам (1=ошибки, 2=предупреждения, 3=информация) - 14.8.3. Подсистема `all` — максимальный уровень для всех - 14.8.4. Логирование команд пользователя (уровень fatal) - 14.8.5. SNMP traps: только уровень fatal - 14.9. Журналирование соединений (connection log) — через лог-интерфейс (DPDK) - 14.10. Журналирование протоколов (debug logger) — отправка на SPFS - 14.10.1. Выбор протоколов (all / конкретные) - 14.10.2. Количество пакетов на протокол (по умолчанию 30, рекомендуется 3) ### [15. Фильтр: настройка интерфейсов и общих параметров](chapters/15.md) - 15.1. Интерфейсы: enable/disable, description (LACP не используется) - 15.2. NAT Defaults — общие параметры устройства - 15.2.1. **VLAN Mode**: untag / vlan / QinQ — глубина поиска IP-заголовка (всегда QinQ) - 15.2.2. Sessions per Translation (по умолчанию 4096) - 15.2.3. **Forward Traffic**: всегда ON - 15.2.4. **L2 MTU**: максимум 9216 (по RFC) - 15.2.5. **LLDP**: выключен (требование операторов — прозрачность) - 15.2.6. **Permit Invalid Flow**: всегда ON — приём TCP-сессий без SYN - 15.3. Тайм-ауты сессий и трансляций - 15.4. IPv6: включение, диапазон адресов для обработки ### [16. Фильтр: ACL и пулы — запуск трафика на обработку](chapters/16.md) - 16.1. Создание ACL: `create acl`, правила (allow/deny), протоколы, source/destination, VLAN - 16.2. Создание пула: `create pool`, тип = fake (без NAT) - 16.3. Привязка ACL к пулу - 16.4. Приоритет пулов - 16.5. Connection logging в пуле - 16.6. IPv6 в пуле ### [17. Фильтр: настройка DPI](chapters/17.md) - 17.1. Общие настройки модуля DPI - 17.1.1. Включение/выключение DPI - 17.1.2. **Send RST off**: отключение TCP Reset при блокировке протоколов - 17.1.3. Functionality mode: normal (не double mirror traffic) - 17.2. Настройка реестра РКН - 17.2.1. Источник: RKN или GRFЦ - 17.2.2. Логин/пароль для доступа к серверу РКН - 17.2.3. Привязка к DPI-листу (list number) - 17.2.4. Proxy-сервер, dump server - 17.2.5. Проблемы скачивания: минимальная скорость ~10 Мбит/с - 17.3. Деградация протоколов (protocols capacity) - 17.3.1. Шкала 0–100: 0 = полная блокировка, 100 = полный пропуск - 17.3.2. Дроп пакетов с заданной вероятностью - 17.3.3. Эффективная деградация: 2–10% пропускания - 17.3.4. Влияние на голосовые вызовы и мессенджеры - 17.4. Настройка DPI-листов (0–16) - 17.4.1. Enable/disable каждого листа - 17.4.2. BitTorrent UTP detection - 17.4.3. WH List Mode: blacklist (по умолчанию) / whitelist - 17.4.4. **Behavior**: block / ignore / color / redirect - 17.4.5. Redirect URL — страница-заглушка для заблокированных HTTP-ресурсов - 17.4.6. Download URL — источник списков, update schedule - 17.4.7. Protocols — список распознаваемых протоколов - 17.4.8. **No IP** / **IP** — исключение/включение адресов для обработки - 17.4.9. QUIC list - 17.5. Формат списков фильтрации - 17.5.1. IP-адреса, подсети, диапазоны, URL - 17.5.2. HTTP: блокировка конкретного URL - 17.5.3. HTTPS: блокировка только по домену (SNI/Client Hello) ### [18. Фильтр: мониторинг и диагностика](chapters/18.md) - 18.1. `show version` — версия ПО, серийный номер (= MAC management) - 18.2. `show ip if` — параметры management-интерфейса - 18.3. `show time` — текущее время (UTC / local) - 18.4. `show uptime` — время работы платформы и процесса EcoNAT - 18.5. Аппаратная часть: `show power`, `show fan`, `show temperature` - 18.6. Интерфейсы: `show interface brief`, traffic monitor, трансиверы (DDM) - 18.7. Ресурсы: `show resources` - 18.7.1. Таблицы сессий/трансляций: не более 20% загрузки - 18.7.2. Свободные буферы: не должны уходить в ноль - 18.7.3. DPI-ресурсы: не более 100% - 18.7.4. CPU Load — условный параметр обработки трафика - 18.8. Память: Control Plane vs Data Plane - 18.8.1. Data Plane выделяется при старте, не должна расти - 18.8.2. Пороги: 5–10% свободной памяти — повод для тревоги - 18.9. `show cps` — скорость создания новых сессий - 18.10. `show statistic` — статистика сессий и пулов, значение Optimal (= 20%) - 18.11. Счётчики: `show counters all` / `show counters div` (дельта за секунду) - 18.12. Системный журнал: `show syslog`, ротация двух файлов - 18.13. DPI-мониторинг - 18.13.1. `show dpi records ` — содержимое DPI-листа - 18.13.2. `show dpi state` — количество записей, дата последнего дампа - 18.13.3. `dpi load ` — ручная загрузка списка - 18.13.4. `dpi run` — принудительное обновление всех списков - 18.13.5. `show dpi match <ресурс>` — проверка ресурса по всем DPI-листам - 18.14. Ping и Traceroute (из конфигурационного режима) ### [19. Фильтр: обновление прошивки](chapters/19.md) - 19.1. Два раздела: prim1 и prim2 (равнозначные) + FB (заводская) - 19.2. `firmware status` — текущее состояние (cur / boot) - 19.3. `firmware download` — скачивание, `firmware install` — установка - 19.4. `firmware rollback` / `firmware reset` - 19.5. Централизованное обновление через ЦСУ ### [20. Балансировщик: аппаратная платформа](chapters/20.md) - 20.1. Одноюнитовый (32 порта QSFP28) и двухюнитовый (65 портов) - 20.2. Скорости портов: 10G / 25G / 100G - 20.3. Гидры (breakout): один QSFP28 → четыре SFP+ (10G) - 20.4. Внутренняя архитектура - 20.4.1. Микросервер (Intel, Linux) — CLI, конфигурация - 20.4.2. Чип Barefoot Tofino — программируемая коммутация - 20.4.3. BMC — управление аппаратной частью, сенсоры, блоки питания - 20.4.4. Ethernet switch (5-портовый) — доступ к микросерверу и BMC - 20.4.5. Console MUX — переключение консоли между компонентами - 20.5. Передняя панель: Console, Management Ethernet, USB ### [21. Балансировщик: конфигурация](chapters/21.md) - 21.1. CLI: операционный режим / конфигурационный режим (`edit`) - 21.1.1. Интерфейс похож на Juniper CLI - 21.1.2. `apply` — применить, `save` — сохранить в startup - 21.2. Обновление прошивки: `call rdp firmware download` / `call rdp install` - 21.2.1. Два раздела прошивок (A/B), автоматический rollback (3 попытки / 20 мин) - 21.2.2. `call rdp firmware reset-tries` - 21.3. Настройка физических портов - 21.3.1. Имя порта, номер физического порта (number), линия (lane), скорость (speed) - 21.3.2. 10G: указание lane (0–3), 100G: все lane задействованы - 21.4. Настройка линков (объединение двух портов LAN+WAN в сторону оператора) - 21.5. Настройка группы балансировки - 21.5.1. Привязка групп портов в сторону фильтров (filter groups) - 21.5.2. N_UNIT_QA: количество ядер фильтра минус один - 21.6. Профиль проверки доступности (keep-alive) - 21.6.1. Начальная задержка, интервал, порог потерь - 21.6.2. Минимальное количество активных пар - 21.6.3. Перебалансировка: включение/выключение - 21.7. Настройка фильтров (Flow rules) - 21.7.1. Match-условия: VLAN, IPv4 src/dst, L4 port, MAC, MPLS, глубина тегов - 21.7.2. Actions: `balancing s_mac` → balance group / `bypass` - 21.7.3. Приоритеты правил - 21.7.4. Привязка фильтров к линкам - 21.8. Настройка Heartbeat для GL Sun (пилотный проект) - 21.9. Management-интерфейс: IP, маска, default gateway ### [22. Балансировщик: мониторинг и диагностика](chapters/22.md) - 22.1. `show hardware info` — CPU, память, вентиляторы, БП, температура - 22.2. `show mng if` — management-интерфейс - 22.3. `show rdp firmware version` — версии прошивок, tries - 22.4. Состояние портов и трансиверов: SFP-информация, DDM, статистика фреймов - 22.5. Статистика правил фильтрации: счётчики пакетов/байт по каждому flow - 22.6. Состояние группы балансировки - 22.6.1. Статус filter groups: up/bypass - 22.6.2. Time of pass — время прохождения keep-alive пакета - 22.7. Программный байпас: индивидуально для каждой группы портов ### [23. Распознавание протоколов (DPI Engine)](chapters/23.md) - 23.1. Многофакторный анализ сессий - 23.1.1. Размеры пакетов и их вариации - 23.1.2. Частота прохождения пакетов - 23.1.3. Ключевые слова и паттерны внутри пакетов - 23.1.4. Особенности анализа шифрованного трафика - 23.2. Ложноположительные срабатывания - 23.3. Двухстадийная блокировка: распознавание → очистка в ЦСУ → блокировка - 23.4. Обфускация и борьба с обходом блокировок ### [24. Траблшутинг](chapters/24.md) - 24.1. Общий подход к диагностике проблем доступности - 24.2. Поиск сессии абонента: обход фильтров площадки - 24.3. Проверка ресурса в DPI-листах: `show dpi match` - 24.4. Программный байпас для исключения ТСПУ как причины проблемы - 24.5. Исключение абонента из обработки: параметр No IP - 24.6. Перепутки LAN/WAN и их диагностика - 24.7. Взаимодействие с оператором связи - 24.8. Ограничения: L2-устройство, невозможность генерации трафика с фильтра --- _Документ составлен на основе учебной лекции по архитектуре и эксплуатации ТСПУ (АСБИ)_