
iNTERCEPT, uma plataforma gratuita e de código aberto que reúne as melhores ferramentas de inteligência de sinais em uma única interface acessível.
Apoie o desenvolvedor deste projeto de código aberto
Plataforma de Inteligência de Sinais
Uma interface baseada na web para ferramentas de rádio definido por software.
git clone https://github.com/smittix/intercept.git
cd intercept
./setup.sh # Interactive menu (first run launches setup wizard)
sudo ./start.sh
Na primeira execução, o setup.sh inicia um assistente guiado que detecta o seu sistema operacional, permite escolher perfis de instalação, configura o ambiente Python e, opcionalmente, define variáveis de ambiente e o PostgreSQL.
Nas execuções subsequentes, ele abre um menu interativo:
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
Servidor de produção vs. desenvolvimento:
start.shdetecta automaticamente gunicorn + gevent e executa um servidor de produção com greenlets cooperativos — lida com múltiplos clientes SSE/WebSocket sem bloqueio. Recorre ao servidor de desenvolvimento Flask se o gunicorn não estiver instalado. Para desenvolvimento local rápido, você ainda pode usarsudo -E venv/bin/python intercept.pydiretamente.
Escolha o que instalar durante o assistente ou pela opção 1 do menu:
| # | Perfil | Ferramentas |
|---|---|---|
| 1 | SIGINT Essencial | rtl_sdr, multimon-ng, rtl_433, dump1090, acarsdec, dumpvdl2, ffmpeg, gpsd |
| 2 | Marítimo & Rádio | AIS-catcher, direwolf |
| 3 | Clima & Espaço | SatDump, radiosonde_auto_rx |
| 4 | Segurança RF | aircrack-ng, HackRF, BlueZ, hcxtools, Ubertooth, SoapySDR |
| 5 | SIGINT Completo | Todos os acima |
| 6 | Personalizado | Lista de verificação por ferramenta |
Vários perfis podem ser combinados (por exemplo, insira 1 3 para Essencial + Clima).
./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
Nota: O Docker requer modo privilegiado para acesso a SDR USB. Os dispositivos SDR são passados através de
/dev/bus/usb.
Seus dados: configurações, usuários, regras de alerta, watchlists e mensagens decodificadas ficam em
./instanceno host, para que sobrevivam ao--build. Atualizando a partir de um arquivo compose sem essa montagem? Copie os dados antigos antes de reconstruir:docker cp intercept:/app/instance ./instance.
Para builds multi-arquitetura (amd64 + arm64 para Raspberry Pi), consulte build-multiarch.sh — ele lida com compilação cruzada e push para o registry em uma única etapa.
Use o Environment Configurator (opção 5 do menu) para definir interativamente qualquer variável INTERCEPT_*. As configurações são salvas em um arquivo .env que o start.sh carrega automaticamente na inicialização.
Você também pode criar ou editar o .env manualmente:
# .env (auto-loaded by start.sh)
INTERCEPT_PORT=5050
INTERCEPT_ADSB_AUTO_START=true
INTERCEPT_DEFAULT_LAT=51.5074
INTERCEPT_DEFAULT_LON=-0.1278
O recurso de histórico ADS-B persiste mensagens de aeronaves no PostgreSQL para análise de longo prazo.