Centralised chat apps own your identity, your contacts and your message history — and can lock any of it away. Matrix is an open, federated protocol for end-to-end encrypted messaging, and Synapse is its reference homeserver. Run it on a VPS and your account, rooms and history live on a server you control — with bridges to other networks and no platform gatekeeper. Pay for the server in crypto, no KYC.
What Synapse needs
- A dedicated IPv4, a domain and HTTPS. Clients use
https://matrix.yourdomain.comand federation uses port 8448 — so you need a domain, valid TLS and inbound ports, a dedicated-IP plan. NAT plans don't take inbound. A Small or Medium plan is a sensible start. - RAM for federation + Postgres. Synapse uses more memory than a static site; more RAM keeps it responsive as you federate and grow rooms.
- Disk for media and history. Scale disk to your uploads and message retention.
Set it up (Ubuntu 24.04, Docker)
# docker-compose.yml — Matrix Synapse + PostgreSQL (client API proxied on 443, federation 8448)
services:
synapse:
image: matrixdotorg/synapse:latest
restart: always
environment:
SYNAPSE_SERVER_NAME: yourdomain.com
SYNAPSE_REPORT_STATS: "no"
volumes: ["/srv/synapse:/data"]
ports:
- "127.0.0.1:8008:8008" # client API (proxied by Caddy)
- "8448:8448" # server-to-server federation
depends_on: [db]
db:
image: postgres:16-alpine
restart: always
environment:
POSTGRES_USER: synapse
POSTGRES_PASSWORD: change-me-strong
POSTGRES_DB: synapse
POSTGRES_INITDB_ARGS: "--encoding=UTF8 --locale=C"
volumes: ["/srv/synapse-db:/var/lib/postgresql/data"]
Put a TLS reverse proxy in front of the client API:
# TLS + reverse proxy for the client API; matrix.yourdomain.com resolves to your dedicated IP
apt install -y caddy
echo 'matrix.yourdomain.com { reverse_proxy 127.0.0.1:8008 }' > /etc/caddy/Caddyfile
systemctl restart caddy && ufw allow 80,443,8448/tcp
Generate the config, create your first user with register_new_matrix_user, then log in from Element (web/desktop/mobile) pointed at matrix.yourdomain.com — chat you own and federate.
Make it yours
- End-to-end encryption per room; you hold nothing readable as the operator.
- Federation policy — open, invite-only, or a closed private server.
- Bridges to IRC, Telegram, Signal and more; voice/video via Element Call.
- Keep Postgres on localhost; expose 443 (client) and 8448 (federation).
Why EQVPS for Matrix Synapse
- Dedicated IPv4 from $8/mo, domain + HTTPS friendly, all ports, self-service rDNS.
- EU locations (Germany, Finland) — clean routes, real data-protection law.
- No KYC, crypto payment. Email to register, USDC/USDT to pay — fitting for private, federated chat.
- Root in ~60 seconds, NVMe. Bring up the stack, add Caddy, and your homeserver is live.
Self-host Nextcloud (files, calendar) → · Anonymous VPS hosting explained →
Comments
No comments yet. Be the first.