Назад к обновлениям
New releaseSep 17, 2026

oproxy v0.1.11

Открытый MITM-прокси для перехвата, анализа и имитации сетевого трафика.

Поделиться

oproxy

sauravrao637%2Foproxy | Trendshift

oproxy — это локальный прокси-сервер HTTP, HTTPS, HTTP/3, WebSocket и SOCKS5 для инспектирования, воспроизведения и модификации трафика из браузеров, CLI, мобильных приложений, API-клиентов, сервисов и тестовых наборов.

Он запускает веб-интерфейс, API и опционального ИИ-ассистента на одном локальном слушателе, что позволяет захватывать трафик, инспектировать запросы и ответы, воспроизводить запросы, подменять вышестоящие серверы, переписывать трафик, ограничивать скорость ответов и экспортировать воспроизводимые фрагменты кода без изменения кода приложения.

Ассистент — это клиент управляющей плоскости, совместимый с OpenAI: он может инспектировать текущее состояние прокси через инструменты из белого списка и подготавливать изменения трафика/конфигурации в виде карточек подтверждения для проверки.

Примечание по безопасности: перехват HTTPS требует доверия к локальному корневому CA oproxy. Устанавливайте этот CA только на машинах и в браузерах, которые вы контролируете, храните сгенерированный закрытый ключ в безопасности и не открывайте доступ к административному интерфейсу без надёжного токена.

Основные возможности

  • Захват трафика HTTP и HTTPS с поддержкой MITM для HTTPS.
  • Инспектирование заголовков, тел, статусов, таймингов, тегов, заметок, JWT, GraphQL, метаданных gRPC и кадров WebSocket.
  • Воспроизведение захваченных запросов или их редактирование в Compose.
  • Экспорт захватов в виде HAR, cURL, Fetch или фрагментов кода на Python.
  • Модификация трафика с помощью правил, моков, map-local/map-remote, правил доступа, ограничения скорости, точек останова, переопределений DNS, скриптов Lua и цепочек вышестоящих прокси.
  • Использование Ассистента для инспектирования сессий, понимания состояния прокси и подготовки подтверждённых изменений через чат-модель, совместимую с OpenAI.
  • Запуск из Docker, Docker Compose или из исходного кода.

Быстрый старт

Docker

docker run --rm \
  --name oproxy \
  -p 127.0.0.1:8080:8080 \
  -p 127.0.0.1:1080:1080 \
  -p 127.0.0.1:8443:8443/udp \
  -e OPROXY_BIND_HOST=0.0.0.0 \
  -e OPROXY_MITM_ENABLED=true \
  -e OPROXY_HTTP3_ENABLED=true \
  -e OPROXY_HTTP3_PORT=8443 \
  -e OPROXY_ALLOW_REMOTE_ADMIN=true \
  -e OPROXY_ADMIN_TOKEN=change-me-to-a-strong-secret \
  -v oproxy-certs:/app/certs \
  -v oproxy-storage:/app/storage \
  ghcr.io/sauravrao637/oproxy:latest

Откройте http://127.0.0.1:8080 и войдите с токеном.

Для сетевого моста Docker требуется OPROXY_BIND_HOST=0.0.0.0. Приведённая выше команда по-прежнему публикует порты только на loopback хоста. Измените OPROXY_ADMIN_TOKEN перед реальным использованием.

Docker Compose

docker compose up --build

Включённый в репозиторий файл Compose включает MITM, HTTP/3 на UDP 8443, постоянное хранение сертификатов/состояния и проверку работоспособности.

Из исходного кода

Требования: Rust 1.85+, Node.js 22+ и Yarn через Corepack.

corepack enable
yarn --cwd src/design install --frozen-lockfile
yarn --cwd src/design build
cargo run --release

Откройте http://127.0.0.1:8080.

Первый захват

curl -x http://127.0.0.1:8080 http://example.com

Запрос появится в представлении Sessions.

Для HTTPS:

curl http://127.0.0.1:8080/admin/ca -o oproxy-ca.crt
curl --cacert oproxy-ca.crt -x http://127.0.0.1:8080 https://example.com

Для захвата HTTPS в браузере настройте браузер или ОС на использование 127.0.0.1:8080 в качестве прокси для HTTP и HTTPS, затем импортируйте CA с http://127.0.0.1:8080/admin/ca.

Демонстрация

Короткое демонстрационное видео

Скриншот сессий oproxy

Скриншот Compose oproxy

Узнать больше

Лицензия

oproxy распространяется под лицензией MIT.

Категории