İçeriğe geç
Melinhost

Tek bir VPS’te özel homelab kurma: WireGuard ile yalnızca size açık servisler

Servislerinizi internete açmak yerine WireGuard VPN arkasında çalıştırın: tek sunucuda güvenli, özel bir laboratuvar.

Rehberler · 2 dk okuma

private-homelab-on-vps

Homelab, denemeler ve kişisel servisler için kurduğunuz özel bir ortamdır. Evde bir sunucu çalıştırmak yerine tek bir bulut sunucuyu böyle kullanabilirsiniz. En önemli ilke: servisleri internete açmayın, yalnızca kendi VPN’inize açın. Böylece saldırı yüzeyi neredeyse yalnızca VPN portuna iner.

Homelab mimarisi
Servisler yalnızca WireGuard ağı üzerinden erişilebilir; internete tek açık kapı VPN portudur.

Mimari

  • WireGuard: bilgisayarınız ve telefonunuzla sunucu arasında şifreli özel ağ (10.8.0.0/24).
  • Docker: servisler container’larda çalışır (bkz. Docker kurulumu).
  • Bağlanma: portlar yalnızca VPN adresine (10.8.0.1) bağlanır; internetten görünmez.

1. WireGuard’ı kurun

sudo apt install -y wireguard
cd /etc/wireguard
umask 077
wg genkey | tee server.key | wg pubkey > server.pub
wg genkey | tee laptop.key | wg pubkey > laptop.pub

2. Sunucu yapılandırması

/etc/wireguard/wg0.conf dosyasını oluşturun (anahtarları kendi değerlerinizle değiştirin):

[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = SUNUCU_OZEL_ANAHTARI

[Peer]
# laptop
PublicKey = LAPTOP_ACIK_ANAHTARI
AllowedIPs = 10.8.0.2/32
sudo ufw allow 51820/udp
sudo systemctl enable --now wg-quick@wg0
sudo wg show

3. İstemci yapılandırması

[Interface]
Address = 10.8.0.2/32
PrivateKey = LAPTOP_OZEL_ANAHTARI

[Peer]
PublicKey = SUNUCU_ACIK_ANAHTARI
Endpoint = SUNUCU_IP:51820
AllowedIPs = 10.8.0.0/24
PersistentKeepalive = 25

Bu dosyayı WireGuard istemcisine (Windows, macOS, Linux, Android, iOS) aktarın ve bağlanın. ping 10.8.0.1 yanıt veriyorsa özel ağınız hazırdır. Telefon için yapılandırmayı QR kod olarak üretebilirsiniz.

4. Servisleri VPN adresine bağlayın

Docker portlarını yalnızca VPN adresine yayınlayın:

services:
  notlar:
    image: ghcr.io/example/notes:latest
    restart: unless-stopped
    ports:
      - "10.8.0.1:8080:8080"

Servise yalnızca VPN bağlıyken http://10.8.0.1:8080 adresinden ulaşırsınız. Dilerseniz Caddy ile VPN içinde de alan adı ve HTTPS kullanabilirsiniz.

Önerilen servisler

ServisAmaç
GiteaÖzel Git depoları
n8nOtomasyon
ImmichFotoğraf yedekleme
Parola yöneticisi, not ve dosya servisleriKişisel kullanım

Güvenlik ve bakım

  • Sunucuyu güvenlik kontrol listesine göre sıkılaştırın.
  • Her cihaz için ayrı bir WireGuard anahtarı oluşturun; kaybolan cihazın anahtarını wg0.conf’dan silin.
  • Yapılandırma ve verileri düzenli yedekleyin; riskli güncellemeden önce snapshot alın.

Melinhost ile başlayın

Bir bulut sunucu homelab’iniz için yeterlidir; tam root erişimi WireGuard ve Docker’ı istediğiniz gibi yapılandırmanıza imkân tanır.

İlgili yazılar

Çerez tercihleri

Sitenin çalışması için gerekli çerezleri kullanıyoruz. Analitik ve pazarlama çerezleri yalnızca onayınızla etkinleşir. Çerez Politikası