Fail2Ban on erinomainen vaihtoehto torjua palvelimen hyökkäykset

fail2ban

Yksi yleisimmistä hyökkäysvektoreista palvelimia vastaan ​​on raa'an voiman sisäänkirjautumisyritykset. Täällä hyökkääjät yrittävät käyttää palvelinta yrittäen loputtomia käyttäjänimien ja salasanojen yhdistelmiä.

Tällaisiin ongelmiin nopein ja tehokkain ratkaisu on rajoittaa yritysten määrää ja estää pääsy käyttäjälle tai kyseiselle IP-osoitteelle tietyn ajan. On myös tärkeää tietää, että tätä varten on olemassa myös avoimen lähdekoodin sovelluksia, jotka on erityisesti suunniteltu puolustautumaan tällaista hyökkäystä vastaan.

Tämän päivän viestissä Esittelen sinulle yhden, jota kutsutaan Fail2Baniksi. Alun perin Cyril Jaquierin vuonna 2004 kehittämä Fail2Ban on tunkeutumisen esto-ohjelmistokehys, joka suojaa palvelimia raakojen voimien hyökkäyksiltä.

Tietoja Fail2banista

Fail2ban tarkistaa lokitiedostot (/ var / log / apache / error_log) ja kieltää haitallista toimintaa osoittavat IP-osoitteet, kuten liian monta viallista salasanaa ja haavoittuvuuksien etsimistä jne.

Yleisesti, Fail2Bania käytetään päivittämään palomuurisäännöt IP-osoitteiden hylkäämiseksi tietyksi ajaksi, vaikka mikä tahansa muu mielivaltainen toimenpide (esimerkiksi sähköpostin lähettäminen) voitaisiin myös määrittää.

Fail2Banin asentaminen Linuxiin

Fail2Ban löytyy useimmista tärkeimpien Linux-jakelujen arkistoista ja erityisesti palvelimissa, kuten CentOS, RHEL ja Ubuntu, käytetyimmistä.

Kirjoita Ubuntun tapauksessa seuraava asennusta varten:

sudo apt-get update && sudo apt-get install -y fail2ban

Centosin ja RHEL: n tapauksessa heidän on kirjoitettava seuraava:

yum install epel-release
yum install fail2ban fail2ban-systemd

Jos sinulla on SELinux, on tärkeää päivittää käytännöt seuraavilla tavoilla:

yum update -y selinux-policy*

Kun tämä on tehty, heidän tulee tietää etualalla, että Fail2Ban-määritystiedostot ovat tiedostossa / etc / fail2ban.

Määritys Fail2Ban on jaettu pääasiassa kahteen avaintiedostoon; nämä ovat fail2ban.conf ja jail.conf. fail2ban.confes suuremman Fail2Ban-määritystiedoston, jossa voit määrittää seuraavat asetukset:

  • Lokitaso.
  • Tiedosto, johon kirjaudutaan.
  • Prosessin kannan tiedosto.
  • Tiedosto pid.

jail.conf määrittää asetukset, kuten:

  • Puolustettavien palveluiden kokoonpano.
  • Kuinka kauan kieltää, jos heitä tulisi hyökätä.
  • Sähköpostiosoite raporttien lähettämiseen.
  • Toiminto, joka suoritetaan, kun hyökkäys havaitaan.
  • Ennalta määritetty joukko asetuksia, kuten SSH.

kokoonpano

Nyt siirrymme kokoonpano-osaan, Ensimmäinen asia, jonka aiomme tehdä, on varmuuskopio jail.conf-tiedostostamme:

cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Ja jatkamme muokkaamista nyt nanolla:

nano /etc/fail2ban/jail.local

Sisällä menemme [Oletus] -osioon, jossa voimme tehdä joitain muutoksia.

Tässä "ingoreip" -osassa ovat IP-osoitteet, jotka jätetään pois ja Fail2Ban, joka on periaatteessa palvelimen IP (paikallinen) ja muut, joiden mielestäsi pitäisi jättää huomiotta, jättää ne kokonaan huomiotta.

Sieltä eteenpäin muut IP-osoitteet, joilla on epäonnistunut pääsy, ovat kiellettyjä ja odota, kuinka monta sekuntia se on kielletty (oletuksena se on 3600 sekuntia) ja että fail2ban toimii vasta 6 epäonnistuneen yrityksen jälkeen

Yleisen kokoonpanon jälkeen ilmoitamme nyt palvelun. Fail2Banilla on jo joitain ennalta määritettyjä suodattimia erilaisille palveluille. Joten tee vain joitain mukautuksia. Tässä on esimerkki:

[ssh] enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

Kun asiaankuuluvat muutokset on tehty, sinun on vihdoin ladattava käynnissä oleva Fail2Ban uudelleen:

service fail2ban reload
systemctl enable firewalld
systemctl start firewalld

Kun tämä on tehty, tarkistetaan nopeasti, että Fail2Ban on käynnissä:

sudo fail2ban-client status

Irrota IP

Nyt kun olemme onnistuneesti kieltäneet IP-osoitteen, entä jos haluamme poistaa IP-osoitteen käytöstä? Tehdäkseen sen voimme jälleen käyttää fail2ban-clientia ja kertoa sen poistamaan tietyn IP: n, kuten alla olevassa esimerkissä.

sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx

Missä "xxx ...." Se on IP-osoite, jonka ilmoitat.


Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastuussa tiedoista: Miguel Ángel Gatón
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.