
iNTERCEPT, бесплатная платформа с открытым исходным кодом, объединяющая лучшие инструменты радиоэлектронной разведки в единый доступный интерфейс.
Поддержите разработчика этого проекта с открытым исходным кодом
Платформа радиоразведки
Веб-интерфейс для инструментов программно-определяемого радио.
git clone https://github.com/smittix/intercept.git
cd intercept
./setup.sh # Interactive menu (first run launches setup wizard)
sudo ./start.sh
При первом запуске setup.sh запускает пошаговый мастер, который определяет вашу ОС, позволяет выбрать профили установки, настраивает окружение Python и, при желании, конфигурирует переменные окружения и PostgreSQL.
При последующих запусках открывается интерактивное меню:
INTERCEPT Setup Menu
════════════════════════════════════════
1) Install / Add Modules
2) System Health Check
3) Database Setup (ADS-B History)
4) Update Tools
5) Environment Configurator
6) Uninstall / Cleanup
7) View Status
0) Exit
Продакшн-сервер vs Dev-сервер:
start.shавтоматически определяет gunicorn + gevent и запускает продакшн-сервер с кооперативными гринлетами — обрабатывает несколько SSE/WebSocket-клиентов без блокировки. Если gunicorn не установлен, используется dev-сервер Flask. Для быстрой локальной разработки вы по-прежнему можете напрямую использоватьsudo -E venv/bin/python intercept.py.
Выберите, что устанавливать, во время работы мастера или через пункт меню 1:
| # | Профиль | Инструменты |
|---|---|---|
| 1 | Core SIGINT | rtl_sdr, multimon-ng, rtl_433, dump1090, acarsdec, dumpvdl2, ffmpeg, gpsd |
| 2 | Maritime & Radio | AIS-catcher, direwolf |
| 3 | Weather & Space | SatDump, radiosonde_auto_rx |
| 4 | RF Security | aircrack-ng, HackRF, BlueZ, hcxtools, Ubertooth, SoapySDR |
| 5 | Full SIGINT | Все вышеперечисленное |
| 6 | Custom | Чек-лист по каждому инструменту |
Несколько профилей можно комбинировать (например, введите 1 3 для Core + Weather).
./setup.sh --non-interactive # Headless full install (same as legacy behavior)
./setup.sh --profile=core,weather # Install specific profiles
./setup.sh --health-check # Check system health and exit
./setup.sh --postgres-setup # Run PostgreSQL setup and exit
./setup.sh --menu # Force interactive menu
git clone https://github.com/smittix/intercept.git
cd intercept
docker compose --profile basic up -d --build
Примечание: Docker требует привилегированного режима для доступа к USB SDR. Устройства SDR передаются через
/dev/bus/usb.
Ваши данные: настройки, пользователи, правила оповещений, списки наблюдения и декодированные сообщения хранятся в
./instanceна хосте, поэтому они сохраняются при--build. Обновляетесь с compose-файла без этого монтирования? Скопируйте старые данные перед пересборкой:docker cp intercept:/app/instance ./instance.
Для мультиархитектурных сборок (amd64 + arm64 для Raspberry Pi) см. build-multiarch.sh — он выполняет кросс-компиляцию и отправку в реестр за один шаг.
Используйте Конфигуратор окружения (пункт меню 5), чтобы интерактивно задать любую переменную INTERCEPT_*. Настройки сохраняются в файл .env, который start.sh автоматически подхватывает при запуске.
Вы также можете создать или отредактировать .env вручную:
# .env (auto-loaded by start.sh)
INTERCEPT_PORT=5050
INTERCEPT_ADSB_AUTO_START=true
INTERCEPT_DEFAULT_LAT=51.5074
INTERCEPT_DEFAULT_LON=-0.1278
Функция истории ADS-B сохраняет сообщения воздушных судов в PostgreSQL для долгосрочного анализа.
Автоматическая настройка (локальная установка):
./setup.sh --postgres-setup
# Or use menu option 3: Database Setup
Это установит PostgreSQL при необходимости, создаст базу данных/пользователя/таблицы и запишет параметры подключения в .env.