Güvenlik

Farklı Saldırılardan Korunmak İçin Bir IPS (Fail2ban) Nasıl Kurulur

Farklı Saldırılardan Korunmak İçin Bir IPS (Fail2ban) Nasıl Kurulur

IPS veya Saldırı Önleme Sistemi, ağ trafiğini incelemek ve kötü niyetli girişleri tespit ederek farklı saldırıları önlemek için ağ güvenliğinde kullanılan bir teknolojidir. Saldırı Tespit Sisteminin yaptığı gibi sadece kötü amaçlı girdileri tespit etmenin yanı sıra, ağın kötü niyetli saldırılara karşı da korunmasını sağlar. Ağı kaba kuvvet, DoS (Hizmet Reddi), DDoS (Dağıtılmış Hizmet Reddi), Exploits, solucanlar, virüsler ve diğer yaygın saldırılara karşı önleyebilir. IPS, güvenlik duvarının hemen arkasına yerleştirilir ve alarm gönderebilir, kötü amaçlı paketler bırakabilir ve rahatsız edici IP adreslerini engelleyebilir. Bu eğitimde, farklı kaba kuvvet saldırılarına karşı bir güvenlik katmanı eklemek için bir Saldırı Önleme Yazılımı paketi olan Fail2ban'ı kullanacağız.

Fail2ban Nasıl Çalışır?

Fail2ban günlük dosyalarını okur (e.g. /var/log/Apache/error_log) ve çok sayıda başarısız parola deneyen veya açıklar arayan rahatsız edici IP'leri alır. Temel olarak Fail2ban, sunucudaki farklı IP'leri engellemek için güvenlik duvarı kurallarını günceller. Fail2ban ayrıca belirli bir hizmet için kullanabileceğimiz filtreler de sağlar (e.g., apache, ssh, vb.).

Fail2ban Kurulumu

Fail2ban Ubuntu'da önceden kurulu olarak gelmiyor, bu yüzden kullanmadan önce onu kurmamız gerekiyor.

[e-posta korumalı]:~$ sudo apt-get update -y
[e-posta korumalı]:~$ sudo apt-get install fail2ban

Fail2ban'ı kurduktan sonra, komut satırını kullanarak Fail2ban hizmetini başlatın ve etkinleştirin.

[e-posta korumalı]:~$ sudo systemctl start fail2ban
[e-posta korumalı]:~$ sudo systemctl fail2ban'ı etkinleştir


Şimdi fail2ban hizmetinin başlatılıp başlatılmadığını doğrulamak için durumunu kontrol edin.

[e-posta korumalı]:~$ sudo systemctl status fail2ban

SSH için Fail2ban'ı Yapılandırma

Fail2ban'ı /etc/fail2ban/jail'i değiştirerek yapılandırabiliriz.conf dosyası. Değiştirmeden önce bu dosyanın yedeğini alın.

[e-posta korumalı]:~$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.yerel

Şimdi Fail2ban'ı sshd hizmetini kötü niyetli girdilerden koruyacak şekilde yapılandıracağız. /etc/fail2ban/jail'i açın.favori düzenleyicinizde yerel dosya.

[e-posta korumalı]:~$ sudo nano /etc/fail2ban/jail.yerel

[varsayılan] bölümüne gidin ve [ altında yapılandırma parametrelerini girinvarsayılan] Bölüm.

[VARSAYILAN]
yok sayma = 127.0.0.1/8 192.168.18.10/32
yasak süresi = 300
maxretry = 2
bulma zamanı = 600

yok saymak boşluk karakteriyle ayrılmış cidr maskesi, ip adresi veya DNS ana bilgisayarı listesidir. Güvenilir IP'lerinizi bu listeye ekleyin ve bu IP'ler beyaz listeye alınacak ve sunucuda kaba kuvvet saldırısı gerçekleştirseler bile fail2ban tarafından engellenmeyecektir.

yasak zamanı sunucuya belirli sayıda başarısız deneme yaptıktan sonra bir IP'nin engelleneceği zamandır.

maxretry bir IP'nin belirli bir süre için fail2ban tarafından bloke edilmesinden sonraki maksimum başarısız deneme sayısıdır.

Zaman bul bir ana bilgisayarın yaptığı süre maxretry başarısız denemeler, engellenecek.

Yukarıdaki parametreleri yapılandırdıktan sonra, şimdi yukarıdaki kuralların uygulanacağı hizmeti yapılandıracağız. Varsayılan olarak, Fail2ban farklı hizmetler için önceden tanımlanmış filtrelere sahiptir, bu nedenle hizmetler için herhangi bir özel giriş girmemize gerek yoktur. Yapılandırma dosyasında yalnızca farklı hizmetleri etkinleştirir veya devre dışı bırakırız. /etc/fail2ban/jail'i açın.favori düzenleyicinizdeki yerel dosya.

[e-posta korumalı]:~$ sudo nano /etc/fail2ban/jail.yerel

Bul [sshd] bölümüne gidin ve bölüme aşağıdaki parametreleri girin.

[sshd]
etkinleştir = doğru
bağlantı noktası = ssh
filtre = sshd
logpath = /var/log/auth.günlük
maxretry = 3

etkin bu hizmetin fail2ban tarafından korunup korunmadığını tanımlar. Etkinleştirilirse, hizmet korunuyor demektir; aksi halde korunmuyor.

Liman servis portunu tanımlar.

filtre fail2ban'ın kullanacağı yapılandırma dosyasına atıfta bulunur. Varsayılan olarak /etc/fail2ban/filter kullanır.d/sshd.ssh hizmeti için conf dosyası.

günlük yolu günlüklere giden yolu tanımlar, fail2ban hizmeti farklı saldırılardan korumak için izleyecektir. Ssh hizmeti için, kimlik doğrulama günlükleri /var/log/auth adresinde bulunabilir.böylece fail2ban bu günlük dosyasını izleyecek ve başarısız oturum açma girişimlerini algılayarak güvenlik duvarını güncelleyecektir.

maxretry fail2ban tarafından engellenmeden önce başarısız oturum açma girişimlerinin sayısını tanımlar.

fail2ban için yukarıdaki yapılandırmayı uyguladıktan sonra, değişiklikleri kaydetmek için hizmeti yeniden başlatın.

[e-posta korumalı]:~$ sudo systemctl restart fail2ban.hizmet
[e-posta korumalı]:~$ sudo systemctl status fail2ban.hizmet

Test Fail2ban

Fail2ban'ı, sistemimizi ssh hizmetindeki kaba kuvvet saldırılarına karşı korumak için yapılandırdık. Şimdi fail2ban'ın çalışıp çalışmadığını kontrol etmek için sistemimize başka bir sistemden başarısız giriş denemeleri yapacağız. Şimdi bazı başarısız giriş denemeleri yaptıktan sonra fail2ban günlüklerini kontrol edeceğiz.

[e-posta korumalı]:~$ cat /var/log/fail2ban.günlük

Başarısız giriş denemelerinden sonra IP'nin fail2ban tarafından engellendiğini görebiliriz.

Aşağıdaki komutu kullanarak fail2ban'ın etkinleştirildiği tüm hizmetlerin bir listesini alabiliriz.

[e-posta korumalı]:~$ sudo fail2ban-client durumu


Yukarıdaki şekil, fail2ban'ı yalnızca sshd hizmeti için etkinleştirdiğimizi göstermektedir. Yukarıdaki komutta servis adını belirterek sshd servisi hakkında daha fazla bilgi alabiliriz.

[e-posta korumalı]:~$ sudo fail2ban-client status sshd

Fail2ban ban zamanından sonra yasaklanan IP adresinin yasağını otomatik olarak kaldırır, ancak komut satırını kullanarak istediğimiz zaman herhangi bir IP'nin yasağını kaldırabiliriz. Bu fail2ban üzerinde daha fazla kontrol sağlayacaktır. IP adresinin yasağını kaldırmak için aşağıdaki komutu kullanın.

[e-posta korumalı]:~$ sudo fail2ban-client set sshd unbanip 192.168.43.35

Fail2ban tarafından engellenmeyen bir IP adresinin yasağını kaldırmaya çalışırsanız, size sadece IP'nin engellenmediğini söyleyecektir.

[e-posta korumalı]:~$ sudo fail2ban-client set sshd unbanip 192.168.43.35

Sonuç

Bir sistem yöneticisi veya bir güvenlik mühendisi için sunucuların güvenliğini sağlamak büyük bir zorluktur. Sunucunuz genel ve özel anahtar çiftiyle değil parolayla korunuyorsa, sunucunuz kaba kuvvet saldırganlarına karşı daha savunmasızdır. Farklı şifre kombinasyonları uygulayarak sisteminize girebilirler. Fail2ban, saldırganların sunucunuza kaba kuvvet saldırıları ve DDoS saldırıları dahil olmak üzere farklı türde saldırılar başlatmasını kısıtlayabilen bir araçtır. Bu eğitimde, sunucumuzu farklı saldırılardan korumak için Fail2ban'ı nasıl kullanabileceğimizi tartıştık. Fail2ban'ı apache, nginx, vb. gibi diğer hizmetleri korumak için de kullanabiliriz.

Linux'ta oyun oturumunuzu nasıl yakalar ve yayınlarsınız?
Geçmişte oyun oynamak sadece bir hobi olarak görülüyordu, ancak zamanla oyun endüstrisi teknoloji ve oyuncu sayısı açısından büyük bir büyüme gördü. Ç...
El Takibiyle Oynanabilecek En İyi Oyunlar
Oculus Quest kısa süre önce, kontrolörler olmadan elle takip etme harika fikrini tanıttı. Resmi olarak veya SideQuest aracılığıyla destek sağlayan sür...
Tam Ekran Linux Uygulamalarında ve Oyunlarında OSD Yerleşimi Nasıl Gösterilir
Tam ekran oyunlar oynamak veya uygulamaları dikkat dağıtmayan tam ekran modunda kullanmak, bir panelde veya görev çubuğunda görünen ilgili sistem bilg...