Centos 7 Linux Fail2Ban Kurulumu ve Ayarları

Fail2ban son derece kullanışlı bir ip engelleme aracıdır. Sunucunuzdaki log dosyalarını takip eder, belirtilen bir servisten (smtp, ssh, ftp vs.) birden fazla hatalı şifre denemesi olduğunda bunu tespit ederek, şifre denemesi yapan ip’yi veya ip bloğunu (bu size bağlı) belirli bir süre veya süresiz engeller.

Kuruluma geçmeden önce yum’da son versiyonu ne var ona bakalım.

1
yum info fail2ban

Ben yükleme yaptığım sırada 0.9.7 versiyonu vardı. Diğer versiyonlarında da kurulum ve ayarlar aynı olacaktır.

Kuruluma geçelim:

1
yum install fail2ban

Kurulum kısa sürede tamamlandıktan sonra ayar dosyasına bakalım. Ayar dosyası /etc/fail2ban/ klasörü altında bulunmaktadır. Bu klasör altında jail.local adında bir dosya oluştuyoruz ve içine şunları yazıyoruz;

1
2
3
4
5
6
7
8
9
10
11
12
[DEFAULT]
# Burada yazılacak parametreler aşağıda belirtilen tüm kurallar için geçerli olacaktır.
# Mesela sshd'da fark ederseniz bantime 600 denilmiş. sshd'da bantime yazılmasa 3600 olacaktı. Yani 1 saat.
bantime = 3600

# Override /etc/fail2ban/jail.d/00-firewalld.conf:
banaction = iptables-multiport

[sshd]
enabled = true
maxretry = 3
bantime = 600

Yukarıda sshd servisi üzerinden gelen şifre denemelerinde 3 kez yanlış şifre girildiğinde, ssh girişinde bulunan ip adresi 10 dakika engellenecektir. 600 saniye cinsinden yazılmıştır. 1 günlük engelleme isterseniz bantime süresini 86400 olarak değiştirebilirsiniz. Fail2ban loglarını /var/log/fail2ban.log dosyasında görebilirsiniz.

fail2ban sunucunuzda belli bir ram kapladığından, bantime süresini uzun tutmanızı tavsiye ederim. Çünkü her yaptığı işlem ram’de yer kaplayacaktır. Fail2ban da tıpkı http, ftp, smtp gibi bir servistir. Servisi açılışta aktif etmeli ve başlatmalısınız.

1
2
systemctl enable fail2ban
systemctl start fail2ban

Yukarıda, servisin her sunucu açılışında çalışması için enable ediyoruz.

fail2ban servisinin o anki durumunu görmek için:

1
fail2ban-client status

Fail2ban üzerinden hangi ip adreslerinin engellendiğini görmek için:

1
2
3
4
fail2ban-client status [kural adı]

# Örnek
fail2ban-client status sshd

Sunucunuzda engellenen ip adreslerini görmek için:

1
iptables -L -n

Yanlışlıkla kendi ip adresiniz ban’a takıldığında bunu kaldırmak için aşağıdaki işlemleri yapınız:

1
iptables -D INPUT -s ip_adresi -j DROP

veya

1
fail2ban-client set sshd unbanip kendi-ip-adresiniz

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Güvenlik Sorusu *