Proxmox Dedicated Sunucuda Tek IP ile VM/Container Erişimi Nasıl Sağlanır? (Hetzner, OVH vb. için Rehber)
Elinizde güçlü bir kiralık sunucu var, Proxmox'u kurdunuz ve artık birden fazla sanal makine (VM) veya container çalıştırmaya hazırsınız.

Elinizde güçlü bir kiralık sunucu var, Proxmox'u kurdunuz ve artık birden fazla sanal makine (VM) veya container çalıştırmaya hazırsınız. Ama bir sorun var: Sadece tek bir genel (public) IP adresiniz var. Peki, bu tek adresi kullanarak hem Proxmox'a hem de içinde çalışan onlarca servise nasıl erişim sağlayacaksınız?
Cevap: Sanal Ağ (NAT) ve Port Yönlendirme!
Bu rehber, size Proxmox sunucunuzdaki o değerli tek IP adresini, içerde çalışan tüm servisleriniz için nasıl verimli bir şekilde paylaşacağınızı adım adım anlatacak. Bu sayede her bir container'ınız hem internete çıkabilecek hem de dışarıdan belirli portlar üzerinden erişilebilir hale gelecek.
Senaryomuz:
- Proxmox Host: Tek bir Genel IP adresine sahip.
- Container/VM: Kendi özel, iç ağında çalışacak.
- Hedef 1 (NAT): Container'ın Proxmox host üzerinden internete çıkmasını sağlamak.
- Hedef 2 (Port Yönlendirme): Host'un genel IP'sinin belirli bir portuna (örneğin
8080
) gelen isteği, içerideki container'ın web sunucusuna (port80
) yönlendirmek.
Hazırsanız, başlayalım!
Adım 1: İç İletişim için Sanal Ağ Köprüsü Oluşturma
Öncelikle, VM ve container'larımızın kendi aralarında konuşabileceği, dış dünyadan yalıtılmış özel bir ağ oluşturacağız.
- Proxmox arayüzünde, sol menüden sunucunuzun adına tıklayın ve System -> Network bölümüne gidin.
- Create butonuna tıklayın ve açılan menüden Linux Bridge'i seçin.
- Açılan pencereyi şu bilgilerle doldurun:
- Name:
vmbr1
(Bu, bizim özel iç ağımızın adı olacak). - IPv4/CIDR:
10.10.10.1/24
(Bu, iç ağımızın ağ geçidi adresi olacak. Çakışma olasılığı düşük bir özel IP aralığı seçmek her zaman iyidir). - Bridge ports: KESİNLİKLE BOŞ BIRAKIN! Bu alan, tamamen sanal bir ağ oluşturduğumuz için boş kalmalıdır.
- Comment:
Özel NAT Ağı
gibi bir açıklama yazabilirsiniz.
- Name:
- Create'e tıklayın. Değişikliklerin uygulanması için üstte beliren Apply Configuration butonuna basmayı unutmayın.
Adım 2: Proxmox'u İnternete Açılan Kapı Olarak Ayarlama (NAT Kurulumu)
Şimdi Proxmox'a, bu yeni özel ağ (vmbr1
) ile internete bağlı olan ana ağ (vmbr0
) arasındaki trafiği yönlendirmesini öğreteceğiz.
Önemli Not: Ağ ayarlarıyla oynamak risklidir. Hata yapmanız durumunda sunucunuza erişimi kaybedebilirsiniz. Hetzner gibi servis sağlayıcılar, bu gibi durumlar için bir "KVM Konsol" veya "Rescue Mode" sunar. Başlamadan önce bu kurtarma seçeneklerine nasıl erişeceğinizi bildiğinizden emin olun!
-
Proxmox sunucunuzun Shell'ini (konsolunu) açın.
-
Ağ yapılandırma dosyasını metin düzenleyici ile açın:
nano /etc/network/interfaces
-
Dosyanın en altındaki
iface vmbr1 inet static
bloğunu bulun ve içine aşağıdaki üç satırı dikkatlice ekleyin. (vmbr0
sizin ana, internete bağlı arayüzünüz olmalı.ip a
komutuyla kontrol edebilirsiniz.)auto vmbr1 iface vmbr1 inet static address 10.10.10.1/24 bridge-ports none bridge-stp off bridge-fd 0 # BU SATIRLARI EKLEYİN post-up echo 1 > /proc/sys/net/ipv4/ip_forward post-up iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
Bu komutların anlamı:
post-up echo ...
: Linux çekirdeğinde IP yönlendirmeyi etkinleştirir.post-up iptables ... MASQUERADE
: NAT işleminin kalbidir.10.10.10.0/24
ağından gelen paketlerin, ana ağ arayüzüvmbr0
üzerinden çıkarken Proxmox'un genel IP adresiyle "maskelenmesini" (gizlenmesini) sağlar.post-down ...
: Ağ kapatıldığında eklenen kuralı temizleyerek sistemi düzenli tutar.
-
Dosyayı kaydetmek için CTRL + X, ardından Y ve Enter'a basın. Değişikliklerin sorunsuz uygulanması için sunucuyu yeniden başlatın.
Adım 3: Container'ınızı Özel Ağa Dahil Etme
Sıra geldi test container'ımızı bu yeni özel ağa bağlamaya.
- Proxmox arayüzünde ilgili container'ı seçin ve Network sekmesine gidin.
eth0
arayüzüne çift tıklayın. - Bridge olarak
vmbr1
'i seçin ve kaydedin. - Container'ı başlatın, Console'u açın ve root olarak giriş yapın.
- Container'ın kendi ağ dosyasını düzenleyin:
nano /etc/network/interfaces
- İçeriği aşağıdaki gibi statik IP ayarlarıyla güncelleyin:
auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 10.10.10.100/24 # Container'ın bu ağdaki özel IP adresi gateway 10.10.10.1 # Ağ geçidimiz: Proxmox'taki vmbr1'in adresi nameserver 8.8.8.8 # DNS sunucusu (Google) nameserver 1.1.1.1 # DNS sunucusu (Cloudflare)
- Dosyayı kaydedip container'ı Reboot edin.
- Açıldığında internet bağlantısını test edin:
ping google.com
. Cevap alıyorsanız, harika! NAT çalışıyor.
Adım 4: Port Yönlendirme ile Dış Dünyaya Kapı Açma
Şimdi en heyecanlı kısma geldik. Dışarıdan sunucumuzun genel IP'sinin 8080
portuna gelen bir isteği, container'ımızdaki web sunucusunun 80
portuna yönlendireceğiz.
-
Test için Web Sunucusu Kurun (Container İçinde):
apt update && apt install apache2 -y
-
Proxmox Sunucusunun Shell'ine Geri Dönün:
Aşağıdaki sihirliiptables
komutunu çalıştırın:iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 8080 -j DNAT --to-destination 10.10.10.100:80
Komutun Anlamı: "Ey Proxmox, genel internete bağlı
vmbr0
arayüzünden sana gelen ve hedef portu8080
olan TCP paketlerini al ve onları10.10.10.100
IP adresinin80
numaralı portuna postala." -
Anı Test Etme Zamanı!
Herhangi bir bilgisayardaki tarayıcınızı açın ve adres çubuğuna şunu yazın:
http://<SUNUCUNUZUN_GENEL_IP_ADRESİ>:8080
Eğer karşınıza Apache'nin "It works!" sayfası geliyorsa, başardınız! Dış dünyadan container'ınıza eriştiniz.
Adım 5: Ayarların Uçup Gitmesini Önleme
iptables
kuralları geçicidir ve sunucu yeniden başladığında sıfırlanır. Bunları kalıcı yapmak için:
- Proxmox Sunucu Shell'inde
iptables-persistent
paketini kurun:
Kurulum sırasında mevcut IPv4 ve IPv6 kurallarını kaydetmek isteyip istemediğinizi sorduğunda her ikisine de Yes diyerek onaylayın. Bu paket, kurallarınızı bir dosyaya kaydedecek ve her açılışta otomatik olarak yükleyecektir.apt install iptables-persistent
Sonuç
Tebrikler! Artık tek bir genel IP adresine sahip dedicated sunucunuzu, birden çok servisi barındırabilen çok yönlü bir platforma dönüştürdünüz. Bu yöntemle aynı mantığı kullanarak bir oyun sunucusunun portunu (örn: 25565), bir veritabanının portunu veya bir medya sunucusunun portunu ilgili VM veya container'a kolayca yönlendirebilirsiniz.