Linux Güvenlik Duvarı ile Minecraft Sunucusunu Koruma
Minecraft sunucunuzu kurup açık internet üzerinde yayına aldığınız andan itibaren çeşitli tehditlerle karşılaşırsınız. Port taramaları, kaba kuvvet saldırıları ve DDoS denemeleri; güvenlik duvarı yapılandırması olmadan sunucunuzu çok kırılgan bırakır. Bu rehberde, UFW ve iptables ile temel güvenlik duvarı kurulumunu anlatıyorum.
Neden Güvenlik Duvarı Şart?
- Açık portlar üzerinden yetkisiz erişim girişimleri
- SSH'a yönelik kaba kuvvet saldırıları
- Minecraft portunu hedef alan basit flood saldırıları
- Gereksiz açık portlardan kaynaklanan riskler
UFW ile Temel Kurulum
UFW (Uncomplicated Firewall), Ubuntu/Debian için kullanıcı dostu bir güvenlik duvarı aracıdır.
sudo apt install -y ufw
# Önce tüm girişleri kapat
sudo ufw default deny incoming
# Tüm çıkışlara izin ver
sudo ufw default allow outgoing
# SSH erişimi (kapanıp kalmamak için zorunlu!)
sudo ufw allow 22/tcp
# Minecraft portu
sudo ufw allow 25565/tcp
# Güvenlik duvarını etkinleştir
sudo ufw enable
# Durumu kontrol et
sudo ufw status verbose
SSH Portunu Değiştirin
SSH'ın standart 22 portu sürekli taranır. Değiştirmek saldırı yüzeyini azaltır:
sudo nano /etc/ssh/sshd_config
# Port 22 satırını bulun, örneğin Port 2222 yapın
sudo systemctl restart sshd
# UFW'de yeni portu açın, eskisini kapatın
sudo ufw allow 2222/tcp
sudo ufw delete allow 22/tcp
Fail2ban ile Kaba Kuvvet Koruması
sudo apt install -y fail2ban
# /etc/fail2ban/jail.local dosyası oluşturun:
[sshd]
enabled = true
port = 2222
maxretry = 5
bantime = 3600
5 yanlış SSH denemesinden sonra ilgili IP 1 saat engellenir.
Minecraft İçin Bant Genişliği Limiti
Basit flood saldırılarını iptables ile sınırlandırmak mümkündür:
# Dakikada 20'den fazla yeni bağlantıyı engelle
sudo iptables -A INPUT -p tcp --dport 25565 \
-m state --state NEW \
-m recent --set --name MC
sudo iptables -A INPUT -p tcp --dport 25565 \
-m state --state NEW \
-m recent --update --seconds 60 --hitcount 20 --name MC \
-j DROP
Hangi Portlar Kapalı Olmalı?
Yalnızca ihtiyaç duyduğunuz portları açın. Gereksiz açık portlar saldırı yüzeyi oluşturur:
- 3306 (MySQL): Sadece localhost'tan erişim olmalı, asla internet'e açmayın
- 8080 / 8443: Panel kullanmıyorsanız kapalı olsun
- Rcon portu: İnternet'e açık bırakmak güvenlik açığıdır
Pterodactyl veya Panel Kullanıyorsanız
Panel portu (genellikle 80/443 veya özel bir port) sadece yöneticilerin IP'sinden erişilebilir olabilir. Bunu iptables ile sağlayabilirsiniz:
sudo iptables -A INPUT -p tcp --dport 8080 \
-s YöneticiIPsi -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 8080 -j DROP
Güvenlik duvarı bir kez kurulup unutulacak şey değildir. Yeni bir servis açtığınızda veya port değiştirdiğinizde kurallarınızı güncelleyin.
💡 Etkileşim için giriş yap.