cPanel yıllıkta ücretsiz taşıma + SSLHemen İncele
Buyukweb
CS2 Sunucu Kurma: VDS'te Adım Adım Kurulum

CS2 Sunucu Kurma: VDS'te Adım Adım Kurulum

Linux VDS üzerinde Counter-Strike 2 sunucusu kurma rehberi. SteamCMD, server.cfg ve servis yapılandırmasını adım adım uygulayın.

Kendi Counter-Strike 2 topluluk sunucunuzu açmak, oyuncularınıza düşük gecikmeli ve kurallarını kendinizin belirlediği bağımsız bir maç ortamı sağlar. Linux işletim sisteminde cs2 sunucu kurma süreci, SteamCMD konsol aracı üzerinden sunucu paketlerinin çekilmesi, yapılandırma dosyalarının hazırlanması ve başlatma parametrelerinin optimize edilmesiyle yürütülür. Kararlı bir sunucu simülasyonu elde etmek için paylaşımsız kaynaklara sahip bir VDS sunucu altyapısı tercih edilebilir; oyuncuların FPS değerleri ise temel olarak kendi istemci donanımlarına bağlıdır.

Kısa cevap:

  • 64-bit Linux dağıtımında paket havuzunu güncelleyip gerekli 32-bit kütüphaneleri ve SteamCMD paketini kurun.
  • SteamCMD üzerinden 730 kimlikli Counter-Strike 2 sunucu dosyalarını yerel klasöre indirin.
  • Steam hesap yönetim sayfasından sunucunuz için Game Server Login Token (GSLT) anahtarı oluşturun.
  • Gerekli UDP ve TCP portlarını açtıktan sonra sunucuyu systemd servisi olarak arka planda başlatın.

CS2 sunucusu için gereksinimler

Counter-Strike 2 Dedicated Server altyapısı, Source 2 oyun motorunun gelişmiş fizik hesaplamaları, hacimsel duman etkileşimleri ve alt-tick (sub-tick) zamanlama mekanizması nedeniyle kararlı donanım kaynaklarına ihtiyaç duyar. Oyuncu sayısı arttığında, harita genelindeki el bombası patlamaları, mermi izleri ve oyuncu pozisyonları doğrudan sunucu işlemcisinde hesaplanır. Bu sebeple sunucunun barınacağı sanal ortamda tek çekirdek saat frekansı, sunucu simülasyonunun zamanında işlenmesinde rol oynarken oyuncuların kare süreleri ve FPS değerleri temel olarak kendi istemci donanımlarına bağlıdır.

Sanal sunucu tercihinde sanallaştırma mimarisinin sunduğu yalıtım büyük önem taşır. Donanım kaynaklarının diğer kullanıcılardan ayrıldığı VDS sanal özel sunucu yapıları kaynakların öngörülebilir şekilde ayrılmasını sağlasa da ağ koşulları ping dalgalanmalarına, yetersiz donanım kapasitesi de işlemci darboğazlarına yol açabilir. Depolama tarafında NVMe SSD zorunlu olmamakla birlikte, yeterli okuma ve yazma performansı sağlayan SATA SSD modelleri de sunucu gereksinimlerini karşılayabilir. NVMe sürücüler dosya erişiminde avantaj sağlayabilir; ancak bu etki disk darboğazına, sistem önbelleğine ve diğer donanım bileşenlerine bağlı olarak değişir.

İşletim sistemi olarak 64-bit mimariye sahip Ubuntu 22.04 LTS veya Debian 12 dağıtımları önerilir. Bellek tarafında ise sunucunun işletim sistemiyle birlikte rahat çalışabilmesi için en az 4 GB RAM ayrılmalıdır. Geniş harita havuzu ve çok sayıda oyuncu barındıran topluluk sunucularında bellek ve işlemci ihtiyacı gerçek oyuncu yükü ve eklentilerle test edilmelidir.

Sunucunuzun donanım bütçesini planlarken aşağıdaki tabloyu temel alabilirsiniz:

Donanım Bileşeni Başlangıç Seviyesi Genişletilmiş Kapasite
İşlemci (CPU) 2 vCPU (Yüksek frekanslı çekirdek) 4 vCPU (Yüksek frekanslı çekirdek)
Bellek (RAM) 4 GB DDR4 8 GB DDR4 / DDR5
Disk Alanı 60 GB NVMe SSD 90 GB NVMe SSD
İşletim Sistemi Ubuntu 22.04 LTS (64-bit) Ubuntu 22.04 LTS / Debian 12 (64-bit)
Ağ Bağlantısı 100 Mbps simetrik hat 1 Gbps simetrik hat

Doğru donanım bileşenlerini belirlemek, sunucu içi hesaplama gecikmelerini önleyerek alt-tick kayıtlarının düşük gecikmeyle çalışmasına katkı sağlar. Sunucuyu yönetmeye başlamadan önce temel Linux işletim sistemi yapılandırmasını VDS sunucu kurulumu içeriğimizden inceleyebilirsiniz.

SteamCMD kurulumu

SteamCMD, Valve tarafından geliştirilen ve özel oyun sunucusu dosyalarını komut satırı üzerinden yönetmeyi sağlayan konsol aracıdır. CS2 sunucu yazılımlarını root kullanıcısı ile çalıştırmak güvenlik açıklarına yol açabileceğinden, sistemde yalnızca bu görevi üstlenecek izole bir kullanıcı açılması önerilir.

İlk adım olarak Ubuntu sistem depolarında bulunan ek yazılım havuzlarını etkinleştirin, 32-bit mimari desteğini ekleyin ve gerekli temel kütüphaneleri sisteme kurun:

sudo add-apt-repository multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 libicu-dev ca-certificates locales steamcmd

Paketlerin kurulumu sırasında ekrana gelen lisans sözleşmesini klavyenizdeki yön tuşlarıyla onaylayarak ilerleyin. Kurulum bittikten sonra sunucu dosyalarını barındırmak üzere steam adında yeni bir kullanıcı oluşturun ve bu kullanıcıya geçiş yapın:

sudo useradd -m -s /bin/bash steam
sudo su - steam

SteamCMD çalıştırılabilir dosyasının genel yollar üzerinden çağrılabilmesi için sembolik bağlantıları tanımlayın. Ayrıca CS2'nin 64-bit Steam istemci kütüphanesini hata vermeden okuyabilmesi adına dizin yapısını oluşturup ilgili bağlantıları kurun:

mkdir -p ~/.steam/sdk32
mkdir -p ~/.steam/sdk64
mkdir -p ~/steamcmd
ln -s /usr/games/steamcmd ~/steamcmd/steamcmd.sh

Aracın ilk indirme ve dosya doğrulama süreçlerini başlatmak için çıkış parametresiyle bir kez çalıştırın:

~/steamcmd/steamcmd.sh +quit

Komut sonlandığında SteamCMD kendi çekirdek bileşenlerini günceller. 64-bit istemci kütüphanesini hedef dizine bağlayarak bu adımı tamamlayın:

ln -s ~/.steam/steamcmd/linux64/steamclient.so ~/.steam/sdk64/steamclient.so

Konsolda herhangi bir hata mesajı almadıysanız sunucu paketlerini indirme aşamasına geçebilirsiniz.

Sunucu dosyalarını indirme ve başlatma

SteamCMD kurulumu tamamlandıktan sonra oyun sunucusu dosyalarının indirilmesine başlanabilir. Counter-Strike 2 sunucu paketinin Valve uygulama kimliği (AppID) 730 olarak tanımlanmıştır. CS2 dosyalarını indirmek için kişisel Steam kullanıcı adı ve şifrenizi girmeniz gerekmez; genel erişime açık sunucu dosyaları anonim oturumla indirilebilir.

Oyun sunucusu dosyalarının kaydedileceği hedef dizini belirterek indirme komutunu çalıştırın:

mkdir -p ~/cs2-server
~/steamcmd/steamcmd.sh +force_install_dir /home/steam/cs2-server +login anonymous +app_update 730 validate +quit

Oyun dosyalarının boyutu güncellemelerle değiştiğinden güncel indirme ve disk gereksinimleri kontrol edilmelidir; işlem süresi sunucunuzun internet bant genişliğine bağlı olarak değişiklik gösterir. Komuttaki validate parametresi, indirilen dosyaların bütünlüğünü denetler ve eksik bir veri parçası varsa onu yeniden çekerek kararlı bir dosya yapısı kurar. İndirme tamamlandığında komut satırı kullanıcıyı tekrar terminal girişine yönlendirir.

İndirme tamamlandığında sunucunun internet ortamında listelenebilmesi ve oyuncuların dış ağdan katılabilmesi için bir Game Server Login Token (GSLT) üretilmelidir. Steam Oyun Sunucusu Hesap Yönetimi sayfasına web tarayıcınızdan giriş yapın. AppID kısmına 730 yazıp açıklama girerek belirteç anahtarınızı oluşturun ve kopyalayın.

Gerekli kütüphane arama yollarını hazırlayan başlatıcı üzerinden sunucunun kararlı şekilde açıldığını doğrulamak adına ilk test çalıştırmasını konsol üzerinden başlatabilirsiniz:

/home/steam/cs2-server/game/cs2.sh -dedicated +ip 0.0.0.0 -port 27015 +map de_dust2 +sv_setsteamaccount <GSLT_KODUNUZ>

Konsol ekranında sunucu motorunun yüklendiği, haritanın açıldığı ve ağ soketinin dinlemeye başladığı bilgisi yer aldığında test başarılı demektir. Komut satırına quit yazarak oturumu sonlandırın; ardından yönetimsel komutları yürütebilmek için exit komutuyla sudo yetkisine sahip ana kullanıcınıza geri dönün.

Temel ayarlar: harita, mod, oyuncu sayısı

CS2 sunucusunun maç dinamikleri, konsol değişkenleri (CVAR) ve yapılandırma metinleri üzerinden yönetilir. Sunucu her başladığında veya harita değiştiğinde yürütülecek temel kurallar server.cfg dosyasında saklanır. Bu dosya, oyun motorunun temel parametrilerini ve sunucu kimliğini belirler.

Ayar dosyasını oluşturmak için bir metin düzenleyiciyle ilgili konuma gidin:

sudo -u steam nano /home/steam/cs2-server/game/csgo/cfg/server.cfg

Dosya içerisine sunucu adı, yönetim şifresi ve ağ değişkenlerini ekleyin:

hostname "Buyukweb CS2 Topluluk Sunucusu"
rcon_password "GucluYonetimSifreniz"
sv_password ""

sv_cheats 0
sv_lan 0

sv_maxrate 0
sv_minrate 786432

Oyun modu yapılandırması server.cfg içindeki maç ayarlarını ezebildiğinden ve bomba imha haritalarında süreyi mp_roundtime_defuse belirlediğinden, rekabetçi maç ayarları game/csgo/cfg/gamemode_competitive_server.cfg dosyasına yazılmalıdır:

sudo -u steam nano /home/steam/cs2-server/game/csgo/cfg/gamemode_competitive_server.cfg
mp_autoteambalance 1
mp_limitteams 1
mp_maxrounds 24
mp_roundtime_defuse 1.92
mp_c4timer 40
mp_freezetime 15

Oyun modlarını belirlemek için sunucu başlatma satırına ilgili parametreler eklenmelidir. Valve motoru oyun tiplerini şu parametre çiftleriyle tanır:

  • Rekabetçi: +game_type 0 +game_mode 1
  • Basit Eğlence: +game_type 0 +game_mode 0
  • Ölüm Maçı: +game_type 1 +game_mode 2
  • Silah Yarışı: +game_type 1 +game_mode 0

Oyuncu limitini belirlemek için komut satırına -maxplayers 16 parametresi dahil edilir. Harita havuzu yönetimi için +mapgroup mg_active ve başlangıç haritası için +map de_mirage değerleri atanır. Bu değerler sayesinde sunucu başlarken doğrudan rekabetçi kural setine uygun harita döngüsünü devreye alır. Yapılandırma dosyasını kaydedip düzenleyiciden çıkabilirsiniz.

Port açma ve bağlantı testi

CS2 oyuncularının sunucuya katılabilmesi için işletim sistemi güvenlik duvarında ve sağlayıcı ağ panelinde ilgili portların dış trafiğe açık olması şarttır. Counter-Strike 2, oyun veri akışı ve sorgu trafiği için UDP protokolünü, yönetimsel RCON erişimi için ise TCP protokolünü kullanır.

Ubuntu üzerinde yaygın olarak kullanılan Uncomplicated Firewall (UFW) aracını yapılandırmadan önce durumunu kontrol edin. Güvenlik duvarı etkinleştirildiğinde erişimin kesilmesini önlemek için öncelikle sisteminizde aktif olarak kullanılan SSH portunu doğrulayın ve o porta izin verin:

sudo ufw status
sudo ufw allow <SSH_PORTUNUZ>/tcp
sudo ufw allow 27015/udp
sudo ufw allow 27015/tcp
sudo ufw allow 27020/udp
sudo ufw enable

Kullanılan ağ portlarının görev dağılımı şu şekildedir:

  • 27015 UDP: Oyun veri akışı, oyuncu senkronizasyonu ve istemci sorguları.
  • 27015 TCP: RCON uzaktan yönetim komutlarının iletildiği port.
  • 27020 UDP: SourceTV yayınları ve izleyici veri aktarımı.

Kuralların işlendiğini sudo ufw status komutuyla teyit edin. Sanal sunucu sağlayıcınızın yönetim panelinde harici bir güvenlik duvarı profili yer alıyorsa, aynı port tanımlarının panel üzerinden de izinli olarak ayarlandığından emin olun.

Bağlantı testine geçmeden önce sunucu sürecini konsoldan tekrar çalıştırın veya servis kurulumunu tamamlayıp servisi başlatın; ardından istemci bilgisayarınızda Counter-Strike 2 oyununu açın. Ayarlar menüsünden geliştirici konsolunu aktif hale getirdikten sonra konsol ekranına şu komutu girin:

connect SUNUCU_IP_ADRESINIZ:27015

Eğer harita yükleme ekranı açılmıyorsa güvenlik duvarı kurallarını ve IP yönlendirmelerini tekrar inceleyin. Farklı oyunların sunucu yapıları ve port standartları hakkında kapsamlı bilgi almak için VDS oyun sunucusu kurma başlıklı rehberimizden faydalanabilirsiniz.

Sunucuyu servis olarak 7/24 çalıştırma

Terminal oturumu kapandığında CS2 sürecinin sonlanmaması ve sunucu yeniden başlatıldığında oyun motorunun otomatik olarak devreye girmesi için bir systemd servis ünitesi tanımlanmalıdır. Bu yapılandırma, sunucunun çökme durumlarında kendi kendine yeniden başlamasını da sağlar.

Sistem servis dizininde bir yapılandırma dosyası oluşturun:

sudo nano /etc/systemd/system/cs2.service

Dosyanın içerisine aşağıdaki birim tanımlarını ekleyin:

[Unit]
Description=Counter-Strike 2 Dedicated Server
After=network.target

[Service]
Type=simple
User=steam
WorkingDirectory=/home/steam/cs2-server/game
ExecStart=/home/steam/cs2-server/game/cs2.sh -dedicated +ip 0.0.0.0 -port 27015 +game_type 0 +game_mode 1 +mapgroup mg_active +map de_inferno -maxplayers 16 +sv_setsteamaccount SIZIN_GSLT_KODUNUZ
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

Dosyayı kaydedip kapattıktan sonra systemd yöneticisini güncelleyin ve servisi başlangıca ekleyerek çalıştırın:

sudo systemctl daemon-reload
sudo systemctl enable cs2.service
sudo systemctl start cs2.service

Sunucunun anlık çalışma durumunu ve konsol kayıtlarını takip etmek için aşağıdaki yönetim komutlarını kullanabilirsiniz:

sudo systemctl status cs2.service
journalctl -u cs2.service -f

Sistem kaynaklarının durumunu ve oyuncu yoğunluğunda oluşan işlemci yüklerini takip etmek için sunucu izleme araçları kullanarak performans grafiklerini gözlemleyebilirsiniz. Ayrıca sunucu güncellemeleri ve eklenti yüklemeleri öncesinde veri güvenliğini sağlamak amacıyla VDS sunucu yedekleme yöntemlerini uygulamanız önerilir. Donanım kaynaklarınızı genişletmek ve topluluğunuza düşük gecikmeli bağlantı sunmak adına yüksek işlemci frekansına sahip kurumsal VDS sunucu paketleri arasından seçiminizi yapabilir, kurulumu tamamlayarak CS2 sunucunuzu oyuncularınıza açabilirsiniz.

Sık Sorulan Sorular

CS2 sunucusu için GSLT anahtarı almak zorunlu mu?

GSLT, sunucunun Steam topluluk sunucu listesinde yer alması için gereklidir. Belirteç tanımlanmadığında sunucu yerel ağ bağlantılarıyla sınırlı kalır; internet üzerinden doğrudan IP adresiyle katılım için de geçerli bir GSLT tanımlanmalıdır. Belirteç oluşturabilmek için Steam hesabınızın kısıtlanmamış olması, geçerli bir telefon numarasıyla doğrulanması ve topluluk yasağının bulunmaması gerekir.

CS2 sunucusunda tickrate 128 yapılabilir mi?

Hayır, Counter-Strike 2 varsayılan olarak 64 tick döngüsü üzerinde çalışır. Alt-tick (sub-tick) mimarisi simülasyonu tick aralarında çalıştırmaz; girdilerin tick içindeki anını kaydederek sabit tick döngüsündeki hesaplamalarda bu zaman bilgisinin kullanılmasını sağlar. Valve, sunucu komut satırındaki harici tickrate değişikliklerini kısıtladığı için başlatma parametrelerine girilen 128 tick komutları motor tarafından dikkate alınmaz.

CS2 Dedicated Server için kaç çekirdek CPU önerilir?

Temel seviyedeki bir CS2 sunucusu için en az 2 vCPU çekirdeği tavsiye edilir. Oyuncu sayısının arttığı topluluk sunucularında ihtiyaç duyulan çekirdek kapasitesi, işlemcinin mimarisine, kullanılan eklentilere ve anlık sistem yüküne göre ölçülerek belirlenmelidir. Çekirdek sayısıyla birlikte çekirdek başına düşen saat frekansı, oyun simülasyonunun gecikme yaşamadan hesaplanmasında doğrudan belirleyici bir faktördür.

Sunucuya CS2 güncellemesi geldiğinde nasıl yüklenir?

Oyun güncellemesi yayımlandığında öncelikle çalışan servis sudo systemctl stop cs2 komutuyla durdurulmalıdır. Ardından steam kullanıcısına geçilerek SteamCMD üzerinden AppID 730 için güncelleme komutu yeniden çalıştırılır. Dosyaların doğrulanması tamamlandıktan sonra systemd servisi yeniden başlatılarak güncel sürüm yayına alınır.

Oyun Sunucuları İlgili Hizmetlerimiz

Bu yazıda anlatılan teknik konuyu profesyonel altyapıyla deneyimleyin

Etiketler:

#CS2 sunucu#SteamCMD#VDS sunucu#Linux oyun sunucusu

Bu yazıyı paylaş

WhatsApp0850 302 60 70