Tools
mumpeer
Ett litet relä för Mumcords direktanslutningar mellan användare, till exempel för skärmdelning eller bilder i full storlek. När två personer inte kan nå varandra direkt, bakom CGNAT, strikta brandväggar eller i nätverk utan UDP, eller inte vill visa sin IP-adress, ansluter båda i stället till reläet. Det skickar bara vidare de krypterade paketen, som en TURN-server.
Bredvid din Mumble-server
En community kör mumpeer bredvid sin Mumble-server, tillsammans med relä-boten mumbot peer. Boten annonserar reläet och delar ut kortlivade tokens. Mumble-servern förblir oförändrad.
Bara verifierade användare
En token gäller bara för exakt två certifikat, en gång per sida och som standard i 120 sekunder. Reläet skickar aldrig vidare någon annanstans och öppnar aldrig anslutningar själv, så det är inte en öppen proxy.
Krypterat från ände till ände
Det som går genom reläet är en separat krypterad anslutning mellan de två användarna, knuten till deras Mumble-certifikat. Reläet kan varken läsa eller ändra den.
Genom nästan vilken brandvägg som helst
QUIC över UDP eller, där UDP är blockerat, TLS över TCP. Båda på port 443 och med TLS 1.3.
Helt valfritt
Mumcord fungerar också utan bot och relä. I Mumcord väljer du själv: relä av, bara när en direktanslutning misslyckas, eller alltid.
Vad operatören kan se
- IP-adresserna för båda användarna i en session
- Vilka två certifikat som pratar med varandra
- Hur mycket data som flödar och när
- Inte innehållet: det är krypterat från ände till ände. Mumcord berättar det för dig innan du använder ett relä
- Loggas aldrig: fullständiga IP-adresser, fullständiga certifikat-hashar, tokens och paketinnehåll
Kör det med Docker
Lägg en lång slumpmässig hemlighet i .env som PEER_API_SECRET (till exempel från openssl rand -hex 32). Spara mumpeer.example.toml från Mumbots reläexempel som mumpeer.toml och ange public_host i den, och bot.example.toml som bot.toml. Starta sedan relä och bot tillsammans:
services:
mumpeer:
image: ghcr.io/mumcord/mumpeer:0.1.0
restart: unless-stopped
environment:
MUMPEER_API_SECRET: ${PEER_API_SECRET:?set PEER_API_SECRET in .env}
ports: ["443:443/udp", "443:443/tcp"]
volumes:
- ./mumpeer.toml:/config/mumpeer.toml:ro
- mumpeer-data:/var/lib/mumpeer
mumbot:
image: ghcr.io/mumcord/mumbot:0.2.0
command: ["peer"]
restart: unless-stopped
network_mode: "service:mumpeer"
environment:
MUMBOT_CONFIG: /config/bot.toml
MUMBOT_PEER_API_SECRET: ${PEER_API_SECRET:?set PEER_API_SECRET in .env}
volumes:
- ./bot.toml:/config/bot.toml:ro
- mumbot-data:/data
healthcheck:
disable: true
volumes:
mumpeer-data:
mumbot-data: Vid första starten visas reläets fingeravtryck i loggen. Boten annonserar det till Mumcord, inget annat behöver delas. Öppna UDP och TCP på port 443, API:et stannar mellan reläet och boten. Mumcord använder reläet från version 0.5.0.