telemt/README.ru.md

4.5 KiB
Raw Blame History

Telemt — MTProxy на Rust + Tokio

Latest Release Stars Forks Telegram

Решает проблемы раньше, чем другие узнают об их существовании

[!NOTE]

Исправленный TLS ClientHello доступен в Telegram для настольных ПК, Android и iOS.

Пожалуйста, обновите клиентское приложение для работы с EE-MTProxy.

Telemt — это быстрый, безопасный и функциональный сервер, написанный на Rust. Он полностью реализует официальный алгоритм прокси Telegram и добавляет множество улучшений для продакшена:

Установка и обновление одной командой

curl -fsSL https://raw.githubusercontent.com/telemt/telemt/main/install.sh | sh

Реализация TLS-fronting максимально приближена к поведению реального HTTPS-трафика (подробнее - FAQ).

Middle-End Pool оптимизирован для высокой производительности.

  • Поддержка всех режимов MTProto proxy:
    • Classic;
    • Secure (префикс dd);
    • Fake TLS (префикс ee + SNI fronting);
  • Защита от replay-атак;
  • Маскировка трафика (перенаправление неизвестных подключений на реальные сайты);
  • Настраиваемые keepalive, таймауты, IPv6 и «быстрый режим»;
  • Корректное завершение работы (Ctrl+C);
  • Подробное логирование через trace и debug.

Подробнее о Telemt

FAQ

Сборка

# Клонируйте репозиторий
git clone https://github.com/telemt/telemt 
# Смените каталог на telemt
cd telemt
# Начните процесс сборки
cargo build --release

# Устройства с небольшим объёмом оперативной памяти (1 ГБ, например NanoPi Neo3 / Raspberry Pi Zero 2):
# В текущем release-профиле используется lto = "fat" для максимальной оптимизации (см. Cargo.toml).
# На системах с малым объёмом RAM (~1 ГБ) можно переопределить это значение на "thin".

# Перейдите в каталог /bin
mv ./target/release/telemt /bin
# Сделайте файл исполняемым
chmod +x /bin/telemt
# Запустите!
telemt config.toml

Установка на BSD

  • Руководство по сборке и настройке на английском языке OpenBSD Guide (EN);
  • Пример rc.d скрипта: contrib/openbsd/telemt.rcd;
  • Поддержка sandbox с pledge(2) и unveil(2) пока не реализована.

Почему Rust?

  • Надёжность для долгоживущих процессов;
  • Детерминированное управление ресурсами (RAII);
  • Отсутствие сборщика мусора;
  • Безопасность памяти;
  • Асинхронная архитектура Tokio.

telemt_scheme