Tüm eğitimler

Kurumsal dağıtım

Linux ve Raspberry Pi'de özel relay sunucusu

Remotly relay'ini herhangi bir Linux dağıtımına — Raspberry Pi gibi düşük güçlü cihazlar dahil — systemd servisi olarak kurun.

Neden kendi relay'inizi çalıştırmalısınız?

Ana PC'nizi bağlantı noktası yönlendirmesiyle internete açmak bir güvenlik riskidir ve onu gün boyu açık bırakmak güç israfıdır. Küçük bir Linux sunucusu veya Raspberry Pi relay'i size mümkün olan en düşük gecikmeyi, eriştiğiniz PC'lere bağlantı noktası yönlendirmesi gerekmemesini, daha az güç tüketimini, üçüncü taraf sunucularla ilgili GDPR endişelerinin olmamasını ve ağınızın dışından Wake‑on‑LAN'ı sağlar. Relay saldırıya uğrasa bile üzerinden geçen tüm veriler, sunucunun hiçbir zaman sahip olmadığı anahtarlarla şifrelenmiştir.

Bu kılavuz, Linux makinesine SSH erişiminizin ve gerekli izinlerinizin olduğunu varsayar.

Remotly Relay Server'ın 2. sürümü TLS ve erişim parolası desteği ekler. TLS olmadan bile her bağlantı RSA-4096 ve AES-256 ile uçtan uca şifrelenir; TLS, ek CPU maliyetiyle katı güvenlik duvarları için yedek bir taşıma katmanı ekler. Erişim parolası, sunucunuzun IP'sini ve bağlantı noktasını keşfeden rastgele kullanıcıların onu kullanmasını engeller.

1. Cihazınız için paketi seçin

Sunucuda uname -m komutunu çalıştırın ve sonuca uygun paketi indirin:

Raspberry Pi Zero ve Raspberry Pi 1 (ARMv6) desteklenmez.

2. Kurulum

  1. Sunucuya SSH ile bağlanın (ör. OpenSSH, WinSCP veya FileZilla ile). Sonraki tüm komutlar sunucuda çalıştırılır.
  2. Mimarinize uygun paketi indirin, ör. ARM64 için: wget https://downloads.mirillis.com/files/remotly‑relay‑linux‑arm64-v2.zip
  3. Paketi açın: unzip remotly‑relay‑linux‑arm64-v2.zip — unzip yüklü değilse sudo apt‑get update && sudo apt‑get install unzip ile yükleyin.
  4. Dosyaları hizmetin beklediği /srv/remotly konumuna taşıyın: sudo mv remotly‑relay /srv/remotly
  5. Sahibi ve izinleri ayarlayın: sudo chown -R root:root /srv/remotly && sudo chmod -R 755 /srv/remotly. Yapılandırma parolayı içerdiği için yalnızca root tarafından okunabilir yapın: sudo chmod 600 /srv/remotly/config/remotly‑relay.json
uname -m
wget https://downloads.mirillis.com/files/remotly‑relay‑linux‑arm64-v2.zip
unzip remotly‑relay‑linux‑arm64-v2.zip
sudo mv remotly‑relay /srv/remotly
sudo chown -R root:root /srv/remotly
sudo chmod -R 755 /srv/remotly
sudo chmod 600 /srv/remotly/config/remotly‑relay.json

3. Yapılandırma

Yapılandırmayı düzenleyin: sudo nano /srv/remotly/config/remotly‑relay.json. Mümkünse standart HTTPS portu 443'ü kullanın — güvenlik duvarlarından en iyi o geçer.

TLS'siz yapılandırma:

{
  "tlsEnabled": false,
  "key": "",
  "cert": "",
  "forceTLS": false,
  "domain": "",
  "port": 443,
  "max_bandwidth": 40000000,
  "allowed_bandwidth": 30000000,
  "password": "PasswordPasswordPasswordPassword"
}

TLS yapılandırması (yalnızca TLS ile kapsüllenmiş bağlantılara izin vermek için forceTLS değerini true yapın):

{
  "tlsEnabled": true,
  "key": "/etc/letsencrypt/live/relay.example.com/privkey.pem",
  "cert": "/etc/letsencrypt/live/relay.example.com/fullchain.pem",
  "forceTLS": false,
  "domain": "relay.example.com",
  "port": 443,
  "max_bandwidth": 40000000,
  "allowed_bandwidth": 30000000,
  "password": "PasswordPasswordPasswordPassword"
}
  • tlsEnabled — ek TLS şifrelemesini etkinleştirir; true olduğunda geçerli cert ve key yolları gerekir.
  • key — sertifikanın PEM biçimindeki özel anahtarının mutlak yolu, ör. /etc/letsencrypt/live/relay.example.com/privkey.pem.
  • cert — PEM biçimindeki tam zincir sertifikanın mutlak yolu, ör. /etc/letsencrypt/live/relay.example.com/fullchain.pem.
  • forceTLS — true olduğunda yalnızca TLS 1.2 / 1.3 bağlantıları kabul edilir; hem istemci hem host TLS kullanmalıdır.
  • domain — DNS'te relay'in IP'sine atanan alan adı (önerilir, SNI için kullanılır).
  • port — relay'in iletişim için kullandığı bağlantı noktası.
  • password — erişimi kısıtlamak için en az 32 karakter; parolasız çalıştırmak için boş bırakın. Daha kısa, boş olmayan bir parola sunucunun başlamasını engeller.

