SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor

Cara Meng-host Sendiri Server SimpleX di VPS

Panduan menjalankan relay SimpleX SMP di VPS, termasuk instalasi pinned, fingerprint untuk klien, port, pengguna tanpa hak istimewa, backup, TLS, dan model ancaman.

Yang dilakukan server SimpleX yang di-host sendiri

Untuk meng-host sendiri server chat SimpleX, Anda menjalankan satu daemon pada VPS: smp-server, relay untuk SMP (simplex messaging protocol). Daemon ini menyimpan antrean pesan yang digunakan kontak Anda untuk menulis dan membaca pesan. Daemon kedua yang bersifat opsional, yaitu xftp-server, meneruskan transfer file. Keduanya berasal dari proyek yang sama, simplexmq, dan masing-masing terdiri atas satu binary, satu file konfigurasi, dan satu log append-only.

Teks ini ditujukan untuk operator, bukan pengguna aplikasi. Relay tidak menyimpan akun, daftar kontak, atau riwayat chat. Relay menyimpan antrean, sejumlah ciphertext yang belum terkirim, dan sertifikat yang mengidentifikasinya. Tanggung jawab Anda mencakup uptime, sedikit ruang disk, dan metadata yang melewati server Anda.

Setiap perintah, path, port, dan flag di bawah ini berasal dari dokumentasi proyek sendiri: halaman hosting server SMP, halaman server XFTP, dan dokumen keamanan protokol. Jika suatu angka penting, halaman sumbernya disebutkan di sebelah angka tersebut.

Mengapa jaringan tanpa pengenal pengguna tetap memerlukan relay

SimpleX tidak memiliki nama pengguna, nomor telepon, atau ID akun. Kontak merupakan antrean satu arah: alamat pada relay tertentu yang digunakan satu pihak untuk menulis dan pihak lain untuk membaca. Dua kontak Anda tidak memiliki pengenal yang sama yang dapat digunakan server untuk menghubungkan keduanya.

Antrean tersebut tetap harus disimpan di suatu tempat karena alasan yang sederhana. Dua ponsel jarang online pada detik yang sama. Sesuatu harus menerima pesan sekarang dan menyimpannya sampai perangkat lain memintanya. Itulah seluruh tugas relay SMP. Ini juga berarti kedua perangkat tidak pernah terhubung satu sama lain, sehingga tidak ada perangkat yang mengetahui alamat IP (internet protocol) perangkat lainnya. Relay mengambil alih paparan tersebut.

Hostname relay merupakan bagian dari alamat antrean, sehingga hostname tersebut terdapat dalam setiap tautan undangan yang Anda bagikan dari relay itu. Ingat hal ini saat membaca model ancaman di bagian akhir.

Hal yang dapat dan tidak dapat dilihat oleh relay

Proyek tersebut menjelaskan hal ini sebagai model ancaman di protocol/security.md. Bagian ini layak dibaca sebelum Anda menginstal apa pun karena setelah mengikuti panduan ini, relay tersebut menjadi tanggung jawab Anda. Relay, termasuk relay yang sepenuhnya dikendalikan penyerang, tidak dapat mengetahui isi atau jenis pesan, menambahkan, menggandakan, atau merusak pesan individual tanpa terdeteksi, maupun membobol enkripsi end-to-end melalui serangan aktif.

Halaman yang sama mencantumkan tindakan yang dapat dilakukan relay. Relay dapat mengetahui kapan penerima queue sedang online. Relay dapat menghitung jumlah pesan yang melewati queue. Relay dapat mengetahui alamat IP penerima. Relay dapat menghapus setiap pesan berikutnya dalam queue atau memberikan informasi palsu tentang status queue tersebut.

Jadi, pembagiannya jelas. Kerahasiaan merupakan tanggung jawab client, dan self-hosting tidak memengaruhinya. Metadata dan ketersediaan merupakan tanggung jawab operator relay, dan self-hosting menyerahkan keduanya kepada Anda.

