Tools

mumpeer

Mali relay za izravne veze Mumcorda između korisnika, na primjer za dijeljenje zaslona ili slike u punoj veličini. Kad se dvoje ljudi ne mogu dosegnuti izravno, iza CGNAT-a, strogih vatrozida ili u mrežama bez UDP-a, ili ne žele pokazati svoju IP adresu, oboje se umjesto toga spajaju na relay. On samo prosljeđuje šifrirane pakete, kao TURN poslužitelj.

Najnovija verzija: v0.1.0

Uz tvoj Mumble poslužitelj

Zajednica pokreće mumpeer uz svoj Mumble poslužitelj, zajedno s relay botom mumbot peer. Bot objavljuje relay i dijeli kratkotrajne tokene. Mumble poslužitelj ostaje neizmijenjen.

Samo provjereni korisnici

Token vrijedi samo za točno dva certifikata, jednom po strani i prema zadanim postavkama 120 sekundi. Relay nikad ne prosljeđuje drugdje i nikad sam ne otvara veze, pa nije otvoreni proxy.

Šifrirano s kraja na kraj

Ono što prolazi kroz relay zasebna je šifrirana veza između dvaju korisnika, vezana uz njihove Mumble certifikate. Relay je ne može ni čitati ni mijenjati.

Kroz gotovo svaki vatrozid

QUIC preko UDP-a ili, gdje je UDP blokiran, TLS preko TCP-a. Oboje na portu 443 i s TLS 1.3.

Posve neobavezno

Mumcord radi i bez bota i relaya. U Mumcordu biraš ti: relay isključen, samo kad izravna veza ne uspije, ili uvijek.

Što operator može vidjeti

  • IP adrese oba korisnika sesije
  • Koja dva certifikata razgovaraju
  • Koliko podataka teče i kada
  • Ne sadržaj: on je šifriran s kraja na kraj. Mumcord ti to kaže prije nego što upotrijebiš relay
  • Nikad se ne bilježe: pune IP adrese, puni hashevi certifikata, tokeni i sadržaj paketa

Pokreni ga s Dockerom

Stavi dugu nasumičnu tajnu u .env kao PEER_API_SECRET (na primjer iz openssl rand -hex 32). Iz Mumbotova primjera relaya spremi mumpeer.example.toml kao mumpeer.toml i u njemu postavi public_host, te bot.example.toml kao bot.toml. Zatim pokreni relay i bota zajedno:

docker-compose.yml
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:

Pri prvom pokretanju otisak relaya prikazuje se u logu. Bot ga objavljuje Mumcordu, ništa drugo ne treba dijeliti. Otvori UDP i TCP na portu 443, API ostaje između relaya i bota. Mumcord koristi relay od verzije 0.5.0.

Suradnici

Izvorni kod Cijeli vodič u README-u → Ideje i greške →