Skip to content

openlibrecommunity/olcrtc

Repository files navigation

Westand

License Golang

RU / EN

olcRTC

olcRTC (OpenLibreCommunity RTC) is an encrypted TCP-over-WebRTC tunnel. Traffic is disguised as an ordinary video call on allowed services (Jitsi, Yandex Telemost, WbStream). Inside there is XChaCha20-Poly1305 encryption and smux multiplexing over WebRTC data/video channels.

Status: Beta

app -> SOCKS5 -> olcrtc cnc -> WebRTC/SFU service -> olcrtc srv -> internet

Important: make sure the video call service you need is on the allow lists and works in your network. If not, use another one.

Features

  • Providers: jitsi, telemost, wbstream
  • Transports: datachannel, vp8channel, seichannel, videochannel
  • Platforms: Linux, macOS, Windows, Android (gomobile), embeddable Go library

Recommended start: jitsi + datachannel.

Quick start

Generate a shared key (the same on server and client):

openssl rand -hex 32

You need Podman and git.

git clone https://github.com/openlibrecommunity/olcrtc --recurse-submodules
cd olcrtc
./scripts/srv.sh

Full instructions are in docs/fast.md and docs/manual.md.

Documentation

Document Contents
about.md architecture, providers, transports, public API
fast.md quick start for newcomers
manual.md manual build
configuration.md YAML setup
settings.md compatibility matrix
uri.md client URI format
sub.md subscription format

Build

mage build   # current platform
mage cross   # cross-compilation
mage test    # tests
mage lint    # golangci-lint
mage mobile  # gomobile bindings (Android)

Community

License

WTFPL


Telegram: zarazaex
Email: zarazaex@tuta.io
Site: zarazaex.xyz

About

olcrtc - implementation of bb22 using legal meet services to access web outside the whitelist

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

1.7k stars

Watchers

27 watching

Forks

Contributors