Prasyarat

  • VPS yang menjalankan Ubuntu 22.04 atau 24.04. Proyek ini menerbitkan binary rilis yang dibuat khusus untuk kedua versi tersebut, dalam arsitektur x86-64 dan aarch64.
  • Nama domain dengan A record yang mengarah ke VPS, serta AAAA record jika Anda menggunakan IPv6. Dokumentasi menggunakan smp1.example.com sebagai contoh.
  • Akses root atau sudo, serta sesi SSH kedua yang tetap terbuka saat Anda mengubah firewall.
  • Lokasi di luar server untuk menyimpan backup, karena direktori konfigurasi merupakan identitas server.

Pada instance ARM, gunakan aset aarch64, bukan x86-64. Tidak ada bagian lain dalam panduan ini yang berubah, dan pemilihan paket VPS ARM atau x86 berkaitan dengan harga dan kecepatan per core, bukan dengan apakah software ini dapat berjalan.

Pasang rilis tertentu, bukan "latest"

Proyek ini menyediakan skrip instalasi yang mengambil rilis terbaru dan mendaftarkan perintah simplex-servers-update. Skrip tersebut berfungsi. Namun, tetap tentukan versinya: relay yang binarinya berubah tanpa kendali Anda akan sulit dianalisis ketika terjadi masalah.

Per 11 Oktober 2026, rilis simplexmq terbaru yang tidak ditandai GitHub sebagai prarilis adalah v6.5.0, yang diterbitkan pada 29 April 2026. Tag v7.0.0 dan v7.0.1 dari akhir Juli 2026 serta beta v7.1.0 semuanya ditandai sebagai prarilis. Periksa halaman rilis untuk menentukan tag yang Anda inginkan, lalu gunakan tag tersebut di seluruh bagian berikut.

sudo useradd -m smp
sudo install -d -o smp -g smp -m 755 /etc/opt/simplex /var/opt/simplex

useradd -m smp tidak menetapkan kata sandi, sehingga tidak ada yang login langsung sebagai smp. Buat kedua direktori tersebut secara manual sebelum menjalankan hal lain, karena /etc/opt dimiliki oleh root dengan mode 755. Kondisi ini membuat pengguna smp tidak memiliki tempat untuk menulis direktori konfigurasinya sendiri.

VER=v6.5.0
curl -fL "https://github.com/simplex-chat/simplexmq/releases/download/$VER/smp-server-ubuntu-24_04-x86-64" -o /tmp/smp-server
sha256sum /tmp/smp-server

Bandingkan hash tersebut dengan checksum SHA2-256 yang dipublikasikan dalam catatan rilis untuk tag yang sama. Halaman server juga menjelaskan file checksum bertanda tangan, _sha256sums, beserta tanda tangannya, _sha256sums.asc, yang diverifikasi menggunakan key FB44AF81A45BDE327319797C85107E357D4A17FC. Halaman reproducible builds milik proyek tersebut menyebutkan key penandatanganan yang berbeda, build@simplex.chat, dengan fingerprint BBDF 7BDA D154 8B16 836A F5B9 D53B DFD1 53C3 66BA. Per 11 Oktober 2026, tidak ada file tanda tangan yang dilampirkan pada rilis server v6.5.0 atau v7.0.1 di GitHub. Jadi, untuk tag tersebut, pemeriksaan yang tersedia adalah hash dalam catatan rilis. Jika rilis yang Anda tentukan versinya menyediakan file tanda tangan, pastikan key yang digunakan untuk menandatanganinya sesuai dengan halaman reproducible builds sebelum mempercayai hasilnya.

sudo install -m 755 -o root -g root /tmp/smp-server /usr/local/bin/smp-server

Instal file tersebut dengan kepemilikan root secara sengaja. Service berjalan sebagai smp, sehingga jika service disusupi, proses tersebut tidak dapat menulis ulang binary yang dijalankannya.

Inisialisasi server dan dua secret yang dicetaknya

