Server quick start
Get a server running in under 10 minutes.
Prerequisites
Section titled “Prerequisites”- A machine with a public IP address (Linux, FreeBSD, or macOS)
- Port 443 open in your firewall/security group
- Root or sudo access
1. Install
Section titled “1. Install”Download the binary for your platform (rchat-server-x86_64-linux-gnu, rchat-server-aarch64-linux-gnu or rchat-server-x86_64-freebsd) from the releases page, then install it:
chmod +x rchat-server-*sudo mv rchat-server-* /usr/local/bin/rchat-serverSee Server Installation for all available binaries and checksum verification.
Verify it works:
rchat-server --help2. Obtain a TLS certificate
Section titled “2. Obtain a TLS certificate”rChat requires a valid TLS certificate for the domain clients connect to.
Using Let’s Encrypt (certbot):
sudo apt install certbotsudo certbot certonly --standalone -d your-domain.comYour certificate files will be at:
/etc/letsencrypt/live/your-domain.com/fullchain.pem/etc/letsencrypt/live/your-domain.com/privkey.pem
3. Create a configuration file
Section titled “3. Create a configuration file”sudo mkdir -p /etc/rchatsudo nano /etc/rchat/server.toml[server]bind_addr = "0.0.0.0:443"max_connections = 100000rate_limit_bps = 1048576circuit_ttl_secs = 3600connection_timeout_secs = 300
[server.tls]cert_path = "/etc/letsencrypt/live/your-domain.com/fullchain.pem"key_path = "/etc/letsencrypt/live/your-domain.com/privkey.pem"4. Start the server
Section titled “4. Start the server”sudo rchat-server --config /etc/rchat/server.tomlYou should see output like:
INFO Listening on 0.0.0.0:443INFO WebSocket endpoint: /wsINFO Max connections: 100000Once confirmed working, set it up as a systemd service to run on boot.
5. Share the server address
Section titled “5. Share the server address”Clients connect to:
wss://your-domain.com/wsGive your users the server address. No prekey bundle or server identity file is needed — rChat clients authenticate each other directly.
Next steps
Section titled “Next steps”- Run as a systemd service
- Set up a reverse proxy — Caddy, nginx, or HAProxy with TLS 1.3
- Full server configuration options
- Set up the iOS app
- Set up the macOS app
- Set up the CLI client
- Troubleshooting