Tüm sistemler çalışır durumda 21 kabul edilen kripto paralar · Monero hoş karşılanır KYC'siz politika
ChainVPS

Sohbet · KYC yok

Matrix (Synapse)'i Offshore VPS Üzerinde Barındırın

Kendi Matrix homeserver'ınızı offshore, KYC'siz bir VPS üzerinde çalıştırın ve uçtan uca şifrelenmiş, federe sohbet ağınızın anahtarlarını elinizde tutun.

Bu nedir

Synapse, merkeziyetsiz, uçtan uca şifrelenmiş gerçek zamanlı sohbet, sesli ve görüntülü iletişim için açık bir protokol olan Matrix'in referans sunucu uygulamasıdır. Synapse'i kendi sunucunuzda barındırmak, geniş Matrix ağıyla federe olabilen ya da tamamen özel kalabilen kendi homeserver'ınızı size verir; her mesaj, medya dosyası ve hesap tamamen kontrolünüzdeki donanımda barınır.

Neden offshore barındırma

Sohbet metadata'sı (kimin kiminle, ne zaman ve nereden konuştuğu) tam olarak merkezi platformların ve barındırıldıkları yargı bölgelerinin kaydedip teslim ettiği türden bir veridir. Kripto ile ödenen, KYC'siz, offshore bir VPS üzerinde, topluluğunuzun mesajlarını ve şifreleme anahtarlarını barındıran homeserver hiçbir gerçek dünya kimliğine kayıtlı değildir ve kendi ülkenizin erişiminin dışında, gizliliğe duyarlı bir yargı bölgesinde bulunur.

Dağıtım

Çalışan bir referans kurulum

Bunu yeni bir ChainVPS örneğine kopyalayın. Yer tutucuları değiştirin, ardından çalıştırın.

docker-compose.yml
# ── One-time setup, run in order on Ubuntu 24.04 (Docker + compose-plugin installed) ──
#
# 1. Generate Synapse's config (replace matrix.example.com with your real domain):
#    mkdir -p synapse-data pgdata
#    docker run --rm -v "$(pwd)/synapse-data:/data" \
#      -e SYNAPSE_SERVER_NAME=matrix.example.com \
#      -e SYNAPSE_REPORT_STATS=no \
#      ghcr.io/element-hq/synapse:latest generate
#
# 2. In synapse-data/homeserver.yaml, REPLACE the generated sqlite `database:`
#    block with the postgres block shown at the bottom of this file, and add
#    `x_forwarded: true` under the port-8008 listener (you are behind a proxy).
#
# 3. Bring the stack up:  docker compose up -d
#
# 4. Create your admin user:
#    docker compose exec synapse register_new_matrix_user \
#      -u admin -a -c /data/homeserver.yaml http://localhost:8008
#
# 5. Put a TLS reverse proxy (Caddy/nginx) on 443 -> 127.0.0.1:8008 and serve
#    /.well-known/matrix/server + /.well-known/matrix/client for federation.

services:
  db:
    image: postgres:16-alpine
    restart: unless-stopped
    environment:
      POSTGRES_USER: synapse
      POSTGRES_PASSWORD: CHANGE_ME_STRONG_DB_PASSWORD
      POSTGRES_DB: synapse
      # Synapse REQUIRES the DB to use C locale — this is a hard requirement:
      POSTGRES_INITDB_ARGS: "--encoding=UTF8 --locale=C"
    volumes:
      - ./pgdata:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U synapse"]
      interval: 10s
      timeout: 5s
      retries: 5

  synapse:
    image: ghcr.io/element-hq/synapse:latest
    restart: unless-stopped
    depends_on:
      db:
        condition: service_healthy
    environment:
      SYNAPSE_SERVER_NAME: matrix.example.com
      SYNAPSE_REPORT_STATS: "no"
    volumes:
      - ./synapse-data:/data
    ports:
      # Client + federation HTTP. Bound to localhost — TLS is terminated by
      # your reverse proxy. Never expose 8008 to the internet in the clear.
      - "127.0.0.1:8008:8008"

