mirror of
https://github.com/hackdiaz-dev/free-turn-proxy.git
synced 2026-10-12 09:41:53 +02:00
f1b047e9e5
Клиент всегда отправляет Client ID первой DTLS app-record, сервер всегда читает. Флаг -auth и URI-параметр auth удалены — рассинхрон client/server невозможен. -clients-file на сервере включает только проверку ID по allowlist clients.json. Также: - clients.json и client_config.json пишутся с правами 0o600 - исправлены все находки golangci-lint (errcheck, gosec, govet shadow) Примечание: удалён флаг -auth и URI-параметр auth; Client ID теперь всегда в первой записи туннеля — старые клиенты/серверы несовместимы.
45 lines
2.1 KiB
Markdown
45 lines
2.1 KiB
Markdown
# Формат подписок `sub.md`
|
|
|
|
Для удобного распространения списка серверов `Free Turn Proxy` поддерживает систему подписок.
|
|
Файл `sub.md` — это обычный текстовый файл, который хостится на любом HTTP-сервере.
|
|
|
|
## Использование в клиенте
|
|
|
|
```bash
|
|
./client -sub https://example.com/sub.md -link "https://vk.com/call/join/..."
|
|
```
|
|
|
|
Клиент скачает подписку, найдет первый доступный сервер и автоматически применит его конфигурацию. Уникальная ссылка `-link` по-прежнему требуется.
|
|
|
|
> [!NOTE]
|
|
> **Про авторизацию:** клиент всегда шлёт Client ID, сервер всегда его читает. Чтобы ограничить доступ, запустите сервер с `-clients-file` и добавьте нужные ID в `clients.json`; без этого флага ID просто игнорируется.
|
|
|
|
## Формат файла
|
|
|
|
Файл состоит из глобальных параметров (начинаются с `#`), локальных параметров сервера (начинаются с `##`) и самих [freeturn://](uri.md) ссылок.
|
|
|
|
Пример:
|
|
|
|
```text
|
|
#name: Free Turn Proxy Servers
|
|
#refresh: 1h
|
|
#color: #4A90E2
|
|
|
|
freeturn://vk?tcp<mode=udp&obf-profile=rtpopus>@1.2.3.4:56000#d823fa...$RU-Server
|
|
##name: RU-1
|
|
##ip: 1.2.3.4
|
|
##comment: Основной сервер в Москве
|
|
|
|
freeturn://vk?udp<mode=udp&obf-profile=rtpopus>@5.6.7.8:56000#abc123...$EU-Backup
|
|
##name: EU-Backup
|
|
##comment: Резервный сервер
|
|
```
|
|
|
|
| Поле | Описание |
|
|
|------|----------|
|
|
| `#name` | Имя подписки. |
|
|
| `#refresh` | Рекомендуемый интервал обновления. |
|
|
| `##name` | Имя конкретного узла. |
|
|
| `##ip` | IP-адрес узла. |
|
|
| `##comment` | Комментарий для сервера. |
|