Rehber 09 Eylül 2026 · 6 dakika okuma

Brute Force Saldırısına Karşı Sunucu Koruması: Net Rehber

Brute force saldırılarını engellemek için rate limit, MFA, fail2ban, SSH/IP kısıtlama ve log izleme adımlarını net şekilde öğrenin.

Brute force saldırıları; kullanıcı adı/parola kombinasyonunu deneme yoluyla hesap ele geçirmeyi hedefler. Bu saldırılar özellikle SSH, kontrol paneli (cPanel/Plesk), web yönetim paneli ve WordPress gibi giriş noktalarında hızla tıkanma yaratabilir. Bu rehberde, saldırıyı sadece "engellemiş gibi" değil; ölçülebilir şekilde azaltan, saldırı izini loglarda net bırakan bir koruma mimarisi kuracaksınız. Odak; uygulanabilir ayarlar, beklenen etki ve kontrol noktalarıdır.

Brute force nereden gelir: En sık giriş yüzeyleri

Brute force saldırıları tek bir kapıdan yapılmaz; botlar paralel şekilde farklı hedeflere yönelir. Sunucunuzda aşağıdaki yüzeyleri mutlaka envanterleyin:

  • SSH (22/toranmış portlar): Otomatik parola denemeleri, özellikle parola kimlik doğrulaması açıkken.
  • Web kontrol panelleri: Plesk ve cPanel giriş sayfaları, yönetim API’leri.
  • CMS ve eklentiler: WordPress wp-admin, eklenti/admin endpoint’leri.
  • Veritabanı erişimi: MySQL/MariaDB yönetim kimlik bilgileri (çoğunlukla doğrudan hedef değil ama hatalı yapı kaynaklı risk).
  • Mail/FTP: SFTP/FTP parola denemeleri.

Bu maddeler içinde en hızlı etkili korumayı kurmak için öncelik sırası genelde şöyledir: SSH + kontrol paneli + web yönetim (WordPress/panel). Çünkü bu üç alan hem en çok hedeflenen hem de güvenlik ayarlarının en fazla etki ürettiği yerlerdir.

Katmanlı savunma planı: 5 bileşenli net mimari

Brute force saldırısına karşı tek bir ayarla çözüm beklemek doğru değildir. En pratik yaklaşım, saldırıyı daha baştan yavaşlatan ve tekrar eden IP’leri kalıcı/yarı kalıcı engelleyen katmanlar kurmaktır.

1) Kimlik doğrulama gücünü artırın: parola + anahtar + MFA

Brute force saldırısı, parola tahminine dayanır. Bu yüzden parolayı güçlendirmek kadar erişim yöntemini değiştirmek de kritiktir.

  • SSH’de parola kimlik doğrulamasını kapatın. Mümkünse SSH anahtarı (public key) kullanın.
  • Kontrol panellerinde (Plesk/cPanel) mümkün olan yerde MFA (çok faktörlü kimlik doğrulama) aktif edin.
  • Parolalarda uzunluk şarttır: minimum 16+ karakter ve benzersiz parola. Tekrar kullanılan parola brute force ile çok hızlı ele geçer.

Beklenen etki: Parola denemesi saldırısı doğrudan hedef bulamaz; brute force denemeleri artarsa bile "başarılı oturum" sayısı dramatik düşer.

2) Rate limit uygulayın: girişleri sayıya bağlayın

Rate limit (oransal sınırlama), aynı kaynaktan gelen deneme sayısını sınırlayarak saldırıyı ekonomik olmaktan çıkarır.

Uygulanabilecek yerler:

  • Web girişleri için reverse proxy/WAF katmanında (varsa)
  • Kontrol paneli önünde
  • Uygulama katmanında (WordPress login endpoint’i gibi)

Örnek mantık (net hedef): - 5-10 deneme / 5 dakika gibi ilk kademeyi kullanın. - Hata oranı yükseldikçe süreyi uzatın (progressive ban).

Not: Sayıları ortamınıza göre netleştirin. Çok düşük değer “gerçek kullanıcıyı” kilitleyebilir; çok yüksek değer botu durdurmaz.

3) Fail2ban ile tekrar eden IP’leri engelleyin (Linux)

Fail2ban, log dosyalarını izleyip belirli kalıplarda IP’yi otomatik ban eder. Brute force’ta en hızlı devreye alınan araçlardan biridir.

Kurulum ve örnek yapı mantığı:

  • SSH için fail2ban, başarısız giriş kalıplarını yakalar.
  • Kontrol paneli veya web server (Nginx/Apache) logları için ayrıca jails tanımlanabilir.

Örnek bir yapı (mantık göstermek için):

# Fail2ban kurulum (dağıtıma göre paket adı değişebilir)
sudo apt-get update && sudo apt-get install -y fail2ban

# Jail dizini
sudo ls /etc/fail2ban/jail.d/

Ardından jail.d/ altına SSH ve gerekiyorsa web için ayrı kurallar eklersiniz. Önemli nokta: Ban süresi, bant genişliği ve erişilebilirlik hedeflerinize göre netleştirilmelidir.

Beklenen etki: Aynı IP’den tekrarlı denemeler kısa sürede durur; saldırı devam etse bile sistem kaynak tüketimi azalır.

4) IP kısıtlama ve coğrafi filtreleme: “gerekliyse” kullanın

IP kısıtlama, “kimlerin erişeceği”ni daraltır. Her sitenin ihtiyacı farklıdır.

  • SSH ve kontrol paneli için yönetim trafiğini yalnızca kendi ofis/VPN IP’leriyle sınırlamak en güçlü yöntemdir.
  • Coğrafi filtreleme tek başına yeterli değildir; ancak yardımcı katman olabilir.

Net öneri: Dinamik ülke bazlı filtreyi tek başına “çözüm” olarak kullanmayın. Yönetim endpoint’i için allowlist (izin listesi) yaklaşımı brute force riskini en net düşürür.

5) Web uygulama seviyesinde korumayı tamamlayın

WordPress gibi sistemlerde brute force hedefleri login sayfalarıdır. Burada atılacak somut adımlar:

  • Login denemelerinde rate limit
  • “Username enumeration” azaltma (mümkün olduğunda aynı hata mesajı/akış)
  • Güçlü parola + MFA (WordPress için eklenti ile)
  • Şüpheli istekleri WAF/CDN katmanında karşılama (varsa)

Beklenen etki: Sadece sunucu değil, uygulama tarafında da botların deneme sayısı düşer.

Portlar ve servisler: Saldırıyı azaltmak için “yüzeyi küçültün”

Brute force genellikle internete açık servislerde gerçekleşir. Yüzeyi küçültmek, güvenliğin maliyetini düşürür.

Hangi servisleri internete açık bırakmalısınız?

  • SSH: Eğer mutlaka açık olacaksa (uzaktan yönetim) anahtar + rate limit + fail2ban + mümkünse allowlist
  • Kontrol paneli: Aynı şekilde allowlist veya en azından giriş korumaları
  • Web: 80/443 açık kalır; yönetim paneli ve login endpoint’i korunur

Güvenli port stratejisi

Port değiştirmek (22 yerine farklı port) tek başına güvenlik sağlamaz. Ancak botların rastgele keşfi biraz azalabilir. Net yaklaşım: - “Port değişti” diye güvenlik beklemeyin. - Asıl güvenlik: anahtar/MFA + fail2ban + rate limit + IP kısıtlaması.

Log izleme: Saldırıyı durdurduğunuzu nasıl kanıtlarsınız?

Saldırı “azaldı mı”yı görebilmeniz gerekir. Aksi halde yanlış ayarları fark etmezsiniz.

Kontrol edilecek log türleri

  • Auth log: SSH başarısız denemeleri ve ban tetikleyicileri
  • Web server logları: /wp-login.php / /login /admin denemeleri
  • Fail2ban logları: Ban sayısı, ban nedeni

İstatistikle doğrulama yöntemi

Kısa ve net bir doğrulama planı kurun:

  • Ayarları devreye aldığınız gün için saatlik aralıkla şunları kaydedin:
  • Başarısız SSH giriş denemesi sayısı
  • Fail2ban tarafından banlanan IP sayısı
  • Web login endpoint’lerine yapılan 4xx/5xx yoğunluğu

Örnek hedef davranış: - İlk 1-2 saat içinde fail2ban ban sayısı artar. - Ardından başarısız giriş sayısı belirgin şekilde düşer. - Web tarafında login denemeleri oranı azalır veya yanıt kodları tutarlı hale gelir (ör. 429 Too Many Requests veya WAF engelleri).

Kontrol paneli ve uygulama entegrasyonu: Tek tek değil, birlikte çalıştırın

Brute force, giriş noktaları arasında “yatay geçiş” gibi davranır. Bu yüzden sadece SSH’yi değil, kontrol panelini ve uygulama loginlerini de aynı güvenlik davranışına sokun.

Plesk/cPanel için pratik kontrol listesi

  • MFA aktif mi?
  • Giriş denemeleri için rate limit etkin mi?
  • Fail2ban veya benzeri mekanizma kontrol paneli login kalıplarını yakalıyor mu?
  • Panel erişimi allowlist ile sınırlandırılabiliyor mu?

WordPress için pratik kontrol listesi

  • Login denemelerinde rate limit
  • Şüpheli kullanıcı denemeleri için engelleme
  • Parola politikasını zorlayın
  • Oturum açma sonrası güvenlik eklentisi olaylarını (ör. 2FA) kullanın

Brute force’a karşı sunucu performansı etkisi: Ne zaman sorun büyür?

Brute force denemeleri sadece güvenlik meselesi değildir; CPU, log disk alanı ve bant genişliği tüketir.

Somut risk işaretleri: - SSH ve web logları hızla şişiyorsa (disk dolmasına yaklaşma) - CPU kullanımında yükselme + çok sayıda kısa süreli bağlantı - Nginx/Apache worker’larında tıkanma belirtileri

Çözüm yaklaşımı: - Rate limit + fail2ban banları log hacmini düşürür. - Log rotasyonu (logrotate) ve yeterli disk alanı planlayın. - Gereksiz açık servisleri kapatın.

Sonuç: Uygulama sırası ve “hemen yarın” aksiyonu

Brute force saldırısına karşı en net kazanım; parolaya bağımlılığı azaltmak ve girişleri sayıya bağlamakla gelir. Bu nedenle aksiyon sırası şu olmalı:

  1. SSH’de parola kimlik doğrulamasını kapatın, anahtar kullanın.
  2. Kontrol panelinde MFA aktif edin.
  3. Web ve yönetim girişlerinde rate limit kurun.
  4. Linux’ta fail2ban ile SSH (ve varsa web login) log kalıplarını izleyip tekrar eden IP’leri banlayın.
  5. Allowlist (izin listesi) ile yönetim erişimini sınırlayın; mümkünse yalnızca kendi IP/VPN’iniz.
  6. Son olarak loglardan doğrulayın: başarısız deneme sayısı düşüyor mu, ban sayısı oturuyor mu?

Eğer bu adımların her birini tek tek test ederseniz, brute force saldırısına karşı sadece “engelleme hissi” değil, ölçülebilir bir koruma durumu elde edersiniz. Şimdi mevcut sunucunuzda SSH + kontrol paneli + web login için giriş yüzeylerini listeleyin ve yukarıdaki 6 maddeden ilk 3’ünü 24 saat içinde devreye alacak şekilde ilerleyin.

Etiketler: #brute force #ssh güvenliği #fail2ban #vps güvenliği #hosting koruması

Hosting karşılaştırması yapmaya hazır mısın?

100+ firmanın fiyatlarını tek tıkla karşılaştır, en uygun paketi bul.

Hosting Karşılaştır →

İlgili Yazılar

0 ürün seçildi