Takip et

🚀 Building Your First MCP Server: A Step-by-Step Guide

Kendi Minecraft sunucunuzu kurmak, oyun deneyiminizi kişiselleştirmenin, arkadaşlarınızla özel bir dünya paylaşmanın ve hatta yeni bir topluluk oluşturmanın en heyecan verici yollarından biridir. Bu adım adım rehberle, sıfırdan başlayarak ilk sunucunuzu nasıl kuracağınızı, optimize edeceğinizi ve güvenli hale getireceğinizi öğreneceksiniz. Kendi sunucunuzun kontrolünü elinize alarak sınırsız maceralara atılmaya hazır mısınız?

Minecraft, dünya çapında milyonlarca oyuncuyu bir araya getiren devasa bir fenomen. Ancak standart tek oyunculu deneyim veya başkalarının sunucularında oynamak, bir süre sonra yetersiz gelebilir. İşte bu noktada kendi Minecraft Sunucusu (MCP – Minecraft Multiplayer Server) kurma fikri devreye giriyor. Peki, neden bu yola başvurmalısınız? Bunun başlıca nedenleri, kişiselleştirme özgürlüğü, gizlilik, topluluk oluşturma ve öğrenme deneyimidir.

Öncelikle, kendi sunucunuzda kuralları siz belirlersiniz. Hangi oyun modlarının aktif olacağına, hangi haritaların kullanılacağına, hangi eklentilerin (plugins) ve modların çalışacağına siz karar verirsiniz. Bu, standart bir sunucuda bulamayacağınız kadar geniş bir esneklik sunar. Örneğin, bir “Skyblock” macerası mı yaratmak istiyorsunuz? Yoksa “RPG” öğeleriyle dolu devasa bir dünya mı kurmayı planlıyorsunuz? Kendi sunucunuz, bu hayalleri gerçeğe dönüştürmek için size tam kontrol sağlar. Üçüncü taraf sunucularında karşılaşılan kısıtlamalar, reklamlar veya istenmeyen oyuncular gibi sorunlardan da tamamen arınmış olursunuz.

İkincil olarak, gizlilik ve güvenlik önemli bir avantajdır. Kendi sunucunuzu barındırdığınızda, kimlerin sunucunuza erişebileceğini siz belirlersiniz. Sadece davet ettiğiniz arkadaşlarınız veya ailenizle oynamak isterseniz, bu oldukça kolaydır. Bir “whitelist” (beyaz liste) oluşturarak, sunucunuza yalnızca belirli oyuncuların katılmasına izin verebilirsiniz. Bu sayede, kötü niyetli oyuncuların veya “griefer”ların sunucunuzu mahvetme riskini en aza indirirsiniz. Ayrıca, sunucu verilerinizin nerede saklandığını ve nasıl korunduğunu bildiğiniz için, olası veri ihlalleri konusunda daha güvende hissedersiniz. Bu durum, özellikle genç oyuncuların ebeveynleri için de büyük bir rahatlık sağlar.

Üçüncüsü, kendi topluluğunuzu oluşturma potansiyeli. Eğer büyük bir oyuncu grubuyla birlikte oynamak istiyorsanız, kendi sunucunuz size bu imkanı sunar. Belirli bir temaya veya oyun tarzına sahip bir topluluk etrafında insanları bir araya getirebilirsiniz. Bu, sadece oyun oynamanın ötesinde, yeni arkadaşlıklar kurmanızı ve ortak ilgi alanlarına sahip insanlarla bağlantı kurmanızı sağlar. Bir sunucu yöneticisi olarak, topluluğunuzun büyümesine ve gelişmesine aktif olarak katkıda bulunabilirsiniz, bu da oldukça tatmin edici bir deneyimdir.

Son olarak, kendi sunucunuzu kurmak ve yönetmek, teknik becerilerinizi geliştirmeniz için harika bir öğrenme deneyimidir. İşletim sistemleri, ağ yapılandırması, komut satırı arayüzleri, Java sanal makinesi ayarları ve genel sunucu yönetimi hakkında bilgi edinirsiniz. Bu beceriler, sadece Minecraft dünyasında değil, aynı zamanda genel bilişim kariyerinizde veya hobilerinizde de size fayda sağlayacaktır. Başlangıçta karmaşık gibi görünse de, adım adım ilerlediğinizde, bu sürecin ne kadar öğretici ve keyifli olduğunu fark edeceksiniz. Bu rehberde, bu yolculukta size eşlik edeceğiz. Dolayısıyla, kendi Minecraft evreninizin mimarı olmak için harika bir başlangıç noktasındasınız.

Uzman İpucu: Kendi sunucunuzu kurmak, aynı zamanda ebeveyn kontrolü için de harika bir araçtır. Çocuğunuzun hangi modları oynayacağını, kimlerle etkileşim kuracağını ve ne kadar süreyle oynayacağını kolayca yönetebilirsiniz.

Temel Kavramlar: Bir MCP Sunucusu İçin Neler Gerekli?

Kendi Minecraft sunucunuzu kurmaya başlamadan önce, temel gereksinimleri ve seçenekleri anlamak oldukça önemlidir. Tıpkı bir ev inşa ederken temeli atmak gibi, sunucunuzun sağlam ve verimli çalışması için doğru donanım ve yazılım bileşenlerini bilmelisiniz. Bu bölümde, bir Minecraft sunucusunun ihtiyaç duyduğu temel bileşenleri ve farklı sunucu türlerini detaylıca inceleyeceğiz.

Donanım Gereksinimleri Nelerdir?

Bir Minecraft sunucusunun performansı doğrudan donanım özelliklerine bağlıdır. Özellikle RAM (bellek), CPU (işlemci) ve depolama alanı kritik öneme sahiptir.

  • RAM (Bellek): Minecraft sunucuları RAM’i oldukça yoğun kullanır. Kaç oyuncu barındıracağınıza, hangi eklentileri veya modları kullanacağınıza göre RAM ihtiyacı artar.
    • 2-4 GB RAM: Sadece birkaç arkadaşınızla (2-5 oyuncu) vanilla veya hafif eklentilerle oynamak için yeterli.
    • 4-8 GB RAM: Daha kalabalık gruplar (5-15 oyuncu) veya orta düzeyde mod/eklenti paketi için ideal.
    • 8-16+ GB RAM: Büyük topluluklar, yoğun mod paketleri veya çok oyunculu mini oyun sunucuları için gerekli.

    Unutmayın, sunucunun çalışacağı işletim sistemi de kendi başına RAM tüketir. Dolayısıyla, ayrılan RAM miktarının sadece Minecraft için değil, tüm sistem için yeterli olduğundan emin olun.

  • CPU (İşlemci): Minecraft sunucusu, işlemci çekirdeklerini yoğun şekilde kullanır, ancak genellikle tek çekirdek performansına daha çok önem verir. Yüksek saat hızına sahip (örneğin 3.0 GHz ve üzeri) modern bir işlemci, çok çekirdekli, düşük saat hızına sahip bir işlemciden daha iyi performans gösterebilir. Intel Core i5/i7 veya AMD Ryzen 5/7 serisi işlemciler genellikle iyi bir başlangıç noktasıdır.
  • Depolama: Harita dosyaları ve loglar zamanla büyüyebilir. SSD (Katı Hal Sürücü) kullanmak, HDD’lere (Sabit Disk Sürücüleri) göre daha hızlı yükleme süreleri ve genel performans sağlar. En az 50-100 GB boş alan genellikle yeterli olsa da, büyük haritalar veya çoklu sunucular için daha fazlasına ihtiyaç duyabilirsiniz.
  • Ağ Bağlantısı: Kararlı ve yüksek hızlı bir internet bağlantısı şarttır. Özellikle yükleme (upload) hızı, sunucunuzdan oyunculara veri gönderileceği için kritik öneme sahiptir. Minimum 10-20 Mbps yükleme hızı, küçük sunucular için kabul edilebilirken, daha büyük sunucular için çok daha yüksek hızlar (50-100+ Mbps) önerilir.

Yazılım Gereksinimleri ve Sunucu Türleri Nelerdir?

Donanımın yanı sıra, doğru yazılımı seçmek de sunucunuzun başarısı için hayati önem taşır.

  • İşletim Sistemi: Minecraft sunucusu hem Windows hem de Linux işletim sistemlerinde çalışabilir.
    • Windows: Kurulumu ve yönetimi genellikle daha kolaydır, ancak kaynak tüketimi Linux’a göre biraz daha fazla olabilir. Yeni başlayanlar için iyi bir seçenektir.
    • Linux (Ubuntu Server, Debian): Daha hafif, kararlı ve genellikle daha performanslıdır. Ancak komut satırı bilgisi gerektirebilir. Uzun vadede veya büyük sunucular için tercih edilir.
  • Java Geliştirme Kiti (JDK): Minecraft sunucusu Java ile yazılmıştır, bu yüzden sunucunuzu çalıştırmak için uygun bir Java Runtime Environment (JRE) veya JDK’ye ihtiyacınız vardır. Minecraft’ın hangi sürümünü çalıştırdığınıza bağlı olarak Java sürümü değişir.
    • Minecraft 1.17 ve sonrası için Java 16 veya Java 17 (önerilen)
    • Minecraft 1.16.5 ve öncesi için Java 8

    Doğru Java sürümünü indirip kurduğunuzdan emin olun.

  • Sunucu Yazılımı Türleri: Minecraft için çeşitli sunucu yazılımları mevcuttur, her birinin kendine göre avantajları vardır.
    • Vanilla: Mojang’ın resmi sunucu yazılımıdır. Saf Minecraft deneyimi sunar, mod veya eklenti desteği yoktur. En temel başlangıç noktasıdır.
    • Spigot/PaperMC: Vanilla’ya göre performans iyileştirmeleri ve Bukkit/Spigot eklentileri (plugins) için destek sunar. PaperMC, Spigot’tan daha fazla performans optimizasyonu ve yapılandırma seçeneği sunar, bu yüzden genellikle önerilir. Orta ve büyük ölçekli sunucular için idealdir.
    • Forge/Fabric: Mod paketlerini çalıştırmak isteyenler için tasarlanmıştır. Bu yazılımlar sayesinde oyunun içine yeni öğeler, mekanikler veya dünyalar ekleyebilirsiniz. Eklentiler yerine modlar kullanmak istiyorsanız bu seçenekleri değerlendirmelisiniz. Forge daha köklü bir geçmişe sahipken, Fabric daha hafif ve modern bir alternatif sunar.

Bu temel kavramları anlamak, sunucunuzu kurarken karşılaşacağınız zorlukları aşmanıza ve doğru kararları vermenize yardımcı olacaktır. Hangi donanım ve yazılımın sizin için en uygun olduğuna karar verdikten sonra, bir sonraki adıma, yani kurulum sürecine geçmeye hazır olacaksınız.

Adım Adım Kurulum: Sunucu Dosyalarını Hazırlama ve Başlatma

Artık temel kavramlara aşina olduğunuza göre, kendi Minecraft sunucunuzu kurmanın pratik adımlarına geçebiliriz. Bu bölüm, sunucu dosyalarını nasıl indireceğinizi, yapılandıracağınızı ve ilk kez nasıl başlatacağınızı detaylı bir şekilde anlatacak. Adım adım ilerleyerek, kısa sürede kendi Minecraft dünyanızı oluşturabileceksiniz.

1. Doğru Java Sürümünü Kurun

Minecraft sunucusu Java tabanlı olduğu için, bilgisayarınızda veya sunucunuzda doğru Java sürümünün kurulu olması şarttır. Minecraft’ın sürümüne göre Java sürümü farklılık gösterebilir.

  • Minecraft 1.17 ve sonrası için: Java 16 veya Java 17 (OpenJDK veya Oracle JDK). Oracle JDK, ticari kullanım için lisans gerektirebilirken, OpenJDK ücretsiz ve açık kaynaklı bir alternatiftir. Temel kullanım için OpenJDK önerilir.
  • Minecraft 1.16.5 ve öncesi için: Java 8.

Java’yı indirmek için resmi OpenJDK web sitesini veya Adoptium (eski adıyla AdoptOpenJDK) gibi güvenilir kaynakları kullanabilirsiniz. Kurulum sihirbazını takip ederek Java’yı sisteminize kurun. Kurulumdan sonra, komut istemcisini (Windows’ta CMD, Linux’ta Terminal) açıp aşağıdaki komutu yazarak Java sürümünüzü doğrulayabilirsiniz:


java -version
    

Bu komut, kurulu Java sürümünü ve diğer detayları gösterecektir.

2. Sunucu Yazılımınızı Seçin ve İndirin

Daha önce bahsettiğimiz gibi, farklı sunucu yazılımları farklı ihtiyaçlara hizmet eder. Bu rehberde, performans optimizasyonları ve eklenti desteği nedeniyle PaperMC'yi kullanmanızı şiddetle tavsiye ediyoruz.

  1. PaperMC web sitesine gidin: papermc.io/downloads
  2. İstediğiniz Minecraft sürümünü seçin (örneğin, 1.20.4).
  3. En son sürümün JAR dosyasını indirin. Dosya adı genellikle paper-X.X.X-Y.jar şeklinde olacaktır.

Eğer Vanilla sunucu kurmak isterseniz, Minecraft'ın resmi web sitesinden Vanilla sunucu JAR dosyasını indirebilirsiniz. Modlu sunucu için Forge veya Fabric indirmelisiniz.

3. Sunucu Klasörünü Oluşturun

İndirdiğiniz JAR dosyasını düzenli bir yerde saklamak için yeni bir klasör oluşturun. Örneğin, masaüstünüzde veya belgelerinizde "MinecraftServer" adında bir klasör oluşturabilirsiniz. İndirdiğiniz PaperMC JAR dosyasını bu klasörün içine taşıyın. Kolaylık sağlamak için dosyanın adını server.jar olarak değiştirebilirsiniz. Bu, başlatma komutlarınızı daha basit hale getirecektir.

4. Sunucuyu İlk Kez Başlatın ve EULA'yı Kabul Edin

Minecraft sunucusunu ilk kez başlattığınızda, Mojang'ın Son Kullanıcı Lisans Sözleşmesi'ni (EULA - End User License Agreement) kabul etmeniz gerekecektir.

  1. Sunucu klasörünüzün içinde, bir metin belgesi oluşturun (Windows'ta sağ tık -> Yeni -> Metin Belgesi, Linux'ta touch start.sh).
  2. Bu metin belgesinin içine aşağıdaki komutu yazın. Bu komut, sunucunuzu başlatmak için Java'yı kullanır ve sunucuya ayrılacak RAM miktarını belirtir.
    
    @echo off
    java -Xms1024M -Xmx2048M -jar server.jar nogui
    pause
                

    Açıklama:

    • -Xms1024M: Sunucu başlangıcında ayrılacak minimum RAM (1024 MB = 1 GB).
    • -Xmx2048M: Sunucuya ayrılabilecek maksimum RAM (2048 MB = 2 GB). Bu değeri donanımınıza göre ayarlayın. Örneğin, 4 GB RAM'iniz varsa -Xmx3072M (3 GB) yapabilirsiniz.
    • server.jar: İndirdiğiniz ve adını değiştirdiğiniz sunucu JAR dosyasının adı.
    • nogui: Konsol penceresini kullanmak yerine grafik arayüzünü devre dışı bırakır, bu da daha az kaynak tüketir.
    • pause: Sunucu kapanırsa pencerenin hemen kapanmamasını sağlar, böylece olası hata mesajlarını okuyabilirsiniz.
  3. Dosyayı kaydedin ve adını start.bat olarak değiştirin (Windows için). Linux kullanıyorsanız, start.sh olarak kaydedin ve aşağıdaki komutu kullanın:
    
    #!/bin/bash
    java -Xms1G -Xmx2G -jar server.jar nogui
                

    Linux'ta start.sh dosyasını çalıştırılabilir hale getirmek için:

    
    chmod +x start.sh
                

    Sonra ./start.sh komutuyla çalıştırabilirsiniz.

  4. start.bat (veya start.sh) dosyasını çift tıklayarak çalıştırın. Sunucu ilk kez başlayacak ve ardından EULA'yı kabul etmediğiniz için bir hata vererek kapanacaktır.
  5. Sunucu klasörünüzde yeni bir eula.txt dosyası oluştuğunu göreceksiniz. Bu dosyayı bir metin düzenleyiciyle açın ve eula=false satırını eula=true olarak değiştirin. Kaydedip kapatın.

5. Sunucuyu Başlatın ve Bağlanın

eula.txt dosyasını düzenledikten sonra, start.bat (veya start.sh) dosyasını tekrar çalıştırın. Bu sefer sunucu tam olarak başlayacak ve dünya dosyalarını oluşturacaktır. Konsolda "Done!" mesajını gördüğünüzde, sunucunuz hazır demektir.

Minecraft oyununuzu açın, "Çok Oyunculu" (Multiplayer) menüsüne gidin ve "Sunucu Ekle" (Add Server) seçeneğini tıklayın. Sunucu Adı kısmına istediğiniz bir ismi yazın ve Sunucu Adresi (Server Address) kısmına localhost veya 127.0.0.1 yazın. Sunucuyu kaydedin ve bağlanın.

Tebrikler! Kendi Minecraft sunucunuzu başarıyla başlattınız ve yerel ağınızda ona bağlandınız. Ancak arkadaşlarınızın da bağlanabilmesi için ek ağ yapılandırması yapmanız gerekecek.

Görsel Betimleme: Sunucu klasörünüzde server.jar, start.bat ve eula.txt dosyalarının bir arada bulunduğunu hayal edin. start.bat dosyasının ikonik komut istemi sembolüyle belirginleştiğini düşünebilirsiniz.

Ağ Yapılandırması: Sunucunuzu Dış Dünyaya Açma (Port Yönlendirme)

Kendi Minecraft sunucunuzu başarıyla başlattınız ve kendiniz bağlanabildiniz, harika! Ancak arkadaşlarınızın da size katılabilmesi için sunucunuzu internete açmanız gerekiyor. Bu genellikle "Port Yönlendirme" (Port Forwarding) adı verilen bir işlemle yapılır. Kulağa teknik gelse de, adım adım ilerlediğimizde sandığınızdan daha kolay olduğunu göreceksiniz.

Yerel IP Adresinizi Bulma

Öncelikle, sunucunuzu çalıştıran bilgisayarın yerel (dahili) IP adresini bilmelisiniz. Bu IP adresi, modeminize bağlı olan cihazlar arasında bilgisayarınızı tanımlar.

  • Windows İçin:
    1. Başlat menüsüne "cmd" yazın ve Komut İstemi'ni açın.
    2. ipconfig yazıp Enter'a basın.
    3. "IPv4 Adresi" (IPv4 Address) başlığının altında yazan adres sizin yerel IP adresinizdir (örneğin, 192.168.1.100).
  • Linux İçin:
    1. Terminali açın.
    2. ip addr veya ifconfig yazıp Enter'a basın.
    3. Ethernet veya Wi-Fi bağdaştırıcınızın altında "inet" ile başlayan adres sizin yerel IP adresinizdir.

Bu IP adresini bir yere not alın, çünkü port yönlendirme ayarlarında kullanacaksınız. Sunucunuzun yerel IP'sinin statik (sabit) kalması önemlidir. Eğer yerel IP'niz sürekli değişirse, her değiştiğinde port yönlendirme ayarlarını güncellemeniz gerekir. Bunu önlemek için, router ayarlarınızdan sunucu bilgisayarınıza statik bir yerel IP atayabilir veya DHCP rezervasyonu yapabilirsiniz.

Modem/Router Arayüzünüze Giriş Yapma

Port yönlendirme ayarlarını yapmak için modeminizin veya router'ınızın web arayüzüne giriş yapmanız gerekir.

  1. Web tarayıcınızı açın.
  2. Adres çubuğuna router'ınızın varsayılan ağ geçidi (Default Gateway) IP adresini yazın ve Enter'a basın. Bu IP adresini yine ipconfig (Windows) veya ip addr (Linux) komutlarının çıktısında bulabilirsiniz (genellikle 192.168.1.1 veya 192.168.0.1).
  3. Router'ınızın kullanıcı adı ve şifresini girmeniz istenecektir. Eğer daha önce değiştirmediyseniz, varsayılan kullanıcı adı/şifre kombinasyonunu (örneğin, admin/admin, admin/password) deneyin. Router'ınızın altında veya kullanım kılavuzunda bulabilirsiniz.

Port Yönlendirme Ayarlarını Yapma

Router arayüzüne girdikten sonra, "Port Yönlendirme" (Port Forwarding), "NAT" veya "Sanal Sunucu" (Virtual Server) gibi bir menü arayın. Bu menünün adı router modelinize göre değişebilir.

Burada genellikle aşağıdaki bilgileri girmeniz istenecektir:

Ayarlar Değer Açıklama
Hizmet Adı (Service Name) Minecraft Port yönlendirme kuralınız için bir isim.
Protokol (Protocol) TCP Minecraft genellikle TCP kullanır. Bazı router'larda TCP/UDP seçeneği de olabilir, onu seçmek en güvenlisidir.
Dış Port (External Port / Public Port) 25565 Minecraft'ın varsayılan portu.
İç Port (Internal Port / Private Port) 25565 Minecraft'ın varsayılan portu.
İç IP Adresi (Internal IP Address) Sunucunuzun yerel IP'si Örneğin, 192.168.1.100.
Durum (Status) Etkin (Enabled) Bu kuralın aktif olduğunu belirtir.

Ayarları kaydettikten sonra router'ınızı yeniden başlatmanız gerekebilir.

Güvenlik Duvarı (Firewall) Ayarları

Bilgisayarınızdaki güvenlik duvarı (Windows Defender Firewall veya Linux'taki iptables/ufw) Minecraft sunucusunun dışarıdan gelen bağlantıları engellemesine neden olabilir.

  • Windows İçin:
    1. Kontrol Paneli'ne gidin -> Windows Defender Güvenlik Duvarı -> Gelişmiş Ayarlar.
    2. "Gelen Kurallar" (Inbound Rules) kısmına sağ tıklayıp "Yeni Kural" (New Rule) seçin.
    3. "Port" seçeneğini seçin, "TCP" ve "Belirli yerel bağlantı noktaları" (Specific local ports) kısmına 25565 yazın.
    4. "Bağlantıya İzin Ver" (Allow the connection) seçeneğini seçin ve kuralı "Etki Alanı", "Özel" ve "Genel" (Domain, Private, Public) profillerine uygulayın.
    5. Kurala bir isim verip kaydedin (örneğin, "Minecraft Server").
  • Linux İçin (ufw örneği):
    
    sudo ufw allow 25565/tcp
    sudo ufw enable
                

Harici IP Adresinizi Bulma ve Test Etme

Port yönlendirme ve güvenlik duvarı ayarlarını tamamladıktan sonra, arkadaşlarınızın bağlanabilmesi için onlara harici (public) IP adresinizi vermeniz gerekecek.

  1. Google'da "what is my ip" diye aratarak veya whatismyip.com gibi bir siteye girerek harici IP adresinizi öğrenebilirsiniz.
  2. Bu IP adresini arkadaşlarınıza verin ve Minecraft'ta sunucuya bağlanmalarını isteyin.
  3. Port yönlendirmenin doğru çalışıp çalışmadığını test etmek için yougetsignal.com/tools/open-ports/ gibi bir web sitesi kullanabilirsiniz. Port numarasını (25565) girerek portunuzun açık olup olmadığını kontrol edin.

Vaka Analizi: Arkadaşlarla Bağlantı Sorunu

Mehmet, kendi Minecraft sunucusunu kurdu. Kendisi localhost üzerinden sorunsuzca bağlanabiliyordu, ancak arkadaşları "Bağlantı Kurulamadı" hatası alıyordu. Mehmet, port yönlendirme yapmadığını fark etti. Router arayüzüne girerek 25565 portunu sunucu bilgisayarının yerel IP adresine yönlendirdi ve bilgisayarının güvenlik duvarından da bu porta izin verdi. Arkadaşlarına harici IP adresini verdiğinde, sorunsuz bir şekilde sunucuya bağlanabildiler. Bu, port yönlendirmesinin dışarıdan erişim için ne kadar kritik olduğunu gösteren tipik bir senaryoydu.

Dinamik DNS (DDNS) Kullanımı (Opsiyonel)

Ev internet bağlantılarının çoğu dinamik IP adresi kullanır, yani internet sağlayıcınızın size atadığı harici IP adresi zaman zaman değişebilir. Bu durumda, her IP değiştiğinde arkadaşlarınıza yeni IP adresinizi vermek zorunda kalırsınız. Bunu önlemek için Dynamik DNS (DDNS) hizmetlerini kullanabilirsiniz.

DDNS hizmetleri (No-IP, DuckDNS gibi), dinamik IP adresinizi bir alan adıyla (örneğin, mehmetinsunucusu.ddns.net) eşleştirir. IP adresiniz değiştiğinde, DDNS istemcisi bu değişikliği otomatik olarak hizmet sağlayıcısına bildirir ve alan adınız her zaman güncel IP adresinizi gösterir. Router'ınız genellikle DDNS ayarlarını destekler veya sunucu bilgisayarınıza bir DDNS istemcisi kurabilirsiniz.

Bu adımları tamamladığınızda, Minecraft sunucunuz dış dünyadan erişilebilir olacak ve arkadaşlarınızla sınırsız maceralara atılabileceksiniz!

Sunucu Ayarları ve Optimizasyon: Performans ve Güvenliği Artırma

Sunucunuzu başarıyla kurdunuz ve arkadaşlarınıza açtınız, tebrikler! Ancak bu sadece başlangıç. Bir Minecraft sunucusunun gerçek potansiyelini ortaya çıkarmak, performansını artırmak ve güvenliğini sağlamak için çeşitli ayarları yapılandırmanız ve optimize etmeniz gerekir. Bu bölümde, server.properties dosyasını, RAM tahsisini, temel eklenti yönetimini ve güvenlik önlemlerini detaylıca inceleyeceğiz.

Server.properties Dosyasını Yapılandırma

Sunucu klasörünüzde bulunan server.properties dosyası, Minecraft sunucunuzun davranışını kontrol eden ana yapılandırma dosyasıdır. Bu dosyayı bir metin düzenleyiciyle açarak birçok ayarı değiştirebilirsiniz. İşte bazı önemli ayarlar:

  • max-players: Sunucunuza aynı anda kaç oyuncunun bağlanabileceğini belirler. Sunucunuzun donanımına ve ağ bağlantınıza göre bu değeri ayarlayın. Çok yüksek bir değer, sunucunuzun performansını düşürebilir.
  • gamemode: Varsayılan oyun modunu ayarlar (survival, creative, adventure, spectator). Yeni oyuncular sunucuya ilk katıldıklarında bu modda başlarlar.
  • difficulty: Oyunun zorluk seviyesi (peaceful, easy, normal, hard).
  • view-distance: Oyuncuların kaç "chunk" (harita bloğu) uzaklığı görebileceğini ayarlar. Daha yüksek değerler daha fazla RAM ve CPU kullanır, bu da sunucu performansını düşürebilir. 8-10 arası bir değer çoğu sunucu için dengeli bir başlangıç noktasıdır.
  • online-mode: Sunucunun Mojang'ın kimlik doğrulama sunucularını kullanıp kullanmayacağını belirler. true yapıldığında, sadece orijinal Minecraft hesabı olanlar bağlanabilir. false yapıldığında, korsan (crackli) istemciler de bağlanabilir (güvenlik riski taşır, önerilmez).
  • motd: Sunucu listesinde görünen "Günün Mesajı" (Message of the Day). Sunucunuzu tanıtan kısa bir metin yazabilirsiniz. Renk kodları için özel karakterler kullanabilirsiniz (örneğin, \u00A7c kırmızı metin için).
  • enable-whitelist: true yapıldığında, sadece whitelist.json dosyasında adı geçen oyuncuların sunucuya bağlanmasına izin verir. Güvenlik için şiddetle tavsiye edilir. Whitelist'e oyuncu eklemek için sunucu konsolunda whitelist add komutunu kullanın.
  • server-port: Sunucunun dinleyeceği port numarası (varsayılan 25565). Genellikle değiştirmeye gerek yoktur, ancak aynı bilgisayarda birden fazla sunucu çalıştırıyorsanız farklı portlar atamanız gerekebilir.

Herhangi bir değişiklik yaptıktan sonra server.properties dosyasını kaydetmeli ve sunucuyu yeniden başlatmalısınız ki değişiklikler etkili olsun.

RAM Tahsisi ve Java Sanal Makinesi (JVM) Argümanları

Sunucunuzun performansını doğrudan etkileyen en önemli faktörlerden biri, Java'ya ne kadar RAM ayırdığınızdır. start.bat veya start.sh dosyanızdaki -Xms ve -Xmx değerlerini doğru ayarlamak kritik öneme sahiptir.


java -Xms1024M -Xmx4096M -jar server.jar nogui
    

Burada -Xmx4096M, sunucuya 4 GB RAM ayırdığımızı gösterir. Bu değeri, bilgisayarınızdaki toplam fiziksel RAM'in yaklaşık %70-80'i olacak şekilde ayarlayabilirsiniz (işletim sistemine de RAM kalmalı). Örneğin, 8 GB RAM'iniz varsa 6 GB (-Xmx6144M) ayırmak uygun olabilir.

Uzman İpucu: Daha ileri düzey JVM optimizasyonu için, PaperMC gibi optimize edilmiş sunucu yazılımlarıyla birlikte önerilen G1GC (Garbage First Garbage Collector) argümanlarını kullanabilirsiniz. Örneğin:

java -Xms4G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+AggressiveOpts -XX:+AlwaysPreTouch -XX:G1HeapRegionSize=32M -XX:+DisableExplicitGC -XX:+PerfDisableSharedMem -XX:SurvivorRatio=32 -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -jar server.jar nogui
        


Bu komut, performansı %40'a kadar artırabilecek ve gecikmeleri (lag) azaltabilecek Aikar'ın optimize edilmiş Java argümanlarını içerir. Kendi RAM miktarlarınıza (-Xms ve -Xmx) göre düzenlemeyi unutmayın.

Eklenti (Plugin) Yönetimi (PaperMC/Spigot İçin)

PaperMC gibi sunucular, oyun deneyimini zenginleştirmek için binlerce eklentiyi destekler. Eklentiler, yeni komutlar, oyun modları, koruma sistemleri ve daha fazlasını ekleyebilir.

  1. Eklenti İndirme: Güvenilir kaynaklardan (örneğin, dev.bukkit.org/bukkit-plugins veya spigotmc.org/resources/) eklentileri (.jar uzantılı dosyalar) indirin. Popüler eklentiler arasında EssentialsX (temel komutlar), WorldEdit/WorldGuard (inşa ve koruma), LuckPerms (izin sistemi) bulunur.
  2. Eklentileri Kurma: İndirdiğiniz eklenti JAR dosyalarını sunucu klasörünüzdeki plugins klasörüne kopyalayın.
  3. Sunucuyu Yeniden Başlatma: Eklentilerin çalışması için sunucuyu yeniden başlatmanız veya konsoldan reload komutunu kullanmanız gerekir (ancak reload komutu bazen sorunlara yol açabilir, sunucuyu tamamen yeniden başlatmak daha sağlıklıdır).

Her eklentinin kendine ait yapılandırma dosyaları (genellikle config.yml veya benzeri) plugins klasörünün altında oluşur. Bu dosyaları düzenleyerek eklentilerin davranışlarını özelleştirebilirsiniz.

Yedekleme Stratejileri ve Güvenlik Önlemleri

Sunucunuzda saatlerce emek verip oluşturduğunuz dünyayı kaybetmek istemezsiniz. Bu nedenle düzenli yedeklemeler yapmak kritik öneme sahiptir.

  • Manuel Yedekleme: Sunucuyu durdurun, ardından sunucu klasörünüzün tamamını veya en azından world (harita), plugins ve server.properties dosyalarını farklı bir konuma kopyalayın.
  • Otomatik Yedekleme: Bir yedekleme eklentisi (örneğin, WorldBackup) kullanabilir veya işletim sisteminizin zamanlama araçlarını (Windows Görev Zamanlayıcı, Linux Cron Job) kullanarak otomatik yedekleme betikleri oluşturabilirsiniz.
  • Güvenlik Duvarı: Daha önce port yönlendirme sırasında bahsettiğimiz gibi, sadece 25565 portunun açık olduğundan emin olun. Gereksiz portları kapatmak güvenlik risklerini azaltır.
  • Beyaz Liste (Whitelist): online-mode=true ve enable-whitelist=true kullanarak sadece güvendiğiniz kişilerin sunucuya erişmesini sağlayın.
  • Güçlü Şifreler: Router ve sunucuya erişim şifrelerinizin güçlü ve benzersiz olduğundan emin olun.

Bu ayarları doğru bir şekilde yaparak, Minecraft sunucunuzun performansını optimize edebilir, daha zengin bir oyun deneyimi sunabilir ve olası sorunlara karşı kendinizi güvenceye alabilirsiniz. Her zaman değişiklikleri test etmeyi ve yedeklemelerinizin çalıştığından emin olmayı unutmayın.

İleri Düzey Yönetim ve Güvenlik: Sunucunuzu Profesyonelleştirme

Temel kurulum ve optimizasyon adımlarını tamamladınız. Artık kendi Minecraft sunucunuzu çalıştırabiliyor ve arkadaşlarınızla keyfini çıkarabiliyorsunuz. Ancak bir sunucuyu daha profesyonel hale getirmek, uzun vadede istikrarını ve güvenliğini sağlamak için ileri düzey yönetim ve güvenlik pratiklerini benimsemek önemlidir. Bu bölüm, sunucu yönetimini otomatikleştirmekten, performans izlemeye ve mobil uyumlu yönetim arayüzlerine kadar çeşitli konuları kapsayacak.

Otomatik Bakım ve Görev Zamanlama

Elle yedekleme veya sunucu yeniden başlatma işlemleri zaman alıcı ve unutulabilir olabilir. İşletim sisteminizin yerleşik araçlarını kullanarak bu görevleri otomatikleştirebilirsiniz.

  • Windows Görev Zamanlayıcı (Task Scheduler):

    Windows'ta belirli zamanlarda sunucunuzu durdurup yedekleme komutunu çalıştıran ve ardından sunucuyu tekrar başlatan bir görev oluşturabilirsiniz. Örneğin, her gece saat 03:00'te sunucuyu durdurup, yedekleme scriptini çalıştırıp, ardından tekrar başlatacak bir görev tanımlayabilirsiniz.

    
    REM Sunucuyu durdurma komutu (server konsolunda 'stop' komutunu tetikler)
    @echo off
    taskkill /IM java.exe /F > nul
    timeout /t 10 /nobreak > nul
    REM Yedekleme scriptini çalıştırma (örneğin bir robocopy scripti)
    xcopy "C:\MinecraftServer\world" "D:\MinecraftBackups\world_backup_%date:~6,4%-%date:~3,2%-%date:~0,2%" /E /I /Y
    timeout /t 5 /nobreak > nul
    REM Sunucuyu tekrar başlatma
    start /min cmd /c "C:\MinecraftServer\start.bat"
                

    Bu basit betik, sunucuyu kapatır, dünyayı yedekler ve tekrar başlatır. Görev Zamanlayıcı'da bu betiği çağırarak otomatik çalışmasını sağlayabilirsiniz.

  • Linux Cron Job:

    Linux sistemlerde cron, görev zamanlama için kullanılan güçlü bir araçtır. crontab -e komutuyla cron tablosunu düzenleyebilir ve belirli aralıklarla çalışacak komutlar ekleyebilirsiniz.

    
    # Her gece saat 03:00'te sunucuyu durdur, yedekle ve başlat
    0 3 * * * /path/to/stop_backup_start.sh
                

    stop_backup_start.sh betiği, Minecraft sunucusuna stop komutunu gönderecek, rsync gibi bir araçla yedek alacak ve ardından sunucuyu tekrar başlatacak komutları içermelidir.

Sunucu Performans İzleme ve Optimizasyon Araçları

Sunucunuzun performansını sürekli izlemek, olası gecikmeleri veya çökmeleri önlemek için önemlidir.

  • Görev Yöneticisi/Htop: Windows'ta Görev Yöneticisi, Linux'ta htop veya top komutu ile CPU, RAM ve disk kullanımını anlık olarak izleyebilirsiniz. Java sürecinin ne kadar kaynak tükettiğine dikkat edin.
  • Timings (PaperMC): PaperMC gibi optimize edilmiş sunucular, sunucu performansını detaylı olarak analiz eden "Timings" raporları oluşturma özelliğine sahiptir. Konsolda /timings paste komutunu çalıştırdığınızda, size bir URL verir. Bu URL'yi ziyaret ederek hangi eklentilerin, varlıkların veya işlemlerin sunucunuzu yavaşlattığını görebilirsiniz. Bu, lag sorunlarını teşhis etmek için paha biçilmez bir araçtır.
  • Sunucu Panelleri: GamePanelX, Pterodactyl gibi web tabanlı sunucu yönetim panelleri, birden fazla sunucuyu tek bir arayüzden yönetmenize, kaynak kullanımını izlemenize, konsola erişmenize ve eklenti/mod kurulumunu kolaylaştırmanıza olanak tanır. Bunlar genellikle daha çok adanmış sunucularda veya VPS'lerde kullanılır.

Gelişmiş Güvenlik Önlemleri

Sunucunuzu saldırılara karşı daha dayanıklı hale getirmek için ek güvenlik katmanları ekleyebilirsiniz.

  • DDoS Koruması: Küçük ev sunucuları için DDoS saldırıları büyük bir risk oluşturabilir. Birçok internet servis sağlayıcısı (ISP) temel bir DDoS koruması sunsa da, daha güçlü koruma için Cloudflare Spectrum gibi çözümler veya DDoS korumalı bir barındırma hizmeti kullanmayı düşünebilirsiniz.
  • SSH Güvenliği (Linux için): Eğer sunucunuzu Linux üzerinde barındırıyorsanız ve SSH ile erişiyorsanız:
    • Varsayılan 22 portunu değiştirin.
    • Sadece anahtar tabanlı kimlik doğrulamaya izin verin, şifre ile girişi devre dışı bırakın.
    • Kök (root) kullanıcısının SSH üzerinden girişini engelleyin.
    • fail2ban gibi araçlar kullanarak yanlış şifre denemelerini engelleyin.
  • Eklenti/Mod Denetimi: Yalnızca güvenilir kaynaklardan eklenti ve mod indirin. Bilinmeyen veya şüpheli kaynaklardan gelen dosyalar zararlı kod içerebilir. Her zaman yorumları ve indirme sayılarını kontrol edin.

Mobil Uyumlu HTML Sayfası ile Sunucu Durumu Takibi

Sunucunuzun durumunu (çevrimiçi/çevrimdışı, oyuncu sayısı) uzaktan takip etmek isteyebilirsiniz. Basit bir HTML sayfası ve JavaScript kullanarak bunu yapabilirsiniz. Bu sayfa, modern web standartlarına uygun olmalı ve mobil cihazlarda da düzgün görünmelidir.





    
    
    Minecraft Sunucu Durumu
    


    

Minecraft Sunucu Durumu

Sunucu Adı: Yükleniyor...
Durum: Yükleniyor...
Oyuncu Sayısı: Yükleniyor...
Maks. Oyuncu: Yükleniyor...

Bu HTML kodu, basit bir sunucu durumu sayfası oluşturur. mcsrvstat.us gibi üçüncü taraf bir API kullanarak Minecraft sunucunuzun durumunu sorgular ve sonuçları gösterir. @media sorgusu sayesinde sayfa mobil cihazlarda daha okunaklı hale gelir. Bu dosyayı bir web sunucusunda (Apache, Nginx) barındırabilir veya basitçe tarayıcınızda açarak kullanabilirsiniz. SUNUCU_HARICI_IP_ADRESI kısmını kendi sunucunuzun IP adresiyle değiştirmeyi unutmayın.

Bu ileri düzey yönetim ve güvenlik pratikleri, sunucunuzun ömrünü uzatacak, oyuncularınıza daha iyi bir deneyim sunacak ve sizi olası sorunlara karşı daha dirençli hale getirecektir. Unutmayın, bir sunucuyu yönetmek sürekli bir öğrenme sürecidir.

Sonuç ve Sıkça Sorulan Sorular

Tebrikler! Bu kapsamlı rehber boyunca, kendi Minecraft sunucunuzu sıfırdan kurmaktan, onu dış dünyaya açmaya, performansını optimize etmeye ve güvenliğini sağlamaya kadar birçok önemli adımı tamamladınız. Artık sadece bir oyuncu değil, aynı zamanda kendi dijital dünyanızın mimarı ve yöneticisisiniz. Bu yolculukta edindiğiniz bilgiler, sadece Minecraft sunucunuzu değil, genel olarak sunucu yönetimi ve ağ teknolojileri konusundaki anlayışınızı da geliştirdi.

Başlangıçta karmaşık görünen port yönlendirme, Java argümanları veya eklenti yönetimi gibi konuların, adım adım ilerlediğinizde ne kadar ulaşılabilir olduğunu gördünüz. Kendi sunucunuzu kurmak, size sınırsız kişiselleştirme özgürlüğü sunar; ister sadece birkaç arkadaşınızla özel bir dünya paylaşın, ister büyük bir topluluğa ev sahipliği yapın. Önemli olan, sunucunuzun ihtiyaçlarını anlamak, düzenli yedeklemeler yapmak, güvenlik önlemlerini ihmal etmemek ve sürekli öğrenmeye açık olmaktır. Unutmayın, bir sunucu yöneticisi olmak, sürekli güncel kalmayı ve olası sorunlara karşı proaktif olmayı gerektirir. Şimdi kendi Minecraft evreninizde sonsuz maceralar yaratmanın keyfini çıkarın!

Sıkça Sorulan Sorular (SSS)

S: Kendi sunucumu kurmak için bilgisayarımın sürekli açık kalması gerekiyor mu?
C: Evet, sunucunuzun çalışır durumda olması ve oyuncuların bağlanabilmesi için bilgisayarınızın ve internet bağlantınızın sürekli aktif olması gerekir. Eğer bilgisayarınız kapanırsa veya internet bağlantınız kesilirse, sunucunuz çevrimdışı olacaktır.
S: Sunucum çok lag yapıyor (gecikme yaşıyor), ne yapmalıyım?
C: Lag sorunlarının birçok nedeni olabilir. Başlıca çözümler şunlardır:
  1. Sunucuya ayrılan RAM miktarını artırın (-Xmx değeri).
  2. Daha iyi bir internet bağlantınız olduğundan emin olun (özellikle yükleme hızı).
  3. server.properties dosyasındaki view-distance değerini düşürün.
  4. PaperMC gibi optimize edilmiş sunucu yazılımlarını kullanın ve Aikar'ın JVM argümanlarını uygulayın.
  5. Fazla kaynak tüketen eklentileri veya modları belirlemek için /timings paste komutunu kullanın ve gereksiz olanları kaldırın.
  6. Daha güçlü donanıma sahip bir bilgisayar veya profesyonel bir hosting hizmetine geçiş yapmayı düşünün.
S: Sunucumun IP adresi değişiyor, arkadaşlarım bağlanamıyor. Ne yapmalıyım?
C: Ev internet bağlantınız muhtemelen dinamik IP adresi kullanıyor. Bu sorunu çözmek için bir Dinamik DNS (DDNS) hizmeti (örneğin No-IP, DuckDNS) kullanmalısınız. DDNS, IP adresiniz değişse bile sunucunuza her zaman aynı alan adıyla erişilmesini sağlar. Router'ınızda veya sunucu bilgisayarınızda DDNS istemcisini yapılandırın.
S: Modlu bir sunucu kurabilir miyim?
C: Evet, modlu bir sunucu kurabilirsiniz. Bunun için Vanilla veya PaperMC yerine Forge veya Fabric gibi mod yükleyici sunucu yazılımlarını kullanmanız gerekir. İndirdiğiniz modları sunucu klasörünüzdeki mods klasörüne yerleştirmeniz ve oyuncuların da aynı modlara sahip istemcileri kullanması gerekir.
S: Sunucuma nasıl yönetici (op) yetkisi verebilirim?
C: Sunucu konsolunda (veya oyun içindeki sohbet kutusunda, eğer yetkiniz varsa) op komutunu kullanarak bir oyuncuya yönetici yetkisi verebilirsiniz. Bu, oyuncuya tüm oyun içi komutları kullanma yetkisi verir. Yetkiyi geri almak için deop komutunu kullanabilirsiniz.

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Gönder

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.
Exit mobile version