FiveM sunucu kurulumu üç parçanın bir araya getirilmesiyle yapılır: FXServer artifact’ı (sunucu çekirdeği), server-data klasörü (kaynaklar ve server.cfg) ve Cfx.re Keymaster üzerinden alınan ücretsiz lisans anahtarı. Bu üçü hazır olduğunda sunucunuz ilk açılışta txAdmin paneliyle birlikte ayağa kalkar ve 30120 portundan bağlantı kabul etmeye başlar.
Bu rehber sıfırdan çalışan bir roleplay sunucusuna kadar tüm yolu kapsıyor: artifact seçimi, veritabanı kurulumu, ESX ve QBCore framework’lerinin kurulumu, server.cfg satır satır açıklaması, yetkilendirme, port ayarları ve performans ölçümü. Adımlar hem Windows hem Linux için verildi.
Kurulum Öncesi: Neye İhtiyacınız Var?#
- Sunucu
- Kök erişimli bir VDS veya dedicated sunucu. Paylaşımlı hosting üzerinde FiveM çalışmaz.
- İşletim sistemi
- Windows Server 2022/2025 veya Ubuntu 24.04 LTS / Debian 12. İkisi de resmî olarak desteklenir.
- Veritabanı
- MySQL 8 veya MariaDB 10.6+. Framework kullanacaksanız zorunludur.
- Cfx.re hesabı
- Lisans anahtarını Keymaster üzerinden almak için gerekir, ücretsizdir.
- Portlar
- 30120/TCP + 30120/UDP (oyun), 40120/TCP (txAdmin paneli).
- Windows ek gereksinim
- Güncel Visual C++ Redistributable paketi.
-
FiveM resmî sitesiCfx.reAç
-
Cfx.re Keymaster — lisans anahtarıZorunluAç
-
Resmî sunucu kurulum dokümanıArtifact bağlantıları buradaAç
-
cfx-server-data — temel kaynak deposuAç
-
7-Zip — arşiv açma (Windows)İndir
-
WinSCP — dosya aktarımı (Windows’tan Linux’a)İndir
FXServer artifact’ları sık güncellenir ve doğrudan dosya adresleri her yeni yapıda değişir. Güncel Windows ve Linux artifact bağlantılarına yukarıdaki resmî kurulum dokümanı üzerinden ulaşın; üçüncü taraf sitelerden artifact indirmeyin.
Adım 1: Klasör Yapısını Kurun#
FiveM’de en sık yapılan hata, sunucu çekirdeğiyle sunucu verisini aynı klasöre koymaktır. Artifact’ı güncellediğinizde tüm kaynaklarınızı kaybedersiniz. Doğru yapı ikisini ayırır:
/fivem
├── server/ <-- FXServer artifact (güncellenebilir, silinebilir)
│ ├── FXServer.exe (Windows)
│ ├── run.cmd (Windows)
│ ├── run.sh (Linux)
│ └── ...
└── server-data/ <-- SİZİN VERİNİZ (asla silinmez)
├── resources/
│ ├── [system]/
│ ├── [standalone]/
│ ├── [esx]/ veya [qb]/
│ └── [local]/
├── cache/
└── server.cfg
Linux (Ubuntu 24.04 / Debian 12)#
# Gerekli paketler
sudo apt update
sudo apt install -y xz-utils git curl unzip screen
# Ayrı bir kullanıcı açın, root ile çalıştırmayın
sudo adduser --disabled-password --gecos "" fivem
sudo mkdir -p /opt/fivem/server /opt/fivem/server-data
sudo chown -R fivem:fivem /opt/fivem
sudo su - fivem
# Artifact'i indirin (bağlantıyı resmî dokümandan alın)
cd /opt/fivem/server
# wget <resmi-artifact-adresi>/fx.tar.xz
tar xf fx.tar.xz
rm fx.tar.xz
# Temel kaynak deposunu klonlayın
cd /opt/fivem
git clone https://github.com/citizenfx/cfx-server-data.git tmp-data
cp -a tmp-data/resources server-data/
rm -rf tmp-data
Windows Server 2022 / 2025#
Uzak Masaüstü (RDP) ile sunucuya bağlanın, C:\fivem\server ve C:\fivem\server-data klasörlerini oluşturun. Artifact ZIP dosyasını 7-Zip ile C:\fivem\server içine açın, cfx-server-data deposundaki resources klasörünü C:\fivem\server-data altına kopyalayın.
New-Item -ItemType Directory -Force C:\fivem\server, C:\fivem\server-data
# Artifact ZIP'ini C:\fivem\server icine acin
Expand-Archive -Path C:\indirilenler\server.zip -DestinationPath C:\fivem\server
Windows sunucuya bağlanma adımları için RDP bağlantı rehberimize, Linux tarafı için SSH ile bağlanma rehberine bakın.
Adım 2: Veritabanını Kurun#
ESX veya QBCore kullanacaksanız MySQL/MariaDB zorunludur. Vanilla bir sunucu (framework’süz) için gerekmez.
# Ubuntu 24.04 / Debian 12
sudo apt install -y mariadb-server
sudo systemctl enable --now mariadb
sudo mysql_secure_installation
# Veritabanı ve kullanıcı oluşturun
sudo mysql -u root -p
CREATE DATABASE fivem CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'fivemuser'@'localhost' IDENTIFIED BY 'guclu-bir-parola';
GRANT ALL PRIVILEGES ON fivem.* TO 'fivemuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Windows tarafında MariaDB veya MySQL kurulum sihirbazını kullanın; phpMyAdmin veya HeidiSQL ile yönetmek işinizi kolaylaştırır.
'%' (her yerden bağlanabilir) yetkisi vermeyin ve 3306 portunu internete açmayın. Veritabanı yalnızca localhost üzerinden erişilebilir olmalıdır. Güvenlik duvarı yapılandırması için firewall rehberimize bakın.Adım 3: Lisans Anahtarı Alın#
-
Cfx.re hesabı oluşturun#
Keymaster portalına forum hesabınızla giriş yapın. Hesabınız yoksa ücretsiz oluşturabilirsiniz.
-
Yeni bir sunucu anahtarı üretin#
Sunucunuzun IP adresini ve barındırma türünü girin. IP’ye kilitli anahtar daha güvenlidir ama sunucu taşıdığınızda güncellemeniz gerekir.
-
Anahtarı server.cfg’ye ekleyin#
sv_licenseKey "buraya-keymaster-anahtariniz"
steam_webApiKey ve rcon_password için de geçerlidir.Adım 4: server.cfg Yapılandırması#
Sunucunuzun beyni bu dosyadır. /opt/fivem/server-data/server.cfg (veya C:\fivem\server-data\server.cfg) yolunda oluşturun.
# ============ AĞ UÇ NOKTALARI ============
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"
# ============ TEMEL SİSTEM KAYNAKLARI ============
ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure fivem
ensure hardcap
ensure rconlog
ensure scoreboard
ensure playernames
# ============ VERİTABANI ============
set mysql_connection_string "mysql://fivemuser:guclu-bir-parola@localhost/fivem?charset=utf8mb4"
ensure oxmysql
# ============ FRAMEWORK ============
# ESX kullanıyorsanız:
ensure es_extended
# QBCore kullanıyorsanız (ikisini birden AÇMAYIN):
# ensure qb-core
# ============ SUNUCU KİMLİĞİ ============
sv_hostname "^2Sunucu Adiniz ^7| ^3Turkce Roleplay"
sets sv_projectName "Sunucu Adiniz"
sets sv_projectDesc "Turkiye lokasyonlu Turkce roleplay sunucusu"
sets locale "tr-TR"
sets tags "roleplay, turkce, esx, whitelist"
load_server_icon logo.png
# ============ SLOT VE OYUN AYARLARI ============
sv_maxclients 48
set onesync on
set sv_enforceGameBuild 3095
sv_scriptHookAllowed 0
sv_endpointprivacy true
# ============ ANAHTARLAR ============
sv_licenseKey "keymaster-anahtariniz"
set steam_webApiKey "steam-web-api-anahtariniz"
# ============ YÖNETİCİ YETKİLERİ ============
add_ace group.admin command allow
add_ace group.admin command.quit deny
add_principal identifier.fivem:1234567 group.admin
# ============ RCON (kapali tutun) ============
# rcon_password "kullanmiyorsaniz-bu-satiri-acmayin"
Kritik satırların açıklaması#
| Ayar | Ne yapar | Öneri |
|---|---|---|
endpoint_add_udp | Oyun trafiğinin UDP tarafı | Zorunlu — eksikse kimse bağlanamaz |
sv_maxclients | Slot sayısı | Donanımınıza göre; 32-64 tipik |
onesync | Genişletilmiş senkronizasyon | 32 slot üstünde açık olmalı |
sv_scriptHookAllowed | İstemci script hook izni | Daima 0 — hile kapısıdır |
sv_enforceGameBuild | Zorunlu GTA V sürümü | Kaynaklarınızın istediği build’i yazın |
sv_endpointprivacy | Oyuncu IP’lerini gizler | true |
rcon_password | Uzaktan konsol | Kapalı tutun, txAdmin kullanın |
steam_webApiKey | Steam kimlik doğrulama | Steam tanımlayıcısı kullanacaksanız gerekli |
start yerine ensure ile başlatın. ensure kaynağı zaten çalışıyorsa yeniden başlatır, çalışmıyorsa başlatır; geliştirme sırasında bu davranış çok daha güvenilirdir.Adım 5: Sunucuyu İlk Kez Başlatın#
Linux#
# screen oturumu icinde calistirin (SSH kapansa da sunucu ayakta kalir)
screen -S fivem
cd /opt/fivem/server
bash run.sh +exec /opt/fivem/server-data/server.cfg
# Oturumdan cikmak icin: Ctrl+A ardindan D
# Geri donmek icin: screen -r fivem
Windows#
@echo off
cd /d C:\fivem\server
FXServer.exe +exec C:\fivem\server-data\server.cfg
pause
Bu içeriği C:\fivem\start.bat olarak kaydedip çift tıklayarak çalıştırabilirsiniz.
txAdmin ile başlatma#
Argümansız başlattığınızda FXServer txAdmin panelini açar ve konsola bir adres ile PIN yazdırır. Tarayıcıda http://sunucu-ip:40120 adresine gidip bu PIN ile ilk yönetici hesabını oluşturun. txAdmin size şunları verir:
- Tarayıcıdan sunucu başlatma, durdurma ve yeniden başlatma
- Canlı konsol ve komut çalıştırma
- Oyuncu listesi, uyarı, kick ve ban yönetimi
- Zamanlanmış otomatik yeniden başlatma (roleplay sunucularında standart)
- Sunucu verisi yedekleme ve kaynak yönetimi
Adım 6: Güvenlik Duvarı ve Port Ayarları#
# Ubuntu / Debian — UFW
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
# txAdmin sadece kendi IP'nize acik olsun
sudo ufw allow from SIZIN.IP.ADRESINIZ to any port 40120 proto tcp
sudo ufw enable
sudo ufw status numbered
# Windows Server
New-NetFirewallRule -DisplayName "FiveM-Oyun-TCP" -Direction Inbound -LocalPort 30120 -Protocol TCP -Action Allow
New-NetFirewallRule -DisplayName "FiveM-Oyun-UDP" -Direction Inbound -LocalPort 30120 -Protocol UDP -Action Allow
New-NetFirewallRule -DisplayName "txAdmin" -Direction Inbound -LocalPort 40120 -Protocol TCP -Action Allow -RemoteAddress SIZIN.IP.ADRESINIZ
UDP portunu açmayı unutmak, FiveM kurulumlarının en yaygın hatasıdır. Sunucu konsolda sorunsuz görünür, txAdmin çalışır ama hiçbir oyuncu bağlanamaz. Port testi:
# Disaridan bir makineden UDP testi
nmap -sU -p 30120 sunucu-ip
# TCP testi
nc -zv sunucu-ip 30120
Adım 7: Framework Kurulumu — ESX ve QBCore#
Vanilla FiveM sunucusu boş bir Los Santos haritasıdır. Roleplay için bir framework gerekir. İkisi arasındaki fark önemlidir ve sonradan geçiş yapmak neredeyse sıfırdan kurulum demektir.
| Ölçüt | ESX | QBCore |
|---|---|---|
| Olgunluk | Çok yaygın, uzun geçmiş | Daha yeni ama hızlı büyüyor |
| Hazır kaynak sayısı | Çok fazla (Türkçe kaynak dahil) | Artıyor |
| Kod yapısı | Yıllar içinde katmanlaşmış | Daha modüler ve temiz |
| Öğrenme eğrisi | Orta | Orta-yüksek |
| Envanter | Ayrı kaynak seçilir | Dahili envanter mevcut |
| Kimler için | Hazır kaynakla hızlı başlangıç | Kendi sistemini yazacak ekipler |
ESX kurulumu (özet akış)#
-
Kaynak klasörlerini hazırlayın#
server-data/resources/altında[esx]ve[standalone]klasörleri oluşturun. Köşeli parantezli klasörler kategori klasörüdür; içindeki her alt klasör ayrı bir kaynak olarak taranır. -
oxmysql’i kurun#
Veritabanı köprüsüdür ve ESX’ten önce başlatılmalıdır.
[standalone]içine koyun veserver.cfg’deensure oxmysqlsatırınınensure es_extendedsatırından önce gelmesine dikkat edin. -
es_extended ve bağımlılıklarını ekleyin#
ESX çekirdeği ile birlikte menü ve bildirim kaynaklarını da kurmanız gerekir. Framework’ün kendi dokümanındaki sıralamaya birebir uyun.
-
SQL dosyalarını içe aktarın#
mysql -u fivemuser -p fivem < es_extended.sql -
Sırayla test edin#
Her kaynağı ekledikten sonra sunucuyu yeniden başlatıp konsolu okuyun. On kaynağı aynı anda ekleyip hatayı aramak saatlerinizi alır.
QBCore kurulumu (özet akış)#
Akış benzerdir: [qb] klasörü oluşturulur, oxmysql kurulur, qb-core ve temel modüller (çok oyunculu karakter, envanter, hedefleme, hastane, polis) sırayla eklenir, veritabanı şeması içe aktarılır. QBCore’un modülleri birbirine bağımlıdır; resmî dokümandaki kurulum sırasını atlamayın.
ensure satırı açıksa sunucu ya başlamaz ya da tanımlanamayan hatalar üretir. Bir framework seçin ve ona bağlı kalın.Adım 8: Yetkilendirme (ACE) Sistemi#
FiveM’de yetkiler ACE (Access Control Entries) sistemiyle verilir. Oyuncu bir principal’a bağlanır, principal bir gruba dâhil olur, gruba komut izinleri verilir.
# Grup tanımları
add_ace group.admin command allow
add_ace group.admin command.quit deny
add_ace group.mod command.kick allow
add_ace group.mod command.ban allow
# Grup hiyerarşisi
add_principal group.admin group.mod
# Oyuncuyu gruba ekleme (tanımlayıcıyı konsoldan alın)
add_principal identifier.fivem:1234567 group.admin
add_principal identifier.license:abc123... group.mod
add_principal identifier.steam:11000010... group.mod
Oyuncu tanımlayıcılarını öğrenmek için oyuncu sunucudayken konsolda şu komutu kullanın:
status
Çıktıda her oyuncunun license:, steam:, discord: ve fivem: tanımlayıcıları listelenir. Kalıcı yetki için license: tanımlayıcısı en güvenilir olanıdır çünkü oyuncunun FiveM hesabına bağlıdır.
Performans: resmon ve Kaynak Optimizasyonu#
FiveM’de performans sorunlarının büyük çoğunluğu donanımdan değil kötü yazılmış kaynaklardan gelir. Ölçmeden müdahale etmeyin.
# Sunucu konsolunda veya F8 istemci konsolunda
resmon
# Belirli bir kaynağı yeniden başlat
restart kaynak_adi
# Kaynağı durdur
stop kaynak_adi
# Sunucu durumu
status
resmon çıktısında her kaynağın CPU zamanı milisaniye cinsinden gösterilir. Genel kural: tek bir kaynağın sürekli 1 ms üzerinde kalması incelenmeyi hak eder, 3 ms üzeri ise doğrudan sorundur.
Sık görülen performans katilleri#
- Boş bekleme döngüleri:
Citizen.Wait(0)ile her frame çalışan ve aslında bir şey yapmayan döngüler. - Tick içinde veritabanı sorgusu: Her karede MySQL’e gitmek sunucuyu boğar; veriyi belleğe alın.
- Aşırı nesne ve NPC: Haritaya eklenen yüzlerce statik nesne hem sunucuyu hem istemciyi zorlar.
- Yanlış senkronize edilmiş araçlar: Sürekli sunucuya konum bildiren araç kaynakları ağ trafiğini şişirir.
- Log spam’i: Her olayı konsola yazan kaynaklar disk I/O üretir.
Donanım Önerisi#
FiveM sunucusu, ana oyun döngüsünü tek bir çekirdek üzerinde işler. Bu yüzden Minecraft’ta olduğu gibi burada da belirleyici olan çekirdek sayısı değil saat hızıdır. Çok çekirdekli ama düşük frekanslı sunucu işlemcileri FiveM’de zayıf kalır.
| Sunucu profili | RAM | İşlemci | Disk |
|---|---|---|---|
| 16-32 slot, hafif kaynak seti | 8 GB | Ryzen 9 3900X ve üzeri | 50 GB NVMe SSD |
| 32-48 slot, ESX/QBCore roleplay | 12-16 GB | Ryzen 9 7900X | 100 GB NVMe SSD |
| 48-64 slot, ağır kaynak seti | 16 GB | Ryzen 9 7900X / 7950X | 100 GB+ NVMe SSD |
| 64+ slot veya çoklu sunucu | 32 GB ve üzeri | Ryzen 9 7950X | 200 GB+ NVMe SSD |
Veritabanı aynı makinede çalışacaksa MariaDB’ye ayrıca 2-4 GB pay bırakın. Disk tarafında NVMe SSD tercih edin: kaynak dosyalarının okunması, oyuncu verisinin yazılması ve log akışı birlikte ciddi I/O üretir.
Türkiye lokasyonu FiveM’de özellikle önemlidir; roleplay sunucularında ses ve senkronizasyon gecikmesi oyun deneyimini doğrudan belirler. Hazır paketler için FiveM sunucu paketleri sayfasına, kendi kurulumunuzu yapmak isterseniz yüksek frekanslı Ryzen VDS veya dedicated sunucu seçeneklerine bakabilirsiniz.
Yaygın Hatalar ve Çözümleri#
| Belirti | Sebep | Çözüm |
|---|---|---|
| Sunucu listede görünmüyor | Lisans anahtarı geçersiz veya IP uyumsuz | Keymaster’dan anahtarı kontrol edin, IP kilidini güncelleyin |
| Konsol açık ama kimse bağlanamıyor | UDP 30120 kapalı | Güvenlik duvarında UDP kuralını ekleyin |
| “Couldn’t load resource” hatası | fxmanifest.lua hatalı veya klasör adı yanlış | Kaynak klasör adını ve manifest sürümünü kontrol edin |
| Veritabanı bağlantı hatası | Bağlantı dizgisi yanlış veya oxmysql sonra başlıyor | Dizgiyi düzeltin, ensure oxmysql satırını yukarı alın |
| Oyuncular sürekli düşüyor | OneSync kapalı veya slot aşımı | set onesync on ekleyin, sv_maxclients değerini gözden geçirin |
| Sunucu her açılışta çöküyor | Uyumsuz kaynak veya eski artifact | Kaynakları teker teker devre dışı bırakarak izole edin |
| Oyuncularda “game build” uyarısı | sv_enforceGameBuild kaynaklarla uyumsuz | Kaynakların istediği build numarasını yazın |
Yedekleme ve Bakım#
FiveM sunucusunda yedeklenmesi gereken üç şey vardır: server-data/resources/ klasörü, server.cfg dosyası ve MySQL veritabanı. Artifact klasörünü yedeklemeye gerek yoktur, yeniden indirilebilir.
#!/bin/bash
# /opt/fivem/yedek.sh
TARIH=$(date +%F-%H%M)
HEDEF=/opt/yedekler
mkdir -p $HEDEF
# Kaynaklar ve yapilandirma
tar -czf $HEDEF/fivem-data-$TARIH.tar.gz \
/opt/fivem/server-data/resources \
/opt/fivem/server-data/server.cfg
# Veritabani
mysqldump -u fivemuser -p'guclu-bir-parola' fivem \
| gzip > $HEDEF/fivem-db-$TARIH.sql.gz
# 14 gunden eski yedekleri sil
find $HEDEF -name "fivem-*" -mtime +14 -delete
# Her gece 04:00'te calistir
crontab -e
0 4 * * * /opt/fivem/yedek.sh >> /var/log/fivem-yedek.log 2>&1
Yedeğin en az bir kopyası sunucu dışında bir konumda durmalıdır. Strateji için 3-2-1 yedekleme kuralı sayfamıza bakın. Sunucu sağlığını takip etmek için izleme rehberi işinizi görür.
Sunucuyu Servis Olarak Çalıştırma#
Sunucunun makine yeniden başladığında kendiliğinden ayağa kalkması için servisleştirin.
# /etc/systemd/system/fivem.service
[Unit]
Description=FiveM FXServer
After=network.target mariadb.service
[Service]
Type=simple
User=fivem
WorkingDirectory=/opt/fivem/server
ExecStart=/bin/bash /opt/fivem/server/run.sh +exec /opt/fivem/server-data/server.cfg
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now fivem
sudo systemctl status fivem
journalctl -u fivem -f
Windows tarafında NSSM (Non-Sucking Service Manager) ile FXServer.exe’yi bir Windows hizmetine dönüştürebilirsiniz; böylece RDP oturumu kapandığında sunucu durmaz.
Özetle#
FiveM sunucu kurulumu, artifact ile server-data’yı ayırdığınız ve server.cfg’yi doğru yazdığınız sürece öngörülebilir bir süreçtir. Kritik noktalar şunlardır: 30120 portunu hem TCP hem UDP açmak, lisans anahtarını Keymaster’dan doğru IP ile üretmek, sv_scriptHookAllowed 0 bırakmak, txAdmin panelini internete tamamen açmamak ve framework seçimini baştan yapıp ona bağlı kalmak.
Performans tarafında FiveM tek çekirdek yoğun çalışır; yüksek saat hızlı bir Ryzen 9, NVMe SSD ve 48 slot için 12-16 GB RAM sağlıklı bir başlangıçtır. Sorun yaşadığınızda resmon ile ölçün, tahmin yürütmeyin.
Benzer bir GTA çok oyunculu platformu kurmak isterseniz MTA:SA sunucu kurulumu rehberimize, sunucu altyapısını sıfırdan hazırlayacaksanız VDS ilk ayarlar ve Ubuntu Server kurulumu sayfalarına bakabilirsiniz. Kurulum sırasında takılırsanız destek talebi açabilirsiniz.