docs: create betrieb/turn-server
This commit is contained in:
committed by
ThreadNet Wiki
parent
3a70cddc44
commit
55dd4c2fd8
@@ -0,0 +1,63 @@
|
||||
---
|
||||
title: TURN Server
|
||||
description: coturn für WebRTC-Video-Calls
|
||||
published: true
|
||||
date: 2026-08-13T18:05:00.737Z
|
||||
tags:
|
||||
editor: markdown
|
||||
dateCreated: 2026-08-13T18:05:00.737Z
|
||||
---
|
||||
|
||||
**Status**: ✅ Vollständig deployed
|
||||
**Domain**: `turn.axion1337.chat`
|
||||
**Public IP**: `49.13.132.245`
|
||||
|
||||
## Problem & Lösung
|
||||
|
||||
Videocalls scheitern mit DTLS-Timeout bei Clients hinter NAT/Firewall. **Lösung**: coturn als TURN-Relay.
|
||||
|
||||
## Architektur
|
||||
|
||||
Client A ──→ coturn (turn.axion1337.chat) ──→ Client B
|
||||
|
||||
- **Ports**: 3478/udp, 3478/tcp, 5349/tcp, 49152-65535/udp
|
||||
- **Auth**: HMAC-basiert mit Shared Secret zwischen coturn + Synapse
|
||||
- **Deployment**: K3S Deployment mit `hostNetwork: true`
|
||||
|
||||
## Dateien (in `apps/production/`)
|
||||
|
||||
| Datei | Inhalt |
|
||||
|-------|--------|
|
||||
| `coturn.yaml` | ConfigMap + Deployment + Service |
|
||||
| `coturn-secret.yaml` | SOPS-Secret: `TURN_SECRET` |
|
||||
| `synapse-turn-secret.yaml` | SOPS-Secret: TURN URIs + shared secret für Synapse (seit 2026-07-28, vorher fälschlich im Klartext in `custom-configs/synapse-values.yaml` - siehe Issue #38) |
|
||||
| `turn-secret-rotation-secret.yaml` + `turn-secret-rotation.yaml` | Monatlicher automatisierter Rotations-CronJob (Issue #38) - eigener gescopter age-Key, öffnet PR statt direkt zu pushen |
|
||||
| `matrix-certificates.yaml` | cert-manager Cert für `turn.axion1337.chat` |
|
||||
|
||||
## DNS & Firewall (manuell)
|
||||
|
||||
```
|
||||
DNS A-Record: turn.axion1337.chat → 49.13.132.245
|
||||
|
||||
Firewall (K3S Host):
|
||||
ufw allow 3478/udp
|
||||
ufw allow 3478/tcp
|
||||
ufw allow 5349/tcp
|
||||
ufw allow 49152:65535/udp
|
||||
```
|
||||
|
||||
## Verifikation
|
||||
|
||||
```bash
|
||||
# Pod läuft?
|
||||
kubectl get pods -n matrix -l app=coturn
|
||||
|
||||
# Certificate ready?
|
||||
kubectl get certificate -n matrix | grep turn
|
||||
|
||||
# Extern testen
|
||||
docker run -it instrumentisto/coturn \
|
||||
turnutils_uclient -v -T -u test -w test turn.axion1337.chat
|
||||
```
|
||||
|
||||
**Weitere Details**: Siehe vollständige Dokumentation oben.
|
||||
Reference in New Issue
Block a user