sudo su smp -c "smp-server init --yes --store-log --daily-stats --no-password --fqdn=smp1.example.com"
  • --store-log (-l) menulis log antrean dengan mode append-only ke /var/opt/simplex/smp-server-store.log agar relay tetap dapat memulihkan antrean setelah restart. Tanpa opsi ini, restart menghapus semua antrean sehingga setiap kontak yang dirutekan melalui Anda berhenti berfungsi.
  • --daily-stats (-s) menulis penghitung dalam format CSV ke /var/opt/simplex/smp-server-stats.daily.log.
  • --fqdn menyertakan domain Anda dalam sertifikat yang dibuat. Gunakan --ip jika Anda tidak memiliki domain.
  • --no-password memungkinkan siapa pun membuat antrean pada relay Anda. Agar tetap privat, tetapkan create_password di bawah [AUTH] dalam /etc/opt/simplex/smp-server.ini setelah inisialisasi, bukan dengan meneruskan --password di sini, karena baris perintah terlihat dalam riwayat shell dan daftar proses saat perintah berjalan.

Init membuat sertifikat dan mencetak dua nilai yang harus Anda simpan. Nilai pertama adalah fingerprint, yaitu string base64 yang juga ditulis ke /etc/opt/simplex/fingerprint. Nilai kedua adalah alamat server lengkap, yaitu fingerprint yang digabungkan dengan hostname Anda. Salin keduanya sekarang.

Init juga membuat /etc/opt/simplex/ca.key, dan dokumentasi menyarankan Anda memindahkan file tersebut ke penyimpanan offline. Alasannya penting: klien menyematkan fingerprint dari certificate authority tersebut, sehingga siapa pun yang memiliki ca.key dapat menerbitkan sertifikat server baru yang akan diterima klien sebagai milik Anda. Anda hanya perlu menggunakan file itu lagi untuk merotasi sertifikat server nanti dengan smp-server cert.

Perlakukan init sebagai langkah satu kali. Fingerprint dalam alamat Anda berasal dari authority yang dibuatnya. Jadi, jika authority tersebut dibuat ulang, Anda akan memperoleh alamat yang berbeda dan alamat yang telah dibagikan sebelumnya tidak lagi merujuk ke server ini.

Jalankan di bawah systemd sebagai pengguna tanpa hak istimewa

Tulis /etc/systemd/system/smp-server.service, persis seperti yang ditampilkan dalam dokumentasi:

[Unit]
Description=SMP server systemd service

[Service]
User=smp
Group=smp
Type=simple
ExecStart=/usr/local/bin/smp-server start +RTS -N -RTS
ExecStopPost=/usr/bin/env sh -c '[ -e "/var/opt/simplex/smp-server-store.log" ] && cp "/var/opt/simplex/smp-server-store.log" "/var/opt/simplex/smp-server-store.log.bak"'
LimitNOFILE=65535
KillSignal=SIGINT
TimeoutStopSec=infinity

[Install]
WantedBy=multi-user.target

Unit upstream juga memuat AmbientCapabilities=CAP_NET_BIND_SERVICE. Baris tersebut diperlukan karena proses berjalan sebagai smp, sedangkan port di bawah 1024 tidak dapat diakses oleh proses non-root. Tanpa baris tersebut, daemon tidak dapat melakukan bind ke port 80 atau 443. Tambahkan baris tersebut jika Anda melayani port itu. LimitNOFILE=65535 penting karena setiap klien yang berlangganan mempertahankan koneksi TCP terbuka, sedangkan batas default jauh di bawah kebutuhan relay yang sibuk. ExecStopPost menyalin log store ke file .bak setiap kali proses berhenti. Dengan begitu, Anda memiliki satu titik rollback tanpa biaya tambahan.

sudo systemctl daemon-reload
sudo systemctl enable --now smp-server
sudo systemctl status smp-server
sudo journalctl -fu smp-server

Start yang berhasil mencatat alamat server. Selanjutnya, pastikan socket benar-benar terbuka:

sudo ss -tlnp | grep -E ':(443|5223)'

Kedua baris harus mencantumkan smp-server. Menjalankan daemon menggunakan akunnya sendiri tanpa hak sudo merupakan praktik yang sama seperti yang dijelaskan dalam akun per-service pada VPS, dan praktik ini mencegah bug pada satu daemon jaringan berubah menjadi root shell.

Port yang perlu dibuka dan port yang harus tetap tertutup

