From 50e72368c8de50157b9762fe3d3980c089001974 Mon Sep 17 00:00:00 2001 From: Alexey <247128645+axkurcom@users.noreply.github.com> Date: Tue, 30 Dec 2025 21:29:04 +0300 Subject: [PATCH] Update README.md --- README.md | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 61 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 22b8883..3a29f3d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,61 @@ -# telemt -MTProxy for Telegram on Rust + Tokio +# Telemt - MTProxy on Rust + Tokio + +**Telemt** is a fast, secure, and feature-rich server written in Rust +It fully implements the official Telegram proxy algo and adds many production-ready improvements such as connection pooling, replay protection, detailed statistics, masking from "prying" eyes + +# GOTO +- [Features](#features) +- [Quick Start Guide](#quick-start-guide) + - [Build](#build) +- [How to use?](#how-to-use) + - [Systemd Method](#telemt-via-systemd) + +## Features + +- Full support for all official MTProto proxy modes: + - Classic + - Secure - with `dd` prefix + - Fake TLS - with `ee` prefix + SNI fronting +- Replay attack protection +- Optional traffic masking: forward unrecognized connections to a real web server, e.g. GitHub 🤪 +- Configurable keepalives + timeouts + IPv6 and "Fast Mode" +- Graceful shutdown on Ctrl+C +- Extensive logging via `trace` and `debug` with `RUST_LOG` method + +## Quick Start Guide + +### Build +```bash +# Cloning repo +git clone https://github.com/telemt/telemt +# Changing Directory to telemt +cd telemt +# Starting Release Build +cargo build --release +# Allow execution +chmod +x ./target/release/telemt +# Lets go! +./target/release/telemt config.toml +``` + +## How to use? +### Telemt via Systemd +1. Place your config to /etc/telemt.toml +2. Create service on /etc/systemd/system/telemt.service +```bash +[Unit] +Description=Telemt +After=network.target + +[Service] +Type=simple +WorkingDirectory=/bin +ExecStart=/bin/telemt /etc/telemt.toml +Restart=on-failure + +[Install] +WantedBy=multi-user.target +``` +3. In Shell type `systemctl start telemt` - it must start with zero exit-code +4. In Shell type `systemctl status telemt` - there you can reach info about current MTProxy status +5. In Shell type `systemctl enable telemt` - then telemt will start with system startup, after the network is up