# ── Paste this into synapse-data/homeserver.yaml, replacing the sqlite block ──
# database:
#   name: psycopg2
#   args:
#     user: synapse
#     password: CHANGE_ME_STRONG_DB_PASSWORD
#     dbname: synapse
#     host: db
#     port: 5432
#     cp_min: 5
#     cp_max: 10

Güvenlik duvarı

Açılması gereken portlar

PortProtokolAmaç
443TCPHTTPS reverse proxy: Element/istemci API'si + /.well-known federasyon delegasyonu (internete açık olması gereken tek port)
8008TCPSynapse istemci+federasyon HTTP dinleyicisi — yalnızca 127.0.0.1'e bağlayın, TLS proxy tarafından yönetilir
8448TCPİsteğe bağlı doğrudan federasyon portu; yalnızca .well-known delegasyonu kullanmıyorsanız gereklidir (kendi TLS'ini gerektirir)
5432TCPPostgreSQL — yalnızca dahili Docker ağı, asla host'a veya internete açılmamalıdır

Doğru boyutlandırma

Hangi plana ihtiyacınız var

Hafif

VPS Nano / Small (2 vCPU, 2-4 GB RAM)

Kişisel ya da aile sunucusu, ~10 kullanıcının altında, az ya da hiç federasyon yok. Synapse bellek açısından açgözlüdür — 2 GB gerçekçi alt sınırdır, büyük genel odalara katılıyorsanız 4 GB önerilir.

Orta

VPS Pro (4 vCPU, 8 GB RAM)

Onlarca ile birkaç yüz kullanıcı arasında, aktif federasyona sahip küçük bir topluluk. Synapse önbelleklerini ve Postgres shared_buffers ayarını optimize edin; medya ve veritabanı için SSD depolama önemlidir.

Yoğun

Dedicated (8+ cores, 16-32 GB RAM)

Yüzlerce ile binlerce kullanıcı ya da çok büyük federe odalara üyelik. Synapse'i worker'lara bölün (federation sender, sync, media) ve Postgres'e kendi optimizasyonunu yapın; ölçülmeyen bant genişliği medya/federasyon trafiğinin sınırsız kalmasını sağlar.

En iyi konumlar: Bir iletişim sunucusu için gizlilik katmanındaki bir konum seçin: İsviçre ve İzlanda güçlü veri koruma yargı bölgeleri sunar ve mesaj metadata'sı ile anahtarları barındıran bir homeserver için doğal birer yuvadır; Hollanda ve Lüksemburg ise Avrupa'ya düşük gecikmeli, iyi peering'e sahip rotalar sağlayarak daha akıcı gerçek zamanlı sohbet ve sesli görüşme sunar. Matrix gerçek zamanlı çalıştığından, ana kullanıcı kitlenize en yakın gizlilik katmanındaki bölgeyi tercih edin; ölçülmeyen bant genişliği ve dahil DDoS koruması önemlidir, çünkü federe, internete açık bir homeserver sürekli bir hedeftir.

Sıkı güvenlik altına alın

Sıkılaştırma kontrol listesi

  • Açık kaydı devre dışı bırakın: enable_registration: false olarak ayarlayın ya da kayıtları davet başına token ile registration_requires_token arkasına kilitleyin — açık bir Matrix sunucusu günler içinde bulunur ve spam botlarıyla doldurulur.
  • Federasyon kontrolü: server_name'inizin temiz kalması için (@user:example.com) /.well-known/matrix/server delegasyonunu kullanın ve sunucu özel ise bilinmeyen sunucuların size ulaşmasını engellemek için federation_domain_whitelist ayarlayın (ya da federasyonu tamamen devre dışı bırakın).
  • URL önizlemelerini ve medyayı kilitleyin: url_preview_enabled sunucu tarafında keyfi URL'leri çeker (SSRF riski) — özel aralıklar için varsayılan url_preview_ip_range_blacklist'i koruyun, max_upload_size'ı sınırlayın ve medya depolama sınırsız büyüdüğü için periyodik medya saklama/temizleme işlemleri çalıştırın.
  • Proxy arkasında rate limit'leri sıkılaştırın: Synapse'in gerçek istemci IP'lerini görmesi için 8008 dinleyicisinde x_forwarded: true ayarlayın, ardından brute-force ve kötüye kullanımı azaltmak için rc_login, rc_registration ve rc_message ayarlarını optimize edin; ChainVPS DDoS koruması bunun altındaki L3/4 katmanını kapsar.
  • Postgres'i ve signing key'i yedekleyin: veritabanını düzenli olarak dump edin ve synapse-data/*.signing.key dosyasını site dışına kopyalayın — signing key'i kaybetmek, sunucu kimliğinizin ve tüm federasyon güveninin kalıcı olarak yok olması anlamına gelir.
  • Güncel tutun: ghcr.io/element-hq/synapse etiketini sabitleyip düzenli olarak güncelleyin, report_stats: no ayarını koruyun ve 8008 veya 5432 portlarını asla internete açmayın — yalnızca 443 (ve isteğe bağlı olarak 8448) erişilebilir olmalıdır.

Sorular

Hosting Matrix (Synapse) — SSS

Kendi alan adıma ihtiyacım var mı?

Evet. Matrix kullanıcı kimlikleri ve federasyon bir alan adına bağlıdır (örn. @you:example.com). VPS'e yönlendirmek ve /.well-known federasyon kayıtlarını sunmak için DNS'ini kontrol ettiğiniz bir alan adına ihtiyacınız var. Alan adı, gizliliğe saygılı bir kayıt şirketi üzerinden alınabilir; sunucunun kendisi KYC'siz kalır.

Synapse'i tamamen özel, federasyon olmadan çalıştırabilir miyim?

Evet. Homeserver'ınızın genel Matrix ağıyla hiç konuşmaması için boş bir federation_domain_whitelist ayarlayın ya da federasyon dinleyicisini kaldırın. Kullanıcılarınız yine de tamamen offshore sunucunuzda, aralarında tam uçtan uca şifrelenmiş sohbet, sesli ve görüntülü iletişim alır.

Neden varsayılan SQLite yerine PostgreSQL?

Synapse yalnızca hızlı test için SQLite ile birlikte gelir. Eşzamanlılığı ya da federasyon yükünü kaldıramaz ve worker'larla ölçeklenemez. Herhangi bir gerçek dağıtım, C locale ile oluşturulmuş PostgreSQL kullanmalıdır (yukarıdaki compose dosyası bunu sizin için yapar); daha sonra geçiş yapmak sıkıntılıdır, bu yüzden en baştan Postgres ile başlayın.

Synapse gerçekten ne kadar RAM'e ihtiyaç duyar?

İnsanların beklediğinden daha fazla. Sessiz, tek kullanıcılı bir sunucu ~1.5-2 GB'a sığar, ancak büyük federe odalara katıldığınız anda oda başına önbellekler belleği şişirir. Küçük bir topluluk için 4 GB ayırın ve önbellekleri (caches: global_factor) kontrolsüz büyümesine izin vermek yerine RAM'inize göre ölçeklendirin.

Kullanıcılarım hangi istemciyi kurmalı?

Element (web, masaüstü, iOS, Android) standart Matrix istemcisidir ve URL'sini girerek homeserver'ınıza bağlanır. 443 üzerinden sunduğunuz /.well-known/matrix/client kaydı, Element'in yalnızca bir kullanıcının Matrix kimliğinden sunucunuzu otomatik olarak keşfetmesini sağlar.

Offshore barındırma federasyonu ya da görüşme kalitesini olumsuz etkiler mi?

Hayır. Federasyon, konumdan bağımsız olarak standart HTTPS üzerinden çalışır ve dahil DDoS koruması internete açık sunucuyu stabil tutar. Gerçek zamanlı sesli/görüntülü iletişim için gecikmeyi en aza indirmek üzere kullanıcılarınıza en yakın gizlilik katmanındaki konumu seçin; Hollanda ve Lüksemburg Avrupa trafiği için iyi peering'e sahiptir.

Kendi barındırmak için daha fazlası

Diğer tek tıkla kurulan yazılım yığınları

Hemen kur Matrix (Synapse)
önümüzdeki 60 saniye içinde.

Sınırsız bant genişliği · DDoS dahil · 21 kripto para birimi · KYC yok.