diff --git a/README.md b/README.md index 09d33e0..e9e2164 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,8 @@ ![Latest Release](https://img.shields.io/github/v/release/telemt/telemt?color=neon) ![Stars](https://img.shields.io/github/stars/telemt/telemt?style=social) ![Forks](https://img.shields.io/github/forks/telemt/telemt?style=social) [![Telegram](https://img.shields.io/badge/Telegram-Chat-24a1de?logo=telegram&logoColor=24a1de)](https://t.me/telemtrs) +[🇷🇺 README на русском](https://github.com/telemt/telemt/blob/main/README.ru.md) + ***Löst Probleme, bevor andere überhaupt wissen, dass sie existieren*** / ***It solves problems before others even realize they exist*** > [!NOTE] diff --git a/README.ru.md b/README.ru.md index 4bb7d3a..17d79ad 100644 --- a/README.ru.md +++ b/README.ru.md @@ -85,4 +85,25 @@ telemt config.toml - Безопасность памяти; - Асинхронная архитектура Tokio. +## Поддержать Telemt + +Telemt — это бесплатное программное обеспечение с открытым исходным кодом, разработанное в свободное время. +Если оно оказалось вам полезным, вы можете поддержать дальнейшую разработку. + +Принимаемые криптовалюты (BTC, ETH, USDT, 350+ и другие): + +

+ + Cryptocurrency & Bitcoin donation button by NOWPayments + +

+ +Monero (XMR) напрямую: + +``` +8Bk4tZEYPQWSypeD2hrUXG2rKbAKF16GqEN942ZdAP5cFdSqW6h4DwkP5cJMAdszzuPeHeHZPTyjWWFwzeFdjuci3ktfMoB +``` + +Все пожертвования пойдут на инфраструктуру, разработку и исследования. + ![telemt_scheme](docs/assets/telemt.png) diff --git a/docs/Config_params/CONFIG_PARAMS.en.md b/docs/Config_params/CONFIG_PARAMS.en.md index 5931ce0..b4627eb 100644 --- a/docs/Config_params/CONFIG_PARAMS.en.md +++ b/docs/Config_params/CONFIG_PARAMS.en.md @@ -2106,7 +2106,7 @@ Note: This section also accepts the legacy alias `[server.admin_api]` (same sche - **Example**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" ``` ## announce @@ -2115,7 +2115,7 @@ Note: This section also accepts the legacy alias `[server.admin_api]` (same sche - **Example**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" announce = "proxy.example.com" ``` @@ -2125,7 +2125,7 @@ Note: This section also accepts the legacy alias `[server.admin_api]` (same sche - **Example**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" announce_ip = "203.0.113.10" ``` @@ -2138,7 +2138,7 @@ Note: This section also accepts the legacy alias `[server.admin_api]` (same sche [server] proxy_protocol = false - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" proxy_protocol = true ``` @@ -2149,7 +2149,7 @@ Note: This section also accepts the legacy alias `[server.admin_api]` (same sche - **Example**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" reuse_allow = false ``` @@ -2907,7 +2907,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p ``` -# [upstreams] +# [[upstreams]] | Key | Type | Default | @@ -2926,18 +2926,18 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p ## type - **Constraints / validation**: Required field. Must be one of: `"direct"`, `"socks4"`, `"socks5"`, `"shadowsocks"`. - - **Description**: Selects the upstream transport implementation for this `[upstreams]` entry. + - **Description**: Selects the upstream transport implementation for this `[[upstreams]]` entry. - **Example**: ```toml - [upstreams] + [[upstreams]] type = "direct" - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" - [upstreams] + [[upstreams]] type = "shadowsocks" url = "ss://2022-blake3-aes-256-gcm:BASE64PASSWORD@127.0.0.1:8388" ``` @@ -2947,7 +2947,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "direct" weight = 10 ``` @@ -2957,7 +2957,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" enabled = false @@ -2968,7 +2968,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks4" address = "10.0.0.10:1080" scopes = "me, fetch, dc2" @@ -2982,11 +2982,11 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "direct" interface = "eth0" - [upstreams] + [[upstreams]] type = "socks5" address = "203.0.113.10:1080" interface = "192.0.2.10" # explicit local bind IP @@ -2999,7 +2999,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "direct" bind_addresses = ["192.0.2.10", "192.0.2.11"] ``` @@ -3015,7 +3015,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p [general] use_middle_proxy = false - [upstreams] + [[upstreams]] type = "shadowsocks" url = "ss://2022-blake3-aes-256-gcm:BASE64PASSWORD@127.0.0.1:8388" ``` @@ -3025,7 +3025,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" ``` @@ -3035,7 +3035,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks4" address = "127.0.0.1:1080" user_id = "telemt" @@ -3046,7 +3046,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" username = "alice" @@ -3057,7 +3057,7 @@ If your backend or network is very bandwidth-constrained, reduce cap first. If p - **Example**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" username = "alice" diff --git a/docs/Config_params/CONFIG_PARAMS.ru.md b/docs/Config_params/CONFIG_PARAMS.ru.md index 74d1fb1..bdd2dac 100644 --- a/docs/Config_params/CONFIG_PARAMS.ru.md +++ b/docs/Config_params/CONFIG_PARAMS.ru.md @@ -2112,7 +2112,7 @@ - **Пример**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" ``` ## announce @@ -2121,7 +2121,7 @@ - **Пример**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" announce = "proxy.example.com" ``` @@ -2131,7 +2131,7 @@ - **Пример**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" announce_ip = "203.0.113.10" ``` @@ -2144,7 +2144,7 @@ [server] proxy_protocol = false - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" proxy_protocol = true ``` @@ -2155,7 +2155,7 @@ - **Пример**: ```toml - [server.listeners] + [[server.listeners]] ip = "0.0.0.0" reuse_allow = false ``` @@ -2912,7 +2912,7 @@ ``` -# [upstreams] +# [[upstreams]] | Ключ | Тип | По умолчанию | @@ -2931,18 +2931,18 @@ ## type - **Ограничения / валидация**: Обязательный параметр.`"direct"`, `"socks4"`, `"socks5"`, `"shadowsocks"`. - - **Описание**: Выбирает реализацию upstream-транспорта для этой записи в `[upstreams]`. + - **Описание**: Выбирает реализацию upstream-транспорта для этой записи в `[[upstreams]]`. - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "direct" - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" - [upstreams] + [[upstreams]] type = "shadowsocks" url = "ss://2022-blake3-aes-256-gcm:BASE64PASSWORD@127.0.0.1:8388" ``` @@ -2952,7 +2952,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "direct" weight = 10 ``` @@ -2962,7 +2962,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" enabled = false @@ -2973,7 +2973,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks4" address = "10.0.0.10:1080" scopes = "me, fetch, dc2" @@ -2987,11 +2987,11 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "direct" interface = "eth0" - [upstreams] + [[upstreams]] type = "socks5" address = "203.0.113.10:1080" interface = "192.0.2.10" # explicit local bind IP @@ -3004,7 +3004,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "direct" bind_addresses = ["192.0.2.10", "192.0.2.11"] ``` @@ -3020,7 +3020,7 @@ [general] use_middle_proxy = false - [upstreams] + [[upstreams]] type = "shadowsocks" url = "ss://2022-blake3-aes-256-gcm:BASE64PASSWORD@127.0.0.1:8388" ``` @@ -3030,7 +3030,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" ``` @@ -3040,7 +3040,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks4" address = "127.0.0.1:1080" user_id = "telemt" @@ -3051,7 +3051,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" username = "alice" @@ -3062,7 +3062,7 @@ - **Пример**: ```toml - [upstreams] + [[upstreams]] type = "socks5" address = "127.0.0.1:9050" username = "alice" diff --git a/docs/Quick_start/QUICK_START_GUIDE.en.md b/docs/Quick_start/QUICK_START_GUIDE.en.md index 488db17..a7d9620 100644 --- a/docs/Quick_start/QUICK_START_GUIDE.en.md +++ b/docs/Quick_start/QUICK_START_GUIDE.en.md @@ -1,9 +1,36 @@ +# Installation Options +There are three options for installing Telemt: + - [Automated installation using a script](#very-quick-start). + - [Manual installation of Telemt as a service](#telemt-via-systemd). + - [Installation using Docker Compose](#telemt-via-docker-compose). + # Very quick start ### One-command installation / update on re-run ```bash curl -fsSL https://raw.githubusercontent.com/telemt/telemt/main/install.sh | sh ``` + +After starting, the script will prompt for: + - Your language (1 - English, 2 - Russian); + - Your TLS domain (press Enter for petrovich.ru). + +The script checks if the port (default **443**) is free. If the port is already in use, installation will fail. You need to free up the port or use the **-p** flag with a different port to retry the installation. + +To modify the script’s startup parameters, you can use the following flags: + - **-d, --domain** - TLS domain; + - **-p, --port** - server port (1–65535); + - **-s, --secret** - 32 hex secret; + - **-a, --ad-tag** - ad_tag; + - **-l, --lan**g - language (1/en or 2/ru); + +Providing all options skips interactive prompts. + +After completion, the script will provide a link for client connections: +```bash +tg://proxy?server=IP&port=PORT&secret=SECRET +``` + ### Installing a specific version ```bash curl -fsSL https://raw.githubusercontent.com/telemt/telemt/main/install.sh | sh -s -- 3.3.39 diff --git a/docs/Quick_start/QUICK_START_GUIDE.ru.md b/docs/Quick_start/QUICK_START_GUIDE.ru.md index 9cef988..e9b5bab 100644 --- a/docs/Quick_start/QUICK_START_GUIDE.ru.md +++ b/docs/Quick_start/QUICK_START_GUIDE.ru.md @@ -1,9 +1,35 @@ +# Варианты установки +Имеется три варианта установки Telemt: + - [Автоматизированная установка с помощью скрипта](#очень-быстрый-старт). + - [Ручная установка Telemt в качестве службы](#telemt-через-systemd-вручную). + - [Установка через Docker Compose](#telemt-через-docker-compose). + # Очень быстрый старт ### Установка одной командой / обновление при повторном запуске ```bash curl -fsSL https://raw.githubusercontent.com/telemt/telemt/main/install.sh | sh ``` +После запуска скрипт запросит: + - ваш язык (1 - English, 2 - Русский); + - ваш TLS-домен (нажмите Enter для petrovich.ru). + +Во время установки скрипт проверяет, свободен ли порт (по умолчанию **443**). Если порт занят другим процессом - установка завершится с ошибкой. Для повторной установки необходимо освободить порт или указать другой через флаг **-p**. + +Для изменения параметров запуска скрипта можно использовать следующие флаги: + - **-d, --domain** - TLS-домен; + - **-p, --port** - порт (1–65535); + - **-s, --secret** - секрет (32 hex символа); + - **-a, --ad-tag** - ad_tag; + - **-l, --lang** - язык (1/en или 2/ru). + +Если заданы флаги для языка и домена, интерактивных вопросов не будет. + +После завершения установки скрипт выдаст ссылку для подключения клиентов: +```bash +tg://proxy?server=IP&port=PORT&secret=SECRET +``` + ### Установка нужной версии ```bash curl -fsSL https://raw.githubusercontent.com/telemt/telemt/main/install.sh | sh -s -- 3.3.39