Skip to content

Matrix.org / Continuwuity Stack

Das Projekt wird einen eignen Matrix Homeserver inkl. Call-Funktionalität aufsetzen. Dabei sind folgende Komponenten inkludiert:

Continuwuity

Continuwuity stellt den Kern des Stack dar, und ist dabei ein Fork von Conduwuit, welches wiederum ein Fork von Conduit ist. Im Vergleich zu Synapse (der Referenz-Implementierung des Matrix Standards) ist Continuwuity wesentlich 'light-weighter' und performanter, unter anderem weil es in Rust implementiert ist, erfüllt allerdings vereinzelt den Standard nicht vollständig.

Folgende Interaktionen müssen konfiguriert werden:

  • Entrypoint
  • Entrypoint für Federation (Port 8448)
  • IDP für Authentication
  • RockyDB für Storage
  • Separater Mount für Media
  • .well-known config für LiveKit

LiveKit

LiveKit ist eine Video-Konferenz-Software, welche einigermaßen direkt mit Continuwuity integriert werden kann.

Interaktionen:

  • Entrypoint (Port 7881)
  • Port range für Calls
  • Coturn / TURN-Server für NAT punching
  • LiveKit JWT Service

Jitsi (Fallback Lösung)

Alternative Video-Konferenz-Software, intergriert mit Matrix via Widgets.

Interaktionen TBD

Monitoring

TBD; Wenn es die Zeit zulässt

Honeypot

TBD

System

Das System selbst soll via Standard Debian laufen, aber werden via Ansible provisioniert. Die Services werden ebenso deklarativ via Docker Compose provisioniert werden.

Deployment Architecture - Matrix Carve-out

InternetGood Vibes to keep out the MalwareCloud (Hetzner)VPSBlock VolumeStorage Box ADebian plus Ansible/mnt/data01/mnt/data02DockerDocker Host NetworkCaddy (caddy-docker-proxy)Pocket IDContinuwuitycoturnLiveKitlk-jwt-serviceHoneyPot Credentials for peer-to-peer:8448WebSocket (:7880)/sfu/get*, /healthz*, /get_token* missing implementationRocksDB Media (missing implementation)CIFS/NFS (tbd):3478, :3478/udp, :5349, :5349/udp, :49152-65535/udp:7881, :50100-50200/udp:80, :443, :8448:22, :80, :443