Files
netrunner-proxy/README.MD
T
2026-03-16 15:48:25 +07:00

3.2 KiB
Raw Blame History

Netrunner Core

Netrunner Core — это высокопроизводительный сетевой комплекс, реализующий TLS-инкапсуляцию с мультиплексированием потоков для обхода сетевых ограничений. Система состоит из легковесного клиента (поддерживающего Android и Linux) и серверной части.

Архитектура

Проект построен на принципах:

  • Мультиплексирование потоков: Передача независимых кадров (Frames) внутри единого зашифрованного TLS-туннеля.
  • TLS-маскировка: Имитация рукопожатия TLS 1.3 (ClientHello/ServerHello) для скрытия факта проксирования.
  • Безопасность: Кадры защищены AEAD-шифрованием (ChaCha20-Poly1305) с контролем целостности через auth_tag.
  • Кроссплатформенность: Ядро на Rust, готовое к интеграции в мобильные (Android) и десктопные системы.

Основные компоненты

  • core/: Сетевая логика, кодек протокола и реализация AEAD-шифрования.
  • tlseng/: Движок формирования TLS-отпечатков (Fingerprinting Engine) для маскировки под браузеры.
  • client/: Клиентская часть для формирования туннеля и обработки кадров.
  • server/: Серверная часть, принимающая TLS-соединения и разбирающая кадры.
  • tools/: Утилиты для генерации связующего кода (Android/Kotlin) и дебага.

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

Требования

  • Rust (latest stable)
  • cargo-ndk (для Android-сборки)

Локальная разработка

Запуск клиента в режиме отладки

make debug-client

Запуск сервера локально (порт 4443)

make debug-server

Деплой сервера

  1. Настройте IP сервера в Makefile (переменная SERVER_IP).
  2. Подготовьте удаленную машину: make setup-server
  3. Соберите и деплойте сервер: make build-server make deploy-server

Команды Makefile

Команда Описание
make build-android Сборка библиотек для всех ABI и генерация Kotlin-биндингов
make deploy-server Сборка, копирование бинарника и обновление systemd-сервиса
make logs Просмотр логов удаленного сервера
make ssh Быстрый вход на сервер