Dokumentasi mencantumkan tiga port: 5223/tcp, 443/tcp, dan 80/tcp. Port 5223 adalah transport SMP. Konfigurasi bawaan menetapkan port: 5223,443 di bawah [TRANSPORT], sehingga protokol yang sama juga merespons pada 443. Hal ini penting karena banyak jaringan yang membatasi koneksi hanya mengizinkan koneksi keluar melalui 443. Port 80 hanya diperlukan untuk halaman informasi opsional dan pengalihannya ke HTTPS.

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 5223/tcp
sudo ufw enable

Jangan membuka 5224. Port tersebut adalah port kontrol. Dokumentasi mengaksesnya dari server itu sendiri dengan nc 127.0.0.1 5224. Port ini menampilkan status server dan menghapus antrean, sehingga harus dibatasi ke loopback. Tetapkan kata sandi admin dan pengguna di bawah [AUTH]. Jika Anda baru menggunakan tool ini, dasar-dasar ufw pada VPS menjelaskan urutan aturan dan cara menghindari terkuncinya akses ke server.

Ada satu kontrol lain yang sering terlewat. Sebagian besar provider menjalankan firewall jaringan melalui panel, terpisah dari ufw pada server. Sebuah port dapat terbuka di ufw, tetapi tetap diblokir sebelum trafik mencapai server Anda.

Alamat server yang diperlukan klien

smp://<fingerprint>[:<password>]@<public_hostname>[,<onion_hostname>]

String tersebut adalah seluruh konfigurasi sisi klien. Tempelkan ke pengaturan server aplikasi, atau minta seseorang memindai kode QR yang ditampilkan aplikasi untuk konfigurasi tersebut. Dokumentasi menyebutkan bahwa QR tersebut menyertakan kata sandi. Karena itu, orang yang memindainya juga dapat menerima pesan melalui server Anda.

Ada satu perilaku yang didokumentasikan dan sering mengejutkan pengguna. Menambahkan server Anda di aplikasi hanya memengaruhi kontak yang dibuat setelah itu. Kontak yang sudah ada tetap menggunakan relay tempat antreannya dibuat dan tidak berpindah secara otomatis. Karena itu, Anda tidak dapat menonaktifkan relay sehari setelah menggantinya.

Menambahkan relay file XFTP

XFTP (SimpleX file transfer protocol) adalah bagian transfer file dari jaringan ini dan berjalan sebagai daemon terpisah dengan alamatnya sendiri. Menurut pengumuman XFTP dari proyek tersebut, relay sama sekali tidak memiliki metadata file. Relay hanya melihat chunk individual berukuran 256kb, 1mb, atau 4mb, dengan akses yang diotorisasi menggunakan kredensial anonim. Pengirim dapat menyebarkan chunk dari satu file ke beberapa relay. Jadi, server Anda menyimpan potongan file, bukan file utuh.

sudo useradd -m xftp
sudo install -d -o xftp -g xftp -m 755 /etc/opt/simplex-xftp /var/opt/simplex-xftp /srv/xftp
curl -fL "https://github.com/simplex-chat/simplexmq/releases/download/$VER/xftp-server-ubuntu-24_04-x86-64" -o /tmp/xftp-server
sudo install -m 755 -o root -g root /tmp/xftp-server /usr/local/bin/xftp-server
sudo su xftp -c "xftp-server init -l --fqdn=xftp1.example.com -q '20gb' -p /srv/xftp/"

Konfigurasinya berada di /etc/opt/simplex-xftp/, state-nya berada di /var/opt/simplex-xftp/, dan chunk file disimpan di lokasi yang ditentukan oleh -p. Unit systemd memiliki struktur yang sama dengan User=xftp dan ExecStart=/usr/local/bin/xftp-server start +RTS -N -RTS. Init menampilkan alamat xftp:// dalam format yang sama seperti alamat SMP, dengan fingerprint-nya sendiri di /etc/opt/simplex-xftp/fingerprint.

