Shield VPS bir “ara katmandır”. Oyuncular hiçbir zaman gerçek Metin2 makinesine bağlanmaz. Herkes önce kalkan görevi gören VPS’e bağlanır. O VPS de aldığı TCP trafiğini ana servera iletir.
Akış şu şekilde olur:
Oyuncu → Domain → Cloudflare → Shield VPS → Game Server
Buradaki kritik nokta şu: Gerçek server sadece vps üzerinden gelen portlara aktif olacak.
13000 (game)
11002 (auth)
15000 (channel vs.)
Ana sunucuda:
allow from VPS_IP
deny 13000
deny 11002
deny 15000
Burada yapılan şey şu:
Dünyadaki herkes bu portlara erişemez. Sadece VPS IP’si erişebilir.
Eğer bu ayarı yapmazsanız shield kurmanın anlamı kalmaz.
Firewall doğru çalışıyor mu test etmek için:
Başka bir makineden gerçek IP:13000 deneyebilirsiniz.
apt update
apt install nginx
Sonra nginx ana config dosyasını açın:
/etc/nginx/nginx.conf
Dosyanın en altına stream bloğu ekleyin:
Kod:
Burada yapılan şey şu:
VPS 13000 portunu dinliyor.
Gelen bağlantıyı alıp gerçek server’a iletiyor.
Kaydedip çık:
systemctl restart nginx
Şimdi VPS 13000 ve 11002 portlarını dinliyor.
A kaydı oluştur:
game.domainin.com → VPS_IP
Turuncu bulut açık olduğu anlamına gelir.
Client içinde artık IP yazılmaz.
Şu yazılacak:
game.domainin.com.
Ana server’da:
netstat -an | grep 13000
Bağlantıların VPS IP’sinden geldiğini görmelisiniz.
Eğer oyuncu IP’leri direkt görünüyorsa yanlış yapılandırma vardır veya sürüm, uyumluluk problemi vardır.
allow 22
allow 13000
allow 11002
enable
Yani VPS’te sadece gerekli portlar açık olacak.
Akış şu şekilde olur:
Oyuncu → Domain → Cloudflare → Shield VPS → Game Server
Buradaki kritik nokta şu: Gerçek server sadece vps üzerinden gelen portlara aktif olacak.
Sunucu dış bağlantılarını engelleme
Portlar diyelim ki:13000 (game)
11002 (auth)
15000 (channel vs.)
Ana sunucuda:
allow from VPS_IP
deny 13000
deny 11002
deny 15000
Burada yapılan şey şu:
Dünyadaki herkes bu portlara erişemez. Sadece VPS IP’si erişebilir.
Eğer bu ayarı yapmazsanız shield kurmanın anlamı kalmaz.
Firewall doğru çalışıyor mu test etmek için:
Başka bir makineden gerçek IP:13000 deneyebilirsiniz.
Proxy kurulumu
SSH:apt update
apt install nginx
Sonra nginx ana config dosyasını açın:
/etc/nginx/nginx.conf
Dosyanın en altına stream bloğu ekleyin:
Kod:
stream {
upstream game {
server GERCEK_SERVER_IP:13000;
}
server {
listen 13000;
proxy_pass game;
}
upstream auth {
server GERCEK_SERVER_IP:11002;
}
server {
listen 11002;
proxy_pass auth;
}
}
Burada yapılan şey şu:
VPS 13000 portunu dinliyor.
Gelen bağlantıyı alıp gerçek server’a iletiyor.
Kaydedip çık:
systemctl restart nginx
Şimdi VPS 13000 ve 11002 portlarını dinliyor.
Cloudflare ayarı
Cloudflare DNS kısmında:A kaydı oluştur:
game.domainin.com → VPS_IP
Turuncu bulut açık olduğu anlamına gelir.
Client içinde artık IP yazılmaz.
Şu yazılacak:
game.domainin.com.
Test
Oyununuza domain üzerinden giriş yapın.Ana server’da:
netstat -an | grep 13000
Bağlantıların VPS IP’sinden geldiğini görmelisiniz.
Eğer oyuncu IP’leri direkt görünüyorsa yanlış yapılandırma vardır veya sürüm, uyumluluk problemi vardır.
Ek güvenlik
Shield VPS üzerinde de aktif et:allow 22
allow 13000
allow 11002
enable
Yani VPS’te sadece gerekli portlar açık olacak.


