SHA256
Deploy: расширить relay-range coturn
This commit is contained in:
@@ -45,6 +45,11 @@
|
|||||||
- `docs/Solana_Architecture/README.md`
|
- `docs/Solana_Architecture/README.md`
|
||||||
- Документ формата пользовательской PDA-записи `shine_users` находится в:
|
- Документ формата пользовательской PDA-записи `shine_users` находится в:
|
||||||
- `shine-solana/shine/doc/formats/shine-user-pda-format-v.1.0.md`
|
- `shine-solana/shine/doc/formats/shine-user-pda-format-v.1.0.md`
|
||||||
|
- Актуальная документация по серверному модулю синхронизации Solana users находится в:
|
||||||
|
- `docs/Solana/SOLANA_USERS_SYNC_MODULE_DESIGN.md`
|
||||||
|
- При любом изменении логики серверной синхронизации `shine_users`, её таблиц PostgreSQL, checkpoint-механизма, startup/lifecycle или deploy-настроек обязательно обновлять:
|
||||||
|
- `docs/Solana/SOLANA_USERS_SYNC_MODULE_DESIGN.md`
|
||||||
|
- `deploy/SOLANA_USERS_SYNC_SERVER_SETUP.md`
|
||||||
|
|
||||||
## Документация блокчейна
|
## Документация блокчейна
|
||||||
- Актуальная документация по форматам блокчейна находится в `docs/Blockchain/README.md`.
|
- Актуальная документация по форматам блокчейна находится в `docs/Blockchain/README.md`.
|
||||||
|
|||||||
@@ -25,6 +25,9 @@ sudo apt install -y coturn caddy
|
|||||||
sudo bash deploy/scripts/setup_turn_coturn.sh --realm turn1.shineup.me --secret CHANGE_ME_LONG_RANDOM_SECRET
|
sudo bash deploy/scripts/setup_turn_coturn.sh --realm turn1.shineup.me --secret CHANGE_ME_LONG_RANDOM_SECRET
|
||||||
```
|
```
|
||||||
|
|
||||||
|
По умолчанию этот скрипт настраивает relay-диапазон `49000-53999`.
|
||||||
|
Это стандарт SHiNE: 5000 UDP-портов под TURN relay.
|
||||||
|
|
||||||
## 3. coturn
|
## 3. coturn
|
||||||
|
|
||||||
Секреты не хранить в git. Настраивать на сервере через `/etc/turnserver.conf` или отдельный secret/override.
|
Секреты не хранить в git. Настраивать на сервере через `/etc/turnserver.conf` или отдельный secret/override.
|
||||||
@@ -44,6 +47,14 @@ no-multicast-peers
|
|||||||
no-cli
|
no-cli
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Для SHiNE держать relay-range большим сразу, чтобы не упираться в `create_relay_ioa_sockets: no available ports`.
|
||||||
|
Стандартный диапазон:
|
||||||
|
|
||||||
|
```conf
|
||||||
|
min-port=49000
|
||||||
|
max-port=53999
|
||||||
|
```
|
||||||
|
|
||||||
Включить сервис:
|
Включить сервис:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -83,3 +94,4 @@ sudo ss -lntup | grep -E ':(3478|5349)'
|
|||||||
- TURN credentials и shared secret не коммитить.
|
- TURN credentials и shared secret не коммитить.
|
||||||
- Если TURN домен переносится на другой VPS, менять DNS, а не код приложения.
|
- Если TURN домен переносится на другой VPS, менять DNS, а не код приложения.
|
||||||
- После изменения TURN-адресов обновить серверные/UI настройки, где они используются.
|
- После изменения TURN-адресов обновить серверные/UI настройки, где они используются.
|
||||||
|
- Не сужать relay-range ниже 5000 UDP-портов без явной причины: для SHiNE это уже приводило к отказам звонков на проде `24 июля 2026`.
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ TURN нужен для WebRTC-звонков, когда прямое peer-to-pe
|
|||||||
- DNS каждого `turnX.shineup.me` указывает на актуальный физический сервер TURN.
|
- DNS каждого `turnX.shineup.me` указывает на актуальный физический сервер TURN.
|
||||||
- TLS/HTTPS и вспомогательная маршрутизация обслуживаются через Caddy, если на сервере есть web endpoint для проверки.
|
- TLS/HTTPS и вспомогательная маршрутизация обслуживаются через Caddy, если на сервере есть web endpoint для проверки.
|
||||||
- `coturn` слушает TURN/STUN порты согласно локальному `turnserver.conf`.
|
- `coturn` слушает TURN/STUN порты согласно локальному `turnserver.conf`.
|
||||||
|
- Стандартный relay-range SHiNE: `49000-53999` (`5000` UDP-портов).
|
||||||
- Секреты TURN не хранить в git.
|
- Секреты TURN не хранить в git.
|
||||||
|
|
||||||
## Что проверять
|
## Что проверять
|
||||||
|
|||||||
@@ -9,8 +9,8 @@ set -euo pipefail
|
|||||||
|
|
||||||
SECRET=""
|
SECRET=""
|
||||||
REALM="turn1.shineup.me"
|
REALM="turn1.shineup.me"
|
||||||
MIN_PORT="49160"
|
MIN_PORT="49000"
|
||||||
MAX_PORT="49200"
|
MAX_PORT="53999"
|
||||||
|
|
||||||
while [[ $# -gt 0 ]]; do
|
while [[ $# -gt 0 ]]; do
|
||||||
case "$1" in
|
case "$1" in
|
||||||
@@ -23,11 +23,11 @@ while [[ $# -gt 0 ]]; do
|
|||||||
shift 2
|
shift 2
|
||||||
;;
|
;;
|
||||||
--min-port)
|
--min-port)
|
||||||
MIN_PORT="${2:-49160}"
|
MIN_PORT="${2:-49000}"
|
||||||
shift 2
|
shift 2
|
||||||
;;
|
;;
|
||||||
--max-port)
|
--max-port)
|
||||||
MAX_PORT="${2:-49200}"
|
MAX_PORT="${2:-53999}"
|
||||||
shift 2
|
shift 2
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@@ -87,6 +87,8 @@ systemctl --no-pager --full status coturn
|
|||||||
|
|
||||||
echo
|
echo
|
||||||
echo "coturn настроен."
|
echo "coturn настроен."
|
||||||
|
echo "Стандартный relay-range SHiNE: ${MIN_PORT}-${MAX_PORT}."
|
||||||
|
echo "Рекомендуемый размер диапазона: не меньше 5000 UDP-портов."
|
||||||
echo "Откройте firewall: 3478/tcp, 3478/udp, ${MIN_PORT}-${MAX_PORT}/udp"
|
echo "Откройте firewall: 3478/tcp, 3478/udp, ${MIN_PORT}-${MAX_PORT}/udp"
|
||||||
echo "Для SHiNE-сервера задайте такой же shared-secret в параметре:"
|
echo "Для SHiNE-сервера задайте такой же shared-secret в параметре:"
|
||||||
echo " -Dcall.ice.turn.sharedSecret=${SECRET}"
|
echo " -Dcall.ice.turn.sharedSecret=${SECRET}"
|
||||||
|
|||||||
Reference in New Issue
Block a user