Selam, Sunucunuzu açtınız, oyuncular geliyor, her şey güzel gidiyor. Sonra bir gün bakıyorsunuz sunucu çökmüş, oyuncular giremez olmuş, hatta bazı durumlarda veriler gitmiş. Ya da daha kötüsü, birisi admin yetkisi almış ve her şeyi mahvetmiş.
Bu durumla karşılaşan sunucu sahiplerinin çoğu "biz küçük sunucuyuz, kim uğraşır bizimle" diye düşünmüştü. Yanıldılar. Saldırganlar çoğu zaman büyük sunucuları değil, korumasız küçük sunucuları hedef alıyor. Çünkü daha kolay.
Bu konuda Minecraft sunucularının maruz kaldığı başlıca saldırı türlerini ve bunlara karşı nasıl korunacağınızı anlatacağım.
DDoS Saldırıları
En yaygın saldırı türü bu. Sunucunuza aynı anda çok sayıda bağlantı isteği gönderilerek bant genişliği tüketiliyor ve sunucu erişilemez hale geliyor. Küçük sunuculara bile yapılıyor çünkü botnet kiralamak artık ucuz.
DDoS yaşadığınızı şöyle anlarsınız: oyuncular aniden bağlanamaz hale gelir, ping astronomik yükselir, konsol anlamsız bağlantı loglarıyla dolar. Sunucu kapanmaz ama kimse giremez.
Korunma yolları:
DDoS korumalı hosting seçin. Bu en temel adım. OVH, Hetzner gibi büyük sağlayıcılar veya Minecraft'a özel hosting şirketlerinin çoğu DDoS filtreleme sunuyor. Ucuz, korumasız hosting alıp sonra DDoS yedim diye şikayet etmeyin.
IP adresinizi gizleyin. Sunucu IP'nizi doğrudan paylaşmayın, her zaman domain kullanın. Bu tam koruma sağlamaz ama IP'nizi bulmayı zorlaştırır.
TCPShield veya Cloudflare gibi proxy hizmetleri kullanabilirsiniz. Gerçek IP'nizi gizleyip DDoS trafiğini filtrelerler. TCPShield'in Minecraft'a özel ücretsiz planı var.
Bot Saldırıları (Bot Flood)
Sunucunuza aynı anda yüzlerce sahte oyuncu bağlantısı gönderilmesi. Bağlantı sayısı maksimuma ulaşıyor, gerçek oyuncular giremez hale geliyor. Sunucu da bu yükü kaldırmaya çalışırken kasıyor.
Bunu önlemek için birkaç şey yapmanız lazım:
AntiBot eklentileri kurun. Noxesium, FastLogin, AntiBot gibi eklentiler sahte bağlantıları tespit edip engelliyor. Bu eklentiler bağlanan oyuncuya basit bir doğrulama yapıyor, bot ise geçemiyor.
BungeeCord veya Velocity kullanıyorsanız proxy tarafında da bot koruması şart. HAProxy veya proxy firewall kuralları ile tek IP'den gelen çok sayıda bağlantıyı sınırlayabilirsiniz.
max-connections ayarını kontrol edin. Tek IP'den maksimum kaç bağlantı açılabileceğini sınırlayın.
Exploit ve Dupe Bug'ları
Minecraft ve eklentilerin açıklarını kullanarak item çoğaltma, sonsuz kaynak elde etme veya sunucuyu çökertme. Bunlar çok çeşitli ve sürekli yenileri keşfediliyor.
Genel korunma kuralları:
Sunucu yazılımınızı ve eklentilerinizi güncel tutun. Bilinen exploit'lerin çoğu eski sürümlerde mevcut. Paper ve Purpur ekibi güvenlik açıklarını çok hızlı kapatıyor. Güncelleme yapmak zahmetli ama kesinlikle vazgeçilmez.
AntiCheat eklentisi kurun. Matrix, Vulcan, AAC gibi eklentiler olağandışı oyuncu davranışlarını tespit ediyor. Item dupe, hareket hileleri, zayıf noktaları istismar etmeye çalışma gibi şeyleri yakalıyor.
Özellikle dikkat etmeniz gereken açıklar:
Book exploit: Çok uzun kitaplar yazarak sunucuyu çökertiyor. Paper bu açığı büyük ölçüde kapattı ama güncel tutun.
Sign exploit: Özel karakterler içeren tabelalarla crash. Yine güncel Paper ile çözülüyor.
Redstone lag makineleri: Kasıtlı olarak kurulmuş devasa redstone makineleri. WorldGuard ile redstone'u sınırlayabilir veya şüpheli yapıları takip edebilirsiniz.
Chunk ban: Belirli chunk'lara girildiğinde sunucuyu çökertiyor. Paper'da düzeltildi ama yine de güncel olun.
Privilege Escalation (Yetki Yükseltme)
Birinin sahip olmadığı yetkileri ele geçirmesi. Bu genelde şu şekillerde oluyor:
Sosyal mühendislik. Biri "eski admin arkadaşınım, şifremi unuttum" gibi bir hikaye uydurarak sizden yetki istiyor. Ya da oyunculardan birine güvenip yetki veriyorsunuz, o da kötüye kullanıyor. İnsan faktörü her zaman en zayıf halka.
OP komutunu kötüye kullanma. Eğer sunucunuz online-mode=false modundaysa ve düzgün güvence alınmamışsa, biri proxy'yi atlayıp direkt sunucuya bağlanıp /op komutu çalıştırabilir. Bunun için:
Velocity veya BungeeCord modern forwarding kullanın
Alt sunucu portlarını firewall ile dışarıya kapatın
Console'a yetkisiz erişimi engelleyin
Güvenlik açığı içeren eklentiler. Bazı kötü yazılmış eklentiler komut injection veya yetki bypass açıkları içerebilir. Eklenti seçerken güvenilir kaynaklardan alın, az indirilen ve güncellenmeyen eklentilerden uzak durun.
Veri Çalma ve Veritabanı Saldırıları
MySQL veritabanınıza yetkisiz erişim ciddi bir tehdit. Oyuncu verileri, ekonomi bilgileri, hatta şifreler çalınabilir.
Korunma yolları:
MySQL portunu dışarıya kapatın. 3306 portu asla internete açık olmamalı. Sadece localhost veya sunucunun kendi IP'si erişebilmeli.
Güçlü şifre kullanın. "root" kullanıcısıyla "root123" şifresiyle çalışan sunucular var. Bunlar bir gün kötü biter.
Her eklenti için ayrı veritabanı kullanıcısı oluşturun. Bir eklentinin veritabanı ele geçirilirse diğerleri etkilenmesin.
Düzenli yedek alın. Saldırı olduğunda veya bir şeyler ters gittiğinde yedeğiniz yoksa her şeyi kaybedebilirsiniz. Günlük otomatik yedek şart.
Crash Saldırıları
Sunucuyu çökertemek için tasarlanmış özel paketler veya istekler gönderilmesi. Bazıları oyun protokolündeki açıkları kullanıyor, bazıları eklenti açıklarını.
PacketEventsAPI veya ProtocolLib tabanlı koruma eklentileri bu tarz saldırıları filtreleyebiliyor. Özellikle büyük sunucularda bu tarz bir paket filtreleme şart.
Watchdog ayarlarını kontrol edin. Minecraft'ın kendi watchdog sistemi sunucu belirli süre yanıt vermezse otomatik yeniden başlatıyor. Hosting panelinizdeki restart scripti de buna benzer şekilde ayarlanabilir.
Grief ve İzinsiz Yapı Değiştirme
Teknik saldırı değil ama sonuçları çok yıkıcı olabiliyor. Aylar içinde inşa edilen yapıların bir gecede yerle bir edilmesi.
WorldGuard bölge koruma için vazgeçilmez. Spawn alanlarını, önemli yapıları mutlaka koruyun.
CoreProtect her blok değişikliğini logluyor. Kim ne zaman hangi bloğu koymuş veya kırmış, hepsini görebiliyorsunuz. Grief sonrası geri alma işlemi de çok hızlı. Bu eklentiyi kurmadan survival sunucusu açmayın.
LuckPerms ile yetki kontrolü. Kimin nerede ne yapabileceğini detaylıca ayarlayın. Yeni oyuncuların çok az yetkisi olmalı, güven kazandıkça artmalı.
Admin Hesap Güvenliği
Kendi hesabınızın güvenliği de kritik. Admin yetkili hesabınız ele geçirilirse bütün korumalar anlamsız.
LoginSecurity veya AuthMe gibi eklentilerle oyun içi şifre koruması ekleyin. Özellikle offline-mode sunucularda bu şart.
Güçlü ve benzersiz şifre kullanın. Başka hiçbir yerde kullanmadığınız, tahmin edilmesi zor bir şifre. "sunucu123" gibi şeyler değil.
Konsol erişimini sınırlayın. SFTP ve SSH için güçlü şifre veya key-based authentication kullanın. Root ile giriş yapmayın, ayrı bir kullanıcı oluşturun.
İki faktörlü doğrulama. Hosting panelinizde ve sunucu erişiminde 2FA açık olsun. Şifreniz çalınsa bile hesabınıza girilemez.
Log Takibi
Saldırıları önlemenin yanında tespit etmek de önemli. Konsolunuzu ve loglarınızı düzenli takip edin.
Şüpheli işaretler:
Anormal miktarda failed login denemesi
Bilinmeyen IP'lerden giriş
Yetki değişiklikleri
Olağandışı saatlerde yapılan işlemler
Çok sayıda bağlantı ve hemen kopma
Spark eklentisi performans sorunlarını tespit eder ve bazen saldırı trafiğini görünür kılar.
Bir de log boyutunu takip edin. Loglar aniden çok büyüdüyse bir şeyler oluyor demektir.
Genel Güvenlik Kontrol Listesi
Bunları yapın derim:
DDoS korumalı hosting kullan
Sunucu yazılımını ve eklentileri güncel tut
Alt sunucu portlarını firewall ile kapat
MySQL'i dışarıya açma
AntiBot eklentisi kur
AntiCheat eklentisi kur
CoreProtect ile her değişikliği logla
WorldGuard ile kritik alanları koru
LoginSecurity veya AuthMe kur
Düzenli yedek al, yedeği farklı bir yerde sakla
Admin hesaplar için güçlü şifre ve 2FA
Konsol erişimini sınırla
Yetkileri mümkün olduğunca kısıtlı tut
Kısaca
Güvenlik tek seferlik bir iş değil. Sunucunuzu bir kez güvenli hale getirip unutmak olmaz. Yeni açıklar keşfediliyor, yeni saldırı yöntemleri çıkıyor. Güncel kalmak, logları takip etmek ve düzenli yedek almak bu işin temelidir.
Küçük sunucuyum, kimse uğraşmaz diye düşünmeyin. Korumasız sunucular otomatik tarama araçlarıyla buluyor ve saldırıya uğruyor. Önlem almak hem ucuz hem de çok daha az stresli.
Deneyimleriniz varsa veya sormak istediğiniz bir şey varsa yazın, tartışalım.