4. Hizmeti başlatın

  1. systemd hizmetini kaydedin: sudo bash /srv/remotly/script/installremotlyrelay.sh
  2. Hizmeti başlatın: sudo bash /srv/remotly/script/startremotlyrelay.sh
  3. Çalıştığını doğrulayın: systemctl status remotly‑relay komutu active (running) göstermelidir.
sudo bash /srv/remotly/script/installremotlyrelay.sh
sudo bash /srv/remotly/script/startremotlyrelay.sh
systemctl status remotly‑relay

# to stop
sudo bash /srv/remotly/script/stopremotlyrelay.sh

Ardından bir tarayıcıda http://<relay IP>:<port>/connectionTest (veya TLS ile https://<relay domain>:<port>/connectionTest) adresini açın. OK mesajını görmelisiniz.

Hizmet sistemle birlikte başlar. Yapılandırmayı değiştirdikten sonra başlatma betiğini yeniden çalıştırın (hizmeti yeniden başlatır); stopremotlyrelay.sh hizmeti durdurur. Günlük /srv/remotly/logs/remotly‑relay.log dosyasındadır.

5. Relay'i hesabınıza kaydetme

remotly.com'da oturum açın, Custom Relays bölümünü açın ve Add relay server'a tıklayın. IP adresini, remotly‑relay.json'daki bağlantı noktalarını, uygulamalarda görünecek bir cihaz adını, ülke kodunu ve yapılandırma dosyasındakiyle aynı parolayı girin.

Remotly kullanıcı panelinde özel relay'ler paneli
Relay sunucusu ekleme formu

Force Connect Anywhere etkinken başka bir bilgisayara bağlandığınızda artık yalnızca özel relay'inizin ülke kodunu ve adını görmelisiniz.

Sorun giderme

  • connectionTest OK gösteriyor ancak aktarmalı bağlantılar başarısız oluyor: sunucunuz muhtemelen ağınızın dışından erişilebilir değil. Genel IP'nizde bağlantı noktası yönlendirmesini yapılandırın ve harici bir tarayıcıdan test edin.
  • connectionTest OK gösteriyor ancak bağlantılar resmi bir Remotly relay'i üzerinden gidiyor: özel relay'i web panelinde hesabınıza eklememişsiniz.
  • Relay çalışıyor ancak connectionTest erişilemez: ağınızın içinden, sunucu güvenlik duvarının relay bağlantı noktasını engellemediğini kontrol edin; yalnızca dışarıdan erişilemiyorsa yönlendiricinizdeki bağlantı noktası yönlendirmesini düzeltin.

Sorularınız mı var? Remotly topluluğunu ziyaret edin.

Bu web sitesi, web sitesinde gezinirken deneyiminizi geliştirmek için çerezler kullanır. Bunlardan gerekli olarak sınıflandırılanlar tarayıcınızda saklanır ve web sitesinin temel işlevlerini çalıştırmak için kullanılır.

Üçüncü taraf çerezleri de kullanıyoruz, bu çerezler bu siteyi nasıl kullandığınızı analiz etmemize ve anlamamıza yardımcı oluyor. Bunlar yalnızca onayınızla tarayıcınızda saklanacak ve bunları reddetme fırsatına sahipsiniz. Ancak, bunları reddetmek gezinme deneyiminizi etkileyebilir.

GerekliHer zaman etkin

Gerekli çerezler, web sitesinin düzgün çalışabilmesi için kesinlikle gereklidir. Bu çerezler, web sitesinin temel işlevlerini ve güvenlik özelliklerini anonim olarak sağlar.

ÇerezSaklama süresiAçıklama
cookie_consent1 yılKullanıcının çerez kullanımına izin verip vermediğini saklar. Herhangi bir kişisel veri saklamaz.
NEXT_LOCALE1 yılKullanıcı tarafından seçilen dil ayarını saklar.
themesilinene kadarKullanıcının seçtiği açık veya koyu temayı saklar (tarayıcı depolaması).
hCaptchaoturumİletişim ve sipariş formlarında botları tespit etmek ve web sitesini spama karşı korumak için hCaptcha hizmeti tarafından ayarlanır.
device_token6 ayKullanıcı/cihaz doğrulaması için kullanılan çerez.
session_idoturum / 1 ayKullanıcı oturumunu canlı tutmak için kullanılan çerez.
logged_inoturum / 1 ayKullanıcı oturumunu canlı tutmak için kullanılan çerez.