Sunucu güvenliği: ilk gün yapılacak temel adımlar
Yeni bir sunucu, kurulduğu andan itibaren otomatik tarama trafiği alır. Bu rehber, ilk gün yapıldığında saldırı yüzeyinin büyük kısmını kapatan adımları sırayla veriyor — hiçbiri karmaşık değil, hepsi atlanıyor.
1. SSH'i anahtarla kullanın, parolayı kapatın
En yüksek getirili tek adım budur. Açık bir 22 portu ve parola girişi, sürekli deneme yapılan bir kapı demektir. Anahtara geçmek bu trafiğin tamamını işe yaramaz hale getirir.
Adımlar ve erişimi kaybetmeden uygulama yöntemi: SSH ile sunucuya bağlanma
2. Yalnızca gerekli portları açın
Varsayılan yaklaşım "her şeyi kapat, gerekeni aç" olmalı:
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 30120 # oyun portunuz
ufw enableDocker kullanıyorsanız kritik bir uyarı: Docker'ın yayınladığı portlar nat/PREROUTING üzerinden yönlendirildiği için host INPUT kurallarını atlar. Yani ufw enable tek başına bir Docker portunu kapatmaz; DOCKER-USER zincirine kural yazmanız gerekir. Bu, kendini güvende sanmanın en yaygın sebeplerinden biridir.
3. Veritabanı portunu dışarıya AÇMAYIN
MySQL (3306), MSSQL (1433), PostgreSQL (5432) ve Redis (6379) yalnızca yerel bağlantı kabul etmelidir. Açık bir veritabanı portu, tüm verinizin dışarıya açık olması demektir.
MySQL'de:
bind-address = 127.0.0.1Uygulamanız başka bir sunucudaysa özel ağ kullanın, portu internete açmayın.
4. Yönetim panellerini kısıtlayın
txAdmin (40120), RCON (28016), Plesk, phpMyAdmin — bunların hepsi sunucunuzun tam kontrolüdür. Herkese açık bırakılan bir yönetim paneli, parola ne kadar güçlü olursa olsun gereksiz bir risktir. Yalnızca kendi IP adresinize izin verin.
5. Güncellemeleri uygulayın
apt update && apt upgradeOtomatik güvenlik güncellemesi (unattended-upgrades) kurmak, aylar sonra açık kalan bilinen bir zafiyetten daha iyidir. Ama çekirdek güncellemeleri yeniden başlatma gerektirir; oyun sunucusunda bunu planlı bir pencerede yapın.
6. Ayrı kullanıcı, root ile çalışmayın
Oyun sunucusunu root ile çalıştırmak yaygın ve gereksizdir. Uygulamada bir zafiyet varsa root ile çalışması makinenin tamamının ele geçmesi, ayrı kullanıcıyla çalışması yalnızca o dizinin etkilenmesi demektir:
adduser --disabled-password --gecos "" fivem7. Fail2ban kurun
Başarısız denemeleri tekrarlayan IP'leri geçici olarak engeller. Anahtar kullanıyorsanız SSH için gereksizleşir, ama diğer servisler (web panel, FTP) için hâlâ faydalıdır.
8. Yedek — güvenliğin son halkası
Fidye yazılımı ve yanlışlıkla silme, güvenlik duvarıyla çözülemeyen iki senaryodur. Geri yüklemesi denenmiş bir uzak yedek, bu iki durumda elinizdeki tek şeydir: sunucu yedekleme stratejisi
Kontrol listesi
Kurulumdan sonra tek tek doğrulayın:
ss -tulpn # hangi portlar dinliyor
ufw status verbose # guvenlik duvari kurallari
iptables -S DOCKER-USER # Docker varsa
last -n 20 # son girislerss -tulpn çıktısında 0.0.0.0 üzerinde dinleyen ve dışarıya açılmaması gereken her servis bir bulgudur.
DDoS ayrı bir konu
Yukarıdaki adımlar yetkisiz erişime karşıdır. Hacimsel saldırılar sunucu içinde çözülemez; ağ seviyesinde filtreleme gerekir: DDoS koruması nedir?