Ubuntu Server UFW, Fail2ban ve Güvenlik Sıkılaştırma (Hardening)
Dışarıya Açık Linux Sunucuları Saldırılardan Korumak
Yeni kiraladığınız bir VPS veya veri merkezinizde internete (Public IP) doğrudan bağlı bir Linux sunucusunu ayağa kaldırdığınız anda, dakikalar içerisinde Çin, Rusya veya Avrupa lokasyonlu botların SSH portunuza brute-force (kaba kuvvet) şifre deneme saldırıları yapmaya başladığını loglardan görebilirsiniz. Güvenliği sağlamak için atılması gereken ilk adımlar şunlardır:
- SSH Güvenliğini Sıkılaştırmak
/etc/ssh/sshd_config dosyasını düzenleyerek şu kuralları uygulamak hayat kurtarır:
Varsayılan 22 portunu örneğin 2244 gibi rastgele bir porta çekmek (Script kiddie botlarını %90 oranında engeller).
`PermitRootLogin no` yaparak root kullanıcısının doğrudan sisteme girmesini yasaklamak.
`PasswordAuthentication no` ile şifreli girişi tamamen kapatıp, sadece SSH Key (RSA/Ed25519) ile asimetrik şifrelemeyle giriş yapılmasına izin vermek.
- UFW (Uncomplicated Firewall) Kullanımı
Iptables kurallarını karmaşık sözdizimiyle yazmak yerine UFW ile port yönetimini basitleştirin. Önce ufw default deny incoming ile tüm dış trafiği kesin, ardından sadece kullandığınız servislere (ufw allow 80/tcp, ufw allow 443/tcp, ufw allow 2244/tcp) izin vererek güvenlik duvarını aktif edin (ufw enable).
- Fail2ban Entegrasyonu
Fail2ban, sunucunuzdaki log dosyalarını sürekli izleyen bir servistir. Eğer bir IP adresi SSH üzerinden 5 kez hatalı anahtar veya şifre denerse, fail2ban bunu tespit eder ve UFW/Iptables kurallarına müdahale ederek o IP adresini belirlediğiniz süre boyunca (veya kalıcı olarak) banlar. Sadece SSH için değil, Nginx loglarını taratarak web sitenize yapılan saldırıları da otomatik engelleyebilirsiniz.
Fail2ban candır! SSH portunu rastgele bir porta çekip üzerine Fail2ban kurduğunuzda sunucudaki bot saldırıları %99 oranında kesiliyor.
Cevap yazmak için giriş yapmalısınız.
Giriş Yap