diff --git a/docs/FAQ.en.md b/docs/FAQ.en.md index 3d84348..5e5a78a 100644 --- a/docs/FAQ.en.md +++ b/docs/FAQ.en.md @@ -1,113 +1,122 @@ -## How to set up "proxy sponsor" channel and statistics via @MTProxybot bot +## How to set up a "proxy sponsor" channel and statistics via the @MTProxybot -1. Go to @MTProxybot bot. -2. Enter the command `/newproxy` -3. Send the server IP and port. For example: 1.2.3.4:443 -4. Open the config `nano /etc/telemt/telemt.toml`. -5. Copy and send the user secret from the [access.users] section to the bot. -6. Copy the tag received from the bot. For example 1234567890abcdef1234567890abcdef. +1. Go to the @MTProxybot. +2. Enter the `/newproxy` command. +3. Send your server's IP address and port. For example: `1.2.3.4:443`. +4. Open the configuration file: `nano /etc/telemt/telemt.toml`. +5. Copy and send the user secret from the `[access.users]` section to the bot. +6. Copy the tag provided by the bot. For example: `1234567890abcdef1234567890abcdef`. > [!WARNING] > The link provided by the bot will not work. Do not copy or use it! -7. Uncomment the ad_tag parameter and enter the tag received from the bot. -8. Uncomment/add the parameter `use_middle_proxy = true`. +7. Uncomment the `ad_tag` parameter and enter the tag received from the bot. +8. Uncomment or add the `use_middle_proxy = true` parameter. -Config example: +Configuration example: ```toml [general] ad_tag = "1234567890abcdef1234567890abcdef" use_middle_proxy = true ``` -9. Save the config. Ctrl+S -> Ctrl+X. -10. Restart telemt `systemctl restart telemt`. -11. In the bot, send the command /myproxies and select the added server. +9. Save the changes (in nano: Ctrl+S -> Ctrl+X). +10. Restart the telemt service: `systemctl restart telemt`. +11. Send the `/myproxies` command to the bot and select the added server. 12. Click the "Set promotion" button. 13. Send a **public link** to the channel. Private channels cannot be added! -14. Wait approximately 1 hour for the information to update on Telegram servers. +14. Wait for about 1 hour for the information to update on Telegram servers. > [!WARNING] -> You will not see the "proxy sponsor" if you are already subscribed to the channel. +> The sponsored channel will not be displayed to you if you are already subscribed to it. -**You can also set up different channels for different users.** +**You can also configure different sponsored channels for different users:** ```toml [access.user_ad_tags] hello = "ad_tag" hello2 = "ad_tag2" ``` -## Why is middle proxy (ME) needed +## Why do you need a middle proxy (ME) https://github.com/telemt/telemt/discussions/167 -## How many people can use 1 link -By default, 1 link can be used by any number of people. -You can limit the number of IPs using the proxy. +## How many people can use one link + +By default, an unlimited number of people can use a single link. +However, you can limit the number of unique IP addresses for each user: ```toml [access.user_max_unique_ips] hello = 1 ``` -This parameter limits how many unique IPs can use 1 link simultaneously. If one user disconnects, a second user can connect. Also, multiple users can sit behind the same IP. +This parameter sets the maximum number of unique IP addresses from which a single link can be used simultaneously. If the first user disconnects, a second one can connect. At the same time, multiple users can connect from a single IP address simultaneously (for example, devices on the same Wi-Fi network). ## How to create multiple different links -1. Generate the required number of secrets `openssl rand -hex 16` -2. Open the config `nano /etc/telemt.toml` -3. Add new users. +1. Generate the required number of secrets using the command: `openssl rand -hex 16`. +2. Open the configuration file: `nano /etc/telemt/telemt.toml`. +3. Add new users to the `[access.users]` section: ```toml [access.users] user1 = "00000000000000000000000000000001" user2 = "00000000000000000000000000000002" user3 = "00000000000000000000000000000003" ``` -4. Save the config. Ctrl+S -> Ctrl+X. You don't need to restart telemt. -5. Get the links via +4. Save the configuration (Ctrl+S -> Ctrl+X). There is no need to restart the telemt service. +5. Get the ready-to-use links using the command: ```bash curl -s http://127.0.0.1:9091/v1/users | jq ``` -## "Unknown TLS SNI" Error -You probably updated tls_domain, but users are still connecting via old links with the previous domain. +## "Unknown TLS SNI" error +Usually, this error occurs if you have changed the `tls_domain` parameter, but users continue to connect using old links with the previous domain. + +If you need to allow connections with any domains (ignoring SNI mismatches), add the following parameters: +```toml +[censorship] +unknown_sni_action = "mask" +``` ## How to view metrics -1. Open the config `nano /etc/telemt/telemt.toml` -2. Add the following parameters +1. Open the configuration file: `nano /etc/telemt/telemt.toml`. +2. Add the following parameters: ```toml [server] metrics_port = 9090 metrics_whitelist = ["127.0.0.1/32", "::1/128", "0.0.0.0/0"] ``` -3. Save the config. Ctrl+S -> Ctrl+X. -4. Metrics are available at SERVER_IP:9090/metrics. +3. Save the changes (Ctrl+S -> Ctrl+X). +4. After that, metrics will be available at: `SERVER_IP:9090/metrics`. > [!WARNING] -> "0.0.0.0/0" in metrics_whitelist opens access from any IP. Replace with your own IP. For example "1.2.3.4" +> The value `"0.0.0.0/0"` in `metrics_whitelist` opens access to metrics from any IP address. It is recommended to replace it with your personal IP, for example: `"1.2.3.4/32"`. ## Additional parameters -### Domain in link instead of IP -To specify a domain in the links, add to the `[general.links]` section of the config file. +### Domain in the link instead of IP +To display a domain instead of an IP address in the connection links, add the following lines to the configuration file: ```toml [general.links] public_host = "proxy.example.com" ``` -### Server connection limit -Limits the total number of open connections to the server: +### Total server connection limit +This parameter limits the total number of active connections to the server: ```toml [server] max_connections = 10000 # 0 - unlimited, 10000 - default ``` ### Upstream Manager -To specify an upstream, add to the `[[upstreams]]` section of the config.toml file: -#### Binding to IP +To configure outbound connections (upstreams), add the corresponding parameters to the `[[upstreams]]` section of the configuration file: + +#### Binding to an outbound IP address ```toml [[upstreams]] type = "direct" weight = 1 enabled = true -interface = "192.168.1.100" # Change to your outgoing IP +interface = "192.168.1.100" # Replace with your outbound IP ``` -#### SOCKS4/5 as Upstream -- Without authentication: + +#### Using SOCKS4/5 as an Upstream +- Without authorization: ```toml [[upstreams]] type = "socks5" # Specify SOCKS4 or SOCKS5 @@ -116,7 +125,7 @@ weight = 1 # Set Weight for Scenarios enabled = true ``` -- With authentication: +- With authorization: ```toml [[upstreams]] type = "socks5" # Specify SOCKS4 or SOCKS5 @@ -127,8 +136,8 @@ weight = 1 # Set Weight for Scenarios enabled = true ``` -#### Shadowsocks as Upstream -Requires `use_middle_proxy = false`. +#### Using Shadowsocks as an Upstream +For this method to work, the `use_middle_proxy = false` parameter must be set. ```toml [general]