Ada konflik port yang perlu direncanakan. Port yang didokumentasikan untuk server XFTP adalah 443, dan konfigurasi SMP juga mencantumkan 443. Dua proses tidak dapat melakukan bind pada port yang sama di alamat yang sama. Jadi, pada satu VPS, salah satunya harus menggunakan port lain. Solusi paling sederhana adalah mengatur port: 5223 di bagian [TRANSPORT] pada konfigurasi SMP dan membiarkan port 443 digunakan oleh relay file. Konsekuensinya, klien pada jaringan yang restriktif tidak lagi dapat menggunakan fallback 443. Alternatifnya adalah menambahkan alamat IP kedua pada VPS yang sama atau menggunakan VPS kedua.

Tentukan kuota secara realistis. -q '20gb' merupakan komitmen terhadap kapasitas disk yang Anda miliki. Relay file adalah komponen yang paling banyak menggunakan disk dan bandwidth. Relay pesan hampir tidak menggunakan keduanya.

Yang tersimpan di disk dan yang dipulihkan oleh backup

Ada dua direktori yang penting. /etc/opt/simplex/ adalah identitas: smp-server.ini, sertifikat dan key server, ca.key, dan fingerprint. /var/opt/simplex/ adalah status: smp-server-store.log menyimpan antrean dan, jika restore_messages: on, pesan yang belum terkirim, bersama file statistik harian.

sudo systemctl stop smp-server
sudo tar czf /root/simplex-backup.tgz -C / etc/opt/simplex var/opt/simplex
sudo chmod 600 /root/simplex-backup.tgz
sudo systemctl start smp-server

Pahami isi arsip tersebut. Arsip itu bukan arsip pesan: item dalam antrean adalah ciphertext untuk key yang tidak pernah dimiliki relay, dan konfigurasi [STORE_LOG] yang dikirimkan akan menghapus pesan setelah 21 hari. Arsip tersebut adalah salinan identitas server, termasuk ca.key, sehingga siapa pun yang memperoleh file itu dapat menyamar sebagai relay Anda di hadapan kontak Anda. Enkripsi file tersebut dan simpan di luar server.

Manfaatnya terlihat saat pemulihan. Salin kembali /etc/opt/simplex ke VPS baru, arahkan nama DNS yang sama ke VPS tersebut, dan fingerprint tetap sama, sehingga setiap alamat yang telah Anda bagikan tetap berfungsi. Jika direktori itu hilang, tidak ada pemulihan: instalasi baru menghasilkan fingerprint baru, yang berarti alamat baru, sehingga semua kontak yang dirutekan melalui relay Anda tidak dapat diakses lagi.

TLS: dua sertifikat dengan fungsi berbeda

Transport SMP tidak menggunakan certificate authority publik. Init membuat authority privat dan sertifikat server, lalu fingerprint authority tersebut disertakan dalam alamat server. Client memeriksa informasi yang diberikan server berdasarkan fingerprint yang telah ditetapkan. Inilah yang menurut proyek melindungi koneksi client ke server dari serangan machine-in-the-middle. Tidak ada client ACME (automatic certificate management environment) yang perlu dijalankan pada port tersebut. Rotasi dilakukan secara manual dengan menjalankan smp-server cert dan menetapkan SMP_SERVER_CFG_PATH.

Halaman informasi opsional menggunakan sertifikat yang lain. Bagian [WEB] mencantumkan static_path, https: 443, cert: /etc/opt/simplex/web.crt, dan key: /etc/opt/simplex/web.key. Browser tidak mengenali authority privat Anda. Karena itu, sertifikat yang dipercaya secara publik digunakan pada bagian ini. Quick start Docker dalam dokumentasi menempatkan Caddy di depan server untuk tujuan tersebut dan menerbitkan sertifikat secara otomatis.

Mengakses relay melalui Tor

Dokumentasi tersebut mencakup bagian Tor yang memasang Tor dari repositori Tor Project dan menambahkan hidden service di /etc/tor/torrc:

SOCKSPort 0
HiddenServiceNonAnonymousMode 1
HiddenServiceSingleHopMode 1
HiddenServiceDir /var/lib/tor/simplex-smp/
HiddenServicePort 5223 localhost:5223
HiddenServicePort 443 localhost:443

