IPS tai tunkeutumisen estojärjestelmä on verkkoturvallisuudessa käytetty tekniikka, jolla tutkitaan verkkoliikennettä ja estetään erilaisia hyökkäyksiä havaitsemalla haitalliset syötteet. Sen lisäksi, että se havaitsee vain haitalliset syötteet, kuten tunkeutumisen havaitsemisjärjestelmä, se myös estää verkkoa haittaohjelmilta. Se voi estää verkon raa'an voiman, DoS (Denial of Service), DDoS (Distributed Denial of Service), hyväksikäytöt, madot, virukset ja muut yleiset hyökkäykset. IPS sijoitetaan palomuurin taakse, ja ne voivat lähettää hälytyksiä, pudottaa haitallisia paketteja ja estää loukkaavia IP-osoitteita. Tässä opetusohjelmassa käytämme Fail2bania, joka on tunkeutumisen esto-ohjelmistopaketti, lisäämään suojaustasoa erilaisten raakojen voimien hyökkäyksiä.
Kuinka Fail2ban toimii
Fail2ban lukee lokitiedostot (esim.g. / var / log / apache / error_log) ja saa loukkaavat IP-osoitteet, jotka yrittävät liian monta epäonnistunutta salasanaa tai etsivät hyödyntämistä. Pohjimmiltaan Fail2ban päivittää palomuurisäännöt estääkseen palvelimen eri IP-osoitteet. Fail2ban tarjoaa myös suodattimia, joiden avulla voimme käyttää tiettyä palvelua (esim.g., apache, ssh jne.).
Fail2banin asentaminen
Fail2ban ei ole esiasennettu Ubuntuun, joten meidän on asennettava se ennen sen käyttöä.
[sähköposti suojattu]: ~ $ sudo apt-get update -y[sähköposti suojattu]: ~ $ sudo apt-get install fail2ban
Kun olet asentanut Fail2banin, käynnistä ja ota käyttöön Fail2ban-palvelu komentorivillä.
[sähköposti suojattu]: ~ $ sudo systemctl start fail2ban[email protected]: ~ $ sudo systemctl ota käyttöön fail2ban
Tarkista nyt fail2ban-palvelun tila varmistaaksesi, että se alkoi vai ei.
Fail2banin määrittäminen SSH: lle
Voimme määrittää Fail2banin muuttamalla tiedostoa / etc / fail2ban / jail.conf-tiedosto. Ota varmuuskopio tästä tiedostosta ennen sen muokkaamista.
[sähköposti suojattu]: ~ $ sudo cp / etc / fail2ban / jail.conf / etc / fail2ban / jail.paikallinen
Nyt määritämme Fail2banin estämään sshd-palvelua haitallisilta syötteiltä. Avaa / etc / fail2ban / jail.paikallinen tiedosto suosikkieditorissasi.
[sähköposti suojattu]: ~ $ sudo nano / etc / fail2ban / jail.paikallinenSiirry [oletuksena] -osio ja syötä määritysparametrit kohtaan [oletuksena] -osio.
[OLETUS]ignoreip = 127.0.0.1/8 192.168.18.10/32
bantime = 300
maxretry = 2
löytöaika = 600
sivuuttaa on välimerkillä erotettu cidr-peitteen, IP-osoitteen tai DNS-isännän luettelo. Lisää luotetut IP-osoitteet tähän luetteloon, ja nämä IP-osoitteet lisätään sallittujen luetteloon, eikä fail2ban estä niitä, vaikka ne tekisivätkin raa'an hyökkäyksen palvelimelle.
bantime on aika, jolloin IP estetään, kun se on suorittanut tietyn määrän epäonnistuneita yrityksiä palvelimelle.
maxretry on niiden epäonnistuneiden yritysten määrä, joiden jälkeen fail2ban estää IP: n tietyn ajan.
löytöaika on aika, jonka aikana isäntä tekee maxretry epäonnistuneet yritykset, se estetään.
Kun olet määrittänyt yllä olevat parametrit, määritämme nyt palvelun, johon yllä olevia sääntöjä sovelletaan. Oletuksena Fail2banilla on ennalta määritetyt suodattimet eri palveluille, joten meidän ei tarvitse kirjoittaa mitään erityisiä merkintöjä palveluille. Otamme käyttöön tai poistamme käytöstä vain erilaisia palveluita määritystiedostossa. Avaa / etc / fail2ban / jail.paikallinen tiedosto suosikkieditorissasi.
[sähköposti suojattu]: ~ $ sudo nano / etc / fail2ban / jail.paikallinenEtsi [sshd] -osio tiedostossa ja syötä seuraavat parametrit osioon.
[sshd]enable = true
portti = ssh
suodatin = sshd
logpath = / var / log / auth.Hirsi
maxretry = 3
käytössä määrittää, onko fail2ban suojattu tätä palvelua vai ei. Jos käytössä on totta, palvelu on suojattu; muuten sitä ei suojata.
satamaan määrittelee palvelusataman.
suodattaa viittaa määritystiedostoon, jota fail2ban käyttää. Oletusarvoisesti se käyttää tiedostoa / etc / fail2ban / filter.d / sshd.conf-tiedosto ssh-palvelua varten.
lokireitti määrittää polun lokeihin, fail2ban valvoo suojaamaan palvelua erilaisilta hyökkäyksiltä. Ssh-palvelua varten todennuslokit ovat osoitteessa / var / log / auth.loki, joten fail2ban seuraa tätä lokitiedostoa ja päivittää palomuurin havaitsemalla epäonnistuneet kirjautumisyritykset.
maxretry määrittää epäonnistuneiden kirjautumisyritysten lukumäärän, ennen kuin fail2ban estää ne.
Kun olet ottanut yllä olevan kokoonpanon käyttöön fail2ban: lle, käynnistä palvelu uudelleen tallentaaksesi muutokset.
[sähköposti suojattu]: ~ $ sudo systemctl käynnistä fail2ban uudelleen.palvelu[sähköposti suojattu]: ~ $ sudo systemctl status fail2ban.palvelu
Testaus Fail2ban
Olemme määrittäneet fail2banin suojaamaan järjestelmäämme ssh-palveluun kohdistuvilta raa'ilta hyökkäyksiltä. Nyt teemme epäonnistuneita kirjautumisyrityksiä järjestelmäämme toisesta järjestelmästä tarkistaaksemme, toimiiko fail2ban vai ei. Tehtyämme epäonnistuneita kirjautumisyrityksiä nyt, tarkistamme fail2ban-lokit.
[sähköposti suojattu]: ~ $ cat / var / log / fail2ban.Hirsi
Voimme nähdä, että epäonnistuneiden kirjautumisyritysten jälkeen fail2ban on estänyt IP: n.
Voimme saada luettelon kaikista palveluista, joille fail2ban on käytössä, seuraavalla komennolla.
[sähköposti suojattu]: ~ $ sudo fail2ban-client-tila
Yllä oleva kuva osoittaa, että olemme ottaneet fail2banin käyttöön vain SSD-palvelussa. Saamme lisätietoja sshd-palvelusta määrittämällä palvelun nimen yllä olevaan komentoon.
Fail2ban poistaa kielletyn IP-osoitteen käytöstä automaattisesti viiveen jälkeen, mutta voimme poistaa minkä tahansa IP: n milloin tahansa komentoriviltä. Tämä antaa enemmän hallintaa fail2banille. Poista seuraava IP-osoite seuraavalla komennolla.
[sähköposti suojattu]: ~ $ sudo fail2ban-client set sshd unbanip 192.168.43.35
Jos yrität poistaa IP-osoitteen, jota fail2ban ei ole estänyt, se vain kertoo sinulle, että IP: tä ei ole estetty.
[sähköposti suojattu]: ~ $ sudo fail2ban-client set sshd unbanip 192.168.43.35
Johtopäätös
Järjestelmänvalvojalle tai tietoturvainsinöörille on suuri haaste ylläpitää palvelinten turvallisuutta. Jos palvelimesi on suojattu salasanalla, ei julkisen ja yksityisen avaimen parilla, palvelimesi on alttiimpi raakavoiman hyökkääjille. He voivat päästä järjestelmään soveltamalla erilaisia salasanayhdistelmiä. Fail2ban on työkalu, joka voi estää hyökkääjiä käynnistämästä erilaisia hyökkäyksiä, mukaan lukien raa'at voimahyökkäykset ja DDoS-hyökkäykset palvelimellesi. Tässä opetusohjelmassa keskusteltiin siitä, kuinka voisimme käyttää Fail2bania palvelimemme suojaamiseen erilaisilta hyökkäyksiltä. Voimme myös käyttää Fail2bania muiden palveluiden, kuten apache, nginx, jne. Suojaamiseen.