Files
free-turn-proxy/docker/entrypoint.sh
T
samosvalishe e061345089 feat: авторизация по client-id, freeturn:// URI и подписки
- internal/clientsdb: БД клиентов с hot-reload + length-prefixed ID wire
- internal/uri: parse/encode share-ссылок freeturn://
- internal/sub: загрузка и парсинг подписок (sub.md)
- client: флаги -auth, -client-id, -sub; позиционный URI; ID через crypto/rand
- server: подкоманда clients (add/remove/list), чтение ID под -clients-file
- запись/чтение ID учитывают DTLS record-orientation (буфер на запись целиком)
- docs: uri.md, sub.md; правки flags/deploy/quickstart
- снят UTF-8 BOM по всем исходникам
2026-05-24 01:14:38 +03:00

32 lines
683 B
Bash

#!/bin/sh
set -e
CONNECT="${CONNECT_ADDR:?CONNECT_ADDR is required}"
LISTEN="${LISTEN_ADDR:-0.0.0.0:56000}"
case "$CONNECT" in
*:*) ;;
*) echo "CONNECT_ADDR must be in host:port format" >&2; exit 1 ;;
esac
set -- -listen "$LISTEN" -connect "$CONNECT"
if [ "${MODE}" = "tcp" ]; then
set -- "$@" -mode tcp
fi
if [ -n "${OBF_PROFILE}" ] && [ "${OBF_PROFILE}" != "none" ]; then
OBF="${OBF_KEY:?OBF_KEY is required when OBF_PROFILE != none}"
set -- "$@" -obf-profile "$OBF_PROFILE" -obf-key "$OBF"
fi
if [ "${DEBUG}" = "true" ]; then
set -- "$@" -debug
fi
if [ -n "${CLIENTS_FILE}" ]; then
set -- "$@" -clients-file "${CLIENTS_FILE}"
fi
exec ./server "$@"