Baca kedua baris mode tersebut dengan saksama. Single hop dan non-anonymous berarti lokasi relay itu sendiri tidak disembunyikan. Alamat onion cepat diakses dan memberi klien jalur masuk yang tidak pernah mengungkapkan alamat IP mereka kepada Anda, tetapi server tetap dapat ditemukan melalui IP publiknya. Hostname onion dari /var/lib/tor/simplex-smp/hostname ditambahkan di akhir alamat server setelah koma. Jika Anda juga ingin menyembunyikan lokasi server, diperlukan konfigurasi yang berbeda. Menjalankan onion service sungguhan pada VPS membahas komprominya. Perbedaan hal yang disembunyikan oleh setiap alat dibahas dalam Tor dibandingkan dengan VPN, dan perbedaan tersebut berlaku langsung di sini.

Model ancaman: perubahan akibat self-hosting

Manfaatnya. Metadata—antrean yang tersedia, waktu antrean dibaca, dan alamat yang terhubung—berada pada mesin yang Anda kendalikan. Anda juga menentukan berapa lama metadata tersebut disimpan. Anda tidak lagi menjadi bagian dari kumpulan besar data yang dapat diminta sekaligus.

Hal-hal yang tidak diberikan, secara langsung:

  • Enkripsinya tidak berubah. Pesan sudah dienkripsi secara end-to-end sebelum Anda membangun sistem ini, dan tetap dienkripsi secara end-to-end setelahnya. Self-hosting adalah keputusan tentang metadata, bukan keputusan tentang kriptografi.
  • Penyedia VPS Anda dapat melihat trafik ke alamat IP Anda dan menyimpan detail penagihan Anda. Anda memindahkan pihak yang dipercaya dari operator layanan pesan ke operator hosting. Anda tidak menghilangkan pihak yang dipercaya.
  • Relay Anda hanya digunakan oleh sedikit pengguna. Jika relay tersebut melayani satu rumah tangga, koneksi ke relay itu akan mengidentifikasi rumah tangga tersebut. Hostname-nya juga tercantum dalam setiap tautan undangan yang Anda kirim melalui relay itu. Relay publik yang sibuk memberikan anonimitas yang lebih baik dalam hal tersebut. Inilah kompromi yang sebenarnya. Server pencarian privat memiliki pola yang sama. Karena itu, apa yang sebenarnya disembunyikan SearXNG pada VPS Anda sendiri bergantung pada jumlah orang yang berbagi instance tersebut dengan Anda.
  • Ketersediaan kini menjadi tanggung jawab Anda. Disk yang penuh atau mesin yang mati akan menghentikan pengiriman pesan. Kontak Anda tidak memiliki cara untuk mengarahkan pengiriman melewati Anda.

Penalaran yang sama berlaku untuk setiap layanan privat yang Anda jalankan pada mesin milik sendiri, baik relay ini maupun VPN WireGuard pada VPS Anda sendiri. Anda menentukan pihak mana yang dapat melihat metadata tersebut. Anda tidak membuat metadata itu menghilang.

Jika tidak berfungsi

Service start lalu langsung berhenti. Baca sudo journalctl -u smp-server -n 50. Kegagalan bind menyebutkan port yang tidak dapat digunakan. Kemudian jalankan sudo ss -tlnp | grep :443 untuk melihat proses yang sedang menggunakan port tersebut. Pada server baru, proses itu biasanya nginx, Caddy, atau server XFTP yang Anda instal satu jam lalu.

Init tidak dapat menulis konfigurasinya. Menjalankan smp-server init sebagai pengguna smp sebelum /etc/opt/simplex tersedia akan menghasilkan error izin karena /etc/opt dimiliki oleh root. Buat direktori dengan pemilik yang benar terlebih dahulu, lalu jalankan init lagi.

Client tidak dapat menjangkau relay. Periksa apakah nama mengarah ke alamat yang benar dengan dig +short smp1.example.com. Kemudian uji port dari laptop Anda, bukan dari server: nc -vz smp1.example.com 5223. Jika koneksi dari luar gagal sementara ss menunjukkan bahwa socket terbuka di server, masalahnya kemungkinan berada pada firewall jaringan provider. Firewall ini terpisah dari ufw.

Kontak tidak dapat terhubung melalui relay Anda. Fingerprint pada alamat yang Anda bagikan harus cocok dengan isi terkini /etc/opt/simplex/fingerprint. Jika Anda menetapkan create_password di bawah [AUTH], alamat tersebut juga harus menyertakan password itu. Jika tidak, client tidak diizinkan membuat queue.

Tidak ada data yang berpindah setelah Anda menambahkan server di aplikasi. Itu memang perilaku yang diharapkan. Hanya kontak baru yang menggunakan relay yang baru ditambahkan. Kontak yang sudah ada tetap menggunakan queue yang telah dimilikinya.

FAQ

Apakah menjalankan server SimpleX sendiri membuat pesan saya lebih aman?

Tidak, dan memang demikian desainnya. SimpleX mengenkripsi pesan secara menyeluruh antarpPerangkat, sehingga relay tidak pernah memiliki kunci tersebut, siapa pun yang menjalankannya. Self-hosting mengubah pihak yang dapat mengamati metadata di sekitar pesan tersebut: antrean yang tersedia, waktu antrean dibaca, dan alamat IP yang terhubung. Ini adalah keputusan terkait metadata. Jika alasan Anda melakukan self-hosting adalah enkripsi yang lebih kuat, enkripsi tersebut memang sudah tersedia sejak awal.

Apa yang sebenarnya dapat dilihat oleh operator relay SimpleX?

protocol/security.md milik proyek tersebut menjelaskannya. Relay tidak dapat membaca isi atau jenis pesan, tidak dapat mengubah pesan individual tanpa terdeteksi, dan tidak dapat membobol enkripsi menyeluruh melalui serangan aktif. Relay dapat melihat kapan penerima suatu antrean sedang online, menghitung pesan yang melewati antrean, mengetahui alamat IP penerima, membuang pesan berikutnya dalam antrean, atau memberikan informasi palsu tentang status antrean tersebut. Itulah kemampuan yang Anda miliki setelah relay berada di bawah kendali Anda.

Apakah saya memerlukan nama domain dan sertifikat TLS?

Anda memerlukan domain agar konfigurasi dapat digunakan, dan smp-server init menerima --ip jika Anda benar-benar tidak memiliki domain. Anda tidak memerlukan sertifikat dari otoritas publik untuk port perpesanan: init membuat otoritasnya sendiri, dan client melakukan pinning terhadap fingerprint yang tercantum dalam alamat smp:// Anda. Sertifikat yang dipercaya publik hanya diperlukan untuk halaman informasi web opsional, yang dikonfigurasi sebagai cert dan key dalam bagian [WEB] pada smp-server.ini.

Apa yang terjadi jika saya kehilangan /etc/opt/simplex?

Semua alamat yang telah Anda bagikan akan berhenti berfungsi. Direktori tersebut menyimpan certificate authority yang fingerprint-nya tertanam dalam alamat server Anda, sehingga rebuild menghasilkan fingerprint yang berbeda dan, akibatnya, server yang berbeda. Kontak yang antreannya berada pada relay tersebut tidak dapat dipulihkan dari sisi client. Cadangkan direktori itu dalam keadaan terenkripsi dan simpan di luar server, serta simpan ca.key secara offline sesuai petunjuk dokumentasi, karena siapa pun yang memilikinya dapat menyamar sebagai relay Anda.

Apakah saya dapat menjalankan relay SMP dan relay file XFTP pada VPS yang sama?

Ya, tetapi ada satu konflik yang harus diselesaikan. Port yang didokumentasikan untuk server XFTP adalah 443, sedangkan konfigurasi SMP default mencantumkan port: 5223,443, sehingga keduanya membutuhkan socket yang sama. Berikan port 443 kepada salah satunya: tetapkan port: 5223 untuk server SMP, atau pindahkan relay file ke alamat IP kedua atau VPS kedua. Sesuaikan juga kuota penyimpanan dengan kapasitas disk yang benar-benar tersedia, karena relay file adalah komponen yang menggunakan disk dan bandwidth.

#simplex#privacy#messaging#self-hosting#vps