Factorio çevrimiçi oyun sunucusu kurma rehberi
Bu eğitimde Factorio oyun sunucusunun nasıl kurulacağı ele alınmakta ve en iyi performans için teknik ve uygulama ipuçları verilmektedir.

Factorio çevrimiçi oyun sunucusu kurma rehberi

Bu makale, Factorio çevrimiçi oyun sunucusu kurulumu için kapsamlı bir kılavuzdur. Hem teknik hem de operasyonel adımlarla çok oyunculu oyun deneyiminiz için istikrarlı ve güvenli bir sunucu oluşturmanıza yardımcı olacaktır. Konum seçiminden, gerekli yazılımların kurulumuna, güvenlik ayarlarından yedeklemelere kadar her şeyi kapsar.
0 Hisse senetleri
0
0
0
0

Factorio sunucusunu Linux sunucusuna kurmamın nedenleri nelerdir?

Bu kılavuz, çevrimiçi oyun sunucusu kurulumuna ilişkin adım adım ve teknik bir rehber sunmaktadır. Factorio Linux sunucusu (VPS veya özel sunucu) üzerinde çalışma açıklanmaktadır. Bu makale şunlar içindir: Sunucu yöneticileri, oyuncular ve oyun geliştirme ekipleri Çok oyunculu oyunlar için istikrarlı, düşük gecikmeli ve güvenli bir sunucu oluşturmak üzere tasarlanmıştır.

Factorio için neden VPS veya özel sunucu?

Factorio, çok sayıda oyuncuya sahip sunucular veya ağır modlar kullanan oyunlar için uygun değildir. Güçlü tek çekirdekli işlemciYeterli bellek ve hızlı G/Ç gerektirir. VPS ve özel sunucu arasındaki seçim, oyuncu sayısına ve bütçeye bağlı olarak değişir:

  • Küçük grup (en fazla 8 oyuncu): Hızlı bir işlemciye, 2 sanal işlemciye ve 4-8 GB RAM'e sahip bir VPS yeterlidir.
  • Orta boy grup (8-32 oyuncu): 4 sanal işlemci, 8-16 GB RAM, NVMe önerilir.
  • Büyük sunucu (>32 oyuncu veya yoğun mod kullanımı): 6-12 yüksek saat hızına sahip çekirdek, 32 GB+ RAM ve NVMe depolama alanına sahip özel bir sunucu uygundur.

En düşük ping için, (85'ten fazla küresel konum arasından) doğru konum önemlidir: Avrupa (Frankfurt, Amsterdam), ABD Doğu (New Jersey), ABD Batı (Kaliforniya), Asya (Singapur, Tokyo), Avustralya (Sydney) ve Brezilya (São Paulo).

Factorio Headless Önkoşulları ve İndirme

Linux sunucusu için ön koşullar:

  • Linux dağıtımı: Ubuntu 20.04/22.04 veya Debian 11+ Tavsiye edilen.
  • Sunucuyu çalıştırmak için root yetkisi olmayan bir kullanıcı.
  • SSH erişimi ve paket yükleme yeteneği.

Ubuntu'da kullanılan temel komutlara örnekler:

sudo apt update && sudo apt upgrade -y
sudo apt install -y wget unzip tar libstdc++6
sudo adduser --disabled-login --gecos "Factorio Server" factorio
sudo usermod -aG sudo factorio

Ekran görüntüsü olmayan sürümü indirin:

  1. Başsız (headless) sürümü resmi Factorio sitesinden indirin (ilgili sürümü kontrol edin).
  2. Örnek (URL'yi resmi bağlantıyla değiştirin):
sudo -u factorio mkdir -p /opt/factorio
cd /opt/factorio
sudo -u factorio wget https://www.factorio.com/get-download/latest/headless/linux64 -O factorio_headless.tar.xz
sudo -u factorio tar -xf factorio_headless.tar.xz

İlk kurulum ve sunucu çalıştırılıyor

Sunucuyu yeni bir kayıt dosyasıyla çalıştırın veya mevcut bir kayıt dosyasını yükleyin:

Sunucuyu yeni bir kayıt dosyasıyla başlatıyorum:

sudo -u factorio /opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/my-save.zip --server-settings /opt/factorio/config/server-settings.json --port 34197

Mevcut bir kaydı yükle (en sonuncuyu yükle):

sudo -u factorio /opt/factorio/bin/x64/factorio --start-server-load-latest

Limanlar:

  • Oyun portu: UDP 34197 (varsayılan)
  • RCON: Etkinleştirilirse, özel bir TCP bağlantı noktası belirtebilirsiniz (örneğin 27015). Ayarlar dosyada yer almaktadır. sunucu-ayarları.json Yerleştirilmiştir.

Otomatik olarak başlatılacak bir systemd hizmeti oluşturun.

Sunucuyu otomatik olarak başlatmak ve yönetmek için bir hizmet dosyası oluşturun:

sudo tee /etc/systemd/system/factorio.service > /dev/null <<'EOF'
[Unit]
Description=Factorio Headless Server
After=network.target

[Service]
User=factorio
Group=factorio
Type=simple
WorkingDirectory=/opt/factorio
ExecStart=/opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/my-save.zip --server-settings /opt/factorio/config/server-settings.json --port 34197
Restart=on-failure
RestartSec=10
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Hizmeti etkinleştirme ve çalıştırma:

sudo systemctl daemon-reload
sudo systemctl enable --now factorio.service
sudo journalctl -u factorio -f

Yapılandırma dosyası sunucu-ayarları.json (Önemli noktalar)

Yolda /opt/factorio/config/server-settings.json Aşağıdaki ayarları kontrol edin veya düzenleyin:

  • isim: Sunucu adı
  • Tanım: Oyuncular için açıklama
  • maksimum_oyuncu sayısı: Maksimum oyuncu sayısı
  • oyun_şifresi: Giriş yapmak için isteğe bağlıdır (özel sunucular için önerilir)
  • Kullanıcı doğrulaması gerektir: Steam kimlik doğrulaması için geçerli (gerekirse)

Basit bir örnek:

{
  "name": "My Factorio Server",
  "description": "سرور رسمی جامعه",
  "max_players": 32,
  "game_password": "securepassword",
  "require_user_verification": true
}

Factorio'yu Docker'da çalıştırmak (alternatif yöntem)

Eğer Docker kullanmayı tercih ederseniz, aşağıdaki örnek hızlı ve izole bir çalıştırma yöntemi sunar:

docker run -d --name=factorio \
  -p 34197:34197/udp \
  -p 27015:27015/tcp \
  -v /host/factorio/saves:/factorio/saves \
  -v /host/factorio/config:/factorio/config \
  --restart unless-stopped \
  --user 1000:1000 \
  factoriotools/factorio:latest

Avantajları: İzolasyon, güncelleme ve yedekleme kolaylığı.

Güvenlik ve güvenlik duvarı

Oyun sunucuları için temel güvenlik önerileri:

1. SSH erişimini kısıtlayın:

sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl reload sshd

2. Yalnızca gerekli portları açmak için UFW örneği:

sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
# اجازه SSH (اگر پورت 22 یا پورت دلخواه)
sudo ufw allow 22/tcp
# اجازه پورت بازی (UDP)
sudo ufw allow 34197/udp
# اگر RCON فعال است:
sudo ufw allow 27015/tcp
sudo ufw enable

3. SSH'yi korumak için Fail2Ban'ı yükleyin:

sudo apt install fail2ban -y

Kayıtların otomatik yedeklenmesi ve saklanması

Cron veya systemd zamanlayıcısı ile çalıştırılabilecek basit bir yedekleme komut dosyası örneği:

#!/bin/bash
SAVE_DIR=/opt/factorio/saves
BACKUP_DIR=/var/backups/factorio
mkdir -p $BACKUP_DIR
TIMESTAMP=$(date +%F_%T)
cp $SAVE_DIR/*.zip $BACKUP_DIR/factorio_save_$TIMESTAMP.zip
# نگهداری آخرین 7 بکاپ
ls -1t $BACKUP_DIR | tail -n +8 | xargs -I{} rm -f $BACKUP_DIR/{}

Saat başı çalıştırmak için crontab'a ekleyin:

0 * * * * /usr/local/bin/factorio_backup.sh

Öneri: Olası bir sorun durumunda verilerinizi korumak için yedeklerinizi Nesne Depolama (S3 veya uyumlu) veya başka bir sunucuya senkronize edin.

Düşük ping ve daha iyi performans için optimize edilmiştir.

  • Bir konum seçin: Oyunculara en yakın coğrafi konumu veya oyuncu popülasyonunun merkezindeki bir konumu seçin.
  • Yüksek saat hızına sahip işlemci: Factorio emülasyonu büyük ölçüde tek çekirdeğe bağlıdır; yüksek tek çekirdek frekansına (3,5 GHz+) sahip bir sunucu seçmek tercih edilir.
  • Bellek ve disk: Dünyayı kaydederken ve yüklerken hızlı G/Ç için SSD/NVMe gereklidir.
  • Ağ ve Hizmet Kalitesi (QoS): Yeterli bant genişliği (özellikle yükleme) sağlayın ve gerekirse düşük gecikmeli ağ iletişimi ve BGP kullanın.

İzleme ve kayıtlar

Günlükleri görüntülemek ve sunucu durumunu kontrol etmek için:

sudo journalctl -u factorio -f
# یا اگر لاگ در فایل است:
tail -f /opt/factorio/factorio-current.log

Önerilen araçlar: Netdata, Prometheus + Grafana Veya daha basit araçlar gibi htop Ve nload Kaynak kullanımını görüntülemek için.

Modlar ve güncellemeler için ipuçları

  • Test Modları: Modları ana sunucuya kurmadan önce test ortamında deneyin; modlar çökmelere veya yavaşlamalara neden olabilir.
  • Sürüm uyumluluğu: İstemci ve sunucu sürümleri aynı olmalıdır.
  • Güncelleme yöntemi: Sunucuyu güncellerken, yedekleme dosyasını mutlaka alın, servisi durdurun, güncellemeyi gerçekleştirin ve ardından sunucuyu yeniden başlatın.

Sık karşılaşılan sorunlara ilişkin pratik örnekler ve çözüm yolları.

Sorun: Oyuncular bağlantı kuramıyor.

  • Güvenlik duvarını ve bağlantı noktalarını kontrol edin: ufw durumuAçık portları kontrol edin ss.
  • Sunucunun UDP 34197 portunda dinleme yaptığından emin olun:
  • sudo ss -unlp | grep 34197
  • Hata veya ilgili mesajlar için günlükleri kontrol edin.

Sorun: Oyuncu sayısı arttıkça sunucu gecikmesi yaşanıyor.

  • İşlemci frekansını, tek çekirdek yükünü, RAM kullanımını ve G/Ç'yi kontrol edin.
  • Gerekirse, daha güçlü bir çekirdek örneğine yükseltin veya oyuncuları birden fazla sunucuya dağıtın.

En iyi deneyim için şirket hizmetlerinden yararlanın.

Eğer aşağıdaki gibi hizmetlere erişiminiz varsa: 85'ten fazla küresel lokasyon, oyun için VPS, DDoS saldırılarına karşı koruma sunucusu Ve NVMe özellikli bulut sunucusu Oyun deneyimini önemli ölçüde geliştirebilirsiniz.

Uygulanabilir durumlar:

  • Ping süresini azaltmak için oyunculara yakın bir konum seçin.
  • Daha iyi performans için yüksek saat hızına sahip işlemciler ve NVMe kullanan örnekler.
  • UDP saldırılarına karşı korunmak için bir DDoS önleme sunucusu kullanın.
  • Gelişmiş yönlendirme veya Anycast'e ihtiyacınız varsa Ağ ve BGP.
  • Statik içerik (modlar, resimler) için CDN — UDP gerçek zamanlı oyunlar için CDN'nin geçerli olmadığını lütfen unutmayın.

Sonuç ve son öneriler

Factorio sunucusu kurmak, donanım seçimine (güçlü tek çekirdekli işlemci, NVMe), uygun konuma, güvenlik ayarlarına ve düzenli yedeklemelere dikkat edilmesini gerektirir.

Hızlı başlangıç için önerilerin özeti:

  1. Güçlü bir işlemciye ve NVMe belleğe sahip bir VPS seçin.
  2. Başsız sürümü yükleyin ve talimatlara göre systemd hizmetini yapılandırın.
  3. Güvenlik duvarlarını ve yedeklemeleri otomatikleştirin.
  4. Sunucu konumlarını oyuncu sayısına göre seçin ve gerekirse DDoS saldırılarına karşı koruma hizmetleri kullanın.

Planlar ve tavsiyeler hakkında bilgi almak için destek bölümünü ziyaret edebilirsiniz.

Sıkça Sorulan Sorular

Ayrıca Şunları da Beğenebilirsiniz

God of War 3 hikayesi

Giriş Tanrıların alacakaranlığından önce, onun arasında yerini talep edecek bir efsane ortaya çıktı…