UFW ve Fail2Ban Kurulumu
Güvenlik

UFW Güvenlik Duvarı ve Fail2Ban Kurulumu

Ubuntu/Debian sunucuda UFW güvenlik duvarı kuralları oluşturun ve Fail2Ban ile kaba kuvvet (brute force) saldırılarını otomatik engelleyin.

  • MerkezHost Teknik Ekibi
  • 3 dk okuma
  • Seviye: Başlangıç
  • Güncelleme:

Sunucu güvenliğinin temel taşı, yalnızca ihtiyaç duyulan portları açık bırakmak ve tekrarlayan saldırı denemelerini otomatik engellemektir. Bu rehberde Ubuntu/Debian sunucuda UFW (Uncomplicated Firewall) güvenlik duvarını yapılandıracak ve Fail2Ban ile kaba kuvvet saldırılarını engelleyeceğiz.

Bölüm 1: UFW güvenlik duvarı

UFW'yi kurun

UFW, Ubuntu'da genellikle kurulu gelir. Değilse:

sudo apt update && sudo apt install -y ufw

Varsayılan politikaları belirleyin

Gelen tüm bağlantıları reddedip giden bağlantılara izin vermek en güvenli başlangıçtır:

sudo ufw default deny incoming
sudo ufw default allow outgoing

Gerekli portlara izin verin

Önemli

UFW'yi etkinleştirmeden önce mutlaka SSH portuna izin verin, aksi takdirde sunucuyla bağlantınız kesilir. SSH portunu değiştirdiyseniz kendi port numaranızı yazın.

sudo ufw allow OpenSSH          # veya: sudo ufw allow 2222/tcp
sudo ufw allow 80/tcp           # HTTP
sudo ufw allow 443/tcp          # HTTPS

Belirli bir servise yalnızca kendi IP adresinizden erişim vermek için (örneğin MySQL):

sudo ufw allow from 203.0.113.10 to any port 3306 proto tcp

UFW'yi etkinleştirin

sudo ufw enable
sudo ufw status verbose

Kural yönetimi

sudo ufw status numbered        # Kuralları numaralı listele
sudo ufw delete 3               # 3 numaralı kuralı sil
sudo ufw limit OpenSSH          # SSH'a hız sınırı uygula (30 sn'de 6+ deneme engellenir)

Bölüm 2: Fail2Ban

Fail2Ban, log dosyalarını izleyerek çok sayıda başarısız giriş denemesi yapan IP adreslerini belirli bir süre engeller.

Kurulum

sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban

Yapılandırma

Ana yapılandırma dosyasını doğrudan düzenlemek yerine jail.local dosyası oluşturun; böylece güncellemelerde ayarlarınız korunur:

sudo nano /etc/fail2ban/jail.local
[DEFAULT]
bantime  = 1h
findtime = 10m
maxretry = 5
backend  = systemd
banaction = ufw
ignoreip = 127.0.0.1/8 ::1

[sshd]
enabled = true
port    = ssh
# SSH portunu değiştirdiyseniz: port = 2222

Bu ayarlarla 10 dakika içinde 5 kez hatalı giriş yapan IP adresi 1 saat boyunca engellenir. ignoreip satırına kendi sabit IP adresinizi ekleyerek kendinizi yanlışlıkla engellemekten kurtulabilirsiniz.

sudo systemctl restart fail2ban

Durumu kontrol edin

sudo fail2ban-client status
sudo fail2ban-client status sshd

Yanlışlıkla engellenen bir IP adresini kaldırmak için:

sudo fail2ban-client set sshd unbanip 203.0.113.10

Nginx için ek koruma

Nginx üzerindeki şüpheli bot taramalarını da engelleyebilirsiniz. jail.local dosyasına ekleyin:

[nginx-botsearch]
enabled  = true
port     = http,https
logpath  = /var/log/nginx/access.log
backend  = auto
Bilgi

Fail2Ban ve UFW, sunucu seviyesinde koruma sağlar. Hacimsel DDoS saldırıları ise sunucunuza ulaşmadan ağ seviyesinde filtrelenmelidir. MerkezHost altyapısı Mikrotik + Stormwall + AstGuard katmanlı DDoS koruması ile bu görevi üstlenir.

Sonuç

Sunucunuz artık yalnızca gerekli portları dışarıya açıyor ve kaba kuvvet saldırılarını otomatik engelliyor. Bu rehberi SSH güvenliği rehberimizle birlikte uygulayarak güçlü bir temel güvenlik katmanı oluşturabilirsiniz.

Sık Sorulan Sorular

UFW'yi açınca SSH bağlantım kopar mı?

UFW'yi etkinleştirmeden önce SSH portuna izin vermezseniz bağlantınız kesilir. Bu nedenle her zaman önce ufw allow OpenSSH (veya özel portunuz) komutunu çalıştırın.

Fail2Ban DDoS saldırılarını engeller mi?

Hayır. Fail2Ban kaba kuvvet giriş denemelerini engeller. Hacimsel DDoS saldırılarına karşı ağ seviyesinde koruma gerekir; MerkezHost altyapısında bu koruma katmanlı olarak sağlanır.

  • #ufw
  • #fail2ban
  • #güvenlik duvarı
  • #firewall
  • #brute force
Paylaş:
Devamını Okuyun

İlgili Rehberler