Jak skonfigurować IPS w celu ochrony przed różnymi atakami

Jak skonfigurować IPS w celu ochrony przed różnymi atakami

IPS lub system zapobiegania włamaniu to technologia wykorzystywana w bezpieczeństwie sieciowym do badania ruchu sieciowego i zapobiegania różnym atakom poprzez wykrywanie złośliwych danych wejściowych. Oprócz wykrywania złośliwych nakładów, jak robi to system wykrywania włamań, zapobiega to również sieciom złośliwych ataków. Może uniemożliwić sieć przed brutalną siłą, DOS (odmowa usługi), DDOS (rozproszona usługa odmowy), exploits, robakami, wirusami i innymi popularnymi atakami. IPS są umieszczane tuż za zaporą ogniową i mogą wysyłać alarmy, upuszczać złośliwe pakiety i blokować obrażające adresy IP. W tym samouczku użyjemy Fail2ban, który jest pakietem oprogramowania zapobiegającego włamaniu, aby dodać warstwę bezpieczeństwa przeciwko innym atakom brutalnej siły.

Jak działa Fail2ban

Fail2ban odczytuje pliki dziennika (e.G. /var/log/apache/error_log) i dostaje obrażające IPS, które próbują zbyt wielu nieudanych haseł lub szukają exploitów. Zasadniczo Fail2ban aktualizuje reguły zapory, aby zablokować różne adresy IP na serwerze. Fail2ban zapewnia również filtry, które możemy użyć dla określonej usługi (e.G., Apache, SSH itp.).

Instalowanie Fail2ban

Fail2ban nie jest wstępnie zainstalowany na Ubuntu, więc przed użyciem musimy go zainstalować.

Ubuntu@ubuntu: ~ $ sudo apt -get aktualizacja -y
Ubuntu@ubuntu: ~ $ sudo apt-get instal instaluj fail2ban

Po zainstalowaniu Fail2ban uruchom i włącz usługę Fai2ban za pomocą wiersza poleceń.

Ubuntu@ubuntu: ~ $ sudo systemCtl start nie ruszanie2ban
Ubuntu@ubuntu: ~ $ sudo systemctl włącz fail2ban


Teraz sprawdź status usługi Fail2ban, aby potwierdzić, czy to się zaczęło, czy nie.

Ubuntu@ubuntu: ~ $ sudo Systemctl Status Fail2ban

Konfigurowanie Fail2ban dla SSH

Możemy skonfigurować Fail2ban poprzez modyfikację/etc/fail2ban/więzienie.plik CONF. Przed zmodyfikowaniem weź kopię zapasową tego pliku.

Ubuntu@ubuntu: ~ $ sudo cp/etc/fail2ban/więzienie.conf/etc/fail2ban/więzienie.lokalny

Teraz skonfigurujemy Fail2ban, aby zapobiec usłudze SSHD przed złośliwymi wejściami. Otwarte/etc/fail2ban/więzienie.Plik lokalny w swoim ulubionym edytorze.

Ubuntu@ubuntu: ~ $ sudo nano/etc/fail2ban/więzienie.lokalny

Idź do [domyślny] Sekcja i wprowadź parametry konfiguracyjne pod [domyślny] Sekcja.

[DOMYŚLNY]
Ignorowanie = 127.0.0.1/8 192.168.18.10/32
Bantime = 300
Maxretry = 2
FindTime = 600

Ignoruj to lista maski CIDR, adresu IP lub hosta DNS oddzielonego znakiem kosmicznym. Dodaj swoje zaufane IP do tej listy, a te IPS będą białe i nie będą zablokowane przez Fail2ban, nawet jeśli wykonają atak brutalnej siły na serwerze.

Bantime jest czas, w którym IP zostanie zablokowany po podjęciu określonej liczby nieudanych prób serwera.

Maxretry to liczba maksymalnych nieudanych prób, po czym IP jest blokowany przez Fail2ban przez określony czas.

znaleźć czas to ilość czasu, podczas którego host robi Maxretry nieudane próby, zostaną zablokowane.

Po skonfigurowaniu powyższych parametrów skonfigurujemy usługę, w której mają zastosowanie powyższe reguły. Domyślnie Fail2ban ma wstępnie zdefiniowane filtry dla różnych usług, więc nie musimy wprowadzać żadnych konkretnych wpisów na usługi. Włączamy lub wyłączamy różne usługi w pliku konfiguracyjnym. Otwarte/etc/fail2ban/więzienie.Plik lokalny w swoim ulubionym edytorze.

Ubuntu@ubuntu: ~ $ sudo nano/etc/fail2ban/więzienie.lokalny

Znaleźć [Sshd] sekcja w pliku i wprowadź następujące parametry w sekcji.

[sshd]
enable = true
port = ssh
filtr = sshd
logpath =/var/log/auth.dziennik
Maxretry = 3

włączony Określa, czy usługa ta jest chroniona przez Fail2ban, czy nie. Jeśli włączone jest prawdą, usługa jest chroniona; W przeciwnym razie nie jest chroniony.

Port definiuje port serwisowy.

filtr odnosi się do pliku konfiguracyjnego Fail2ban. Domyślnie będzie używać/etc/fail2ban/filtr.D/sshd.plik Conf for SSH Service.

logpath definiuje ścieżkę do dzienników, Fail2ban będzie monitorować ochronę usług przed różnymi atakami. W przypadku usługi SSH dzienniki uwierzytelniania można znaleźć w/var/log/auth.Log, więc Fail2ban będzie monitorować ten plik dziennika i zaktualizuje zaporę ogniową, wykrywając nieudane próby logowania.

Maxretry definiuje liczbę nieudanych prób logowania przed zablokowaniem przez Fail2ban.

Po zastosowaniu powyższej konfiguracji dla Fail2ban, uruchom ponownie usługę, aby zapisać zmiany.

Ubuntu@ubuntu: ~ $ sudo systemctl restart fail2ban.praca
Ubuntu@ubuntu: ~ $ sudo Systemctl Status Fail2ban.praca

Testowanie Fail2ban

Skonfigurowaliśmy Fail2ban, aby chronić nasz system przed atakami brutalnej siły na SSH Service. Teraz podejmiemy nieudane próby logowania w naszym systemie z innego systemu, aby sprawdzić, czy Fail2ban działa, czy nie. Po podjęciu nieudanych prób logowania teraz sprawdzimy logi Fail2ban.

Ubuntu@ubuntu: ~ $ cat/var/log/fail2ban.dziennik

Widzimy, że po nieudanych próbach logowania IP został zablokowany przez Fail2ban.

Możemy uzyskać listę wszystkich usług, dla których włącza się Fail2ban, używając następującego polecenia.

Ubuntu@ubuntu: ~ $ sudo fail2ban-client status


Powyższy rysunek pokazuje, że włączyliśmy Upad2ban tylko dla usługi SSHD. Możemy uzyskać dalsze informacje o usłudze SSHD, określając nazwę usługi w powyższym poleceniu.

Ubuntu@ubuntu: ~ $ sudo fail2ban-client status sshd

Fail2ban automatycznie odbieraj zakazany adres IP po Bantime, ale możemy odłączyć dowolny adres IP w dowolnym momencie za pomocą wiersza poleceń. To zapewni większą kontrolę nad Fail2ban. Użyj następującego polecenia, aby odłączyć adres IP.

Ubuntu@ubuntu: ~ $ sudo fail2ban-client Sets Sshd Unbanip 192.168.43.35

Jeśli spróbujesz oderwać adres IP, który nie jest zablokowany przez Fail2ban, po prostu powie ci, że IP nie jest zablokowany.

Ubuntu@ubuntu: ~ $ sudo fail2ban-client Sets Sshd Unbanip 192.168.43.35

Wniosek

Dla administratora systemu lub inżyniera bezpieczeństwa utrzymanie bezpieczeństwa serwerów jest dużym wyzwaniem. Jeśli twój serwer jest chroniony przez hasło, a nie pary klucza publicznego i prywatnego, wówczas serwer jest bardziej podatny na atakujących Brute Force. Mogą dostać się do twojego systemu, stosując różne kombinacje haseł. Fail2ban to narzędzie, które może ograniczyć atakujących do uruchamiania różnych rodzajów ataków, w tym ataków brutalnych siły i ataków DDOS na serwerze. W tym samouczka. Możemy również użyć Fail2ban do ochrony innych usług, takich jak Apache, Nginx itp.