Suojaa verkkoasi tunkeilijoilta ja ei-toivotuilta hyökkäyksiltä asentamalla ja määrittämällä Snort IDS.

Jos olet tosissasi verkon turvallisuudesta, IPS- tai IDS-ratkaisun asentaminen on välttämätöntä verkon kehän vahvistamiseksi ja mahdollisesti ei-toivotun verkkoliikenteen ohjaamiseksi.

Snort on yksi sellaisista kuuluisista, henkilökohtaiseen käyttöön ilmainen ja avoimen lähdekoodin IPS/IDS-ratkaisu. Opitaan kuinka voit asentaa ja määrittää Snortin Linuxissa suojaamaan verkkoasi kyberhyökkäyksiltä.

Mikä on Snort?

Snort on avoimen lähdekoodin lähde Verkon tunkeutumisen tunnistus- ja estojärjestelmä (NIDS/IPS) -ohjelmisto, joka, kuten nimi vihjaa, auttaa turvaamaan verkkosi kehän pakottamalla sääntöjä ja suodattimia, jotka havaitsevat ja pudottavat verkkoosi syötetyt haitalliset paketit.

Snortin avulla voit suorittaa edistyneitä verkkoliikenteen kirjaamista, pakettien haistamista ja analysointia sekä perustaa vahvan tunkeutumisen estojärjestelmän, joka suojaa verkkoasi ei-toivotuilta ja mahdollisesti haitallisilta vaikutuksilta liikennettä.

instagram viewer

Snortin asennuksen edellytykset

Ennen kuin asennat Snortin, sinun on suoritettava alustavia asetuksia. Tämä sisältää enimmäkseen järjestelmän päivittämisen ja päivittämisen sekä Snortin tarvitsemien riippuvuuksien asentamisen toimiakseen kunnolla.

Aloita päivittämällä ja päivittämällä järjestelmäsi.

Ubuntussa ja Debian-pohjaiset Linux-distrot:

sudo apt päivitys && apt päivitys -y

Arch Linuxissa ja sen johdannaisissa:

sudo pacman -Syu

RHEL: ssä ja Fedorassa:

sudo dnf -päivitys

Kun järjestelmäsi on päivitetty, jatka Snortin edellyttämien riippuvuuksien asentamista. Tässä ovat komennot, jotka sinun on suoritettava:

Suorita Ubuntussa ja Debianissa:

sudo apt install -y build-essential autotools-dev libdumbnet-dev libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev cmake liblzma-dev openssl libssl-dev cpputest libsqlite3-dev libtool uuid-dev git autoconf bison flex libcmocka-dev libnetfilter-queue-dev libunwind-dev libmnl-dev ethtool libjemalloc-dev libpcre++-dev

Suorita Arch Linuxissa:

sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pulledporkxz zlib cmake pkgconf

Anna seuraava komento RHEL: lle ja Fedoralle:

sudo dnf install gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y

Lisäksi sinun on myös asennettava manuaalisesti Data Acquisition Library, LibDAQ for Snort toimimaan kunnolla ja myös gperftools luodaksesi koontitiedostot.

Lataa ensin LibDAQ-lähdetiedostot viralliselta verkkosivustolta wget-komennolla. Pura sitten arkisto ja siirry hakemistoon cd: llä. Suorita hakemiston sisällä bootstrap ja konfiguroida skriptit ja valmistele sitten tiedostoja make-merkillä ja asenna se komennolla tee asennus komento.

wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
tar -xzvf lib*
cd lib*
./bootstrap
./configure
tehdä
sudo tee asennus

Kun LibDAQ on asennettu, sinun on asennettava viimeinen riippuvuus: gperftools. Aloita nappaamalla lähdetiedostot GitHub-reposta. Pura tiedostot, siirry hakemistoon ja suorita määrityskomentosarja. Lopuksi asenna paketti käyttämällä make and make install -komentoja.

wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
tar -xvzf gper* && cd gper
./configure
tehdä
sudo tee asennus

Kun nämä riippuvuudet on asennettu, voit siirtyä Snortin asennuksen seuraaviin vaiheisiin.

Asenna Snort From Source Linuxiin

Kun alustava asennus on poissa tieltä, voit nyt keskittyä varsinaisen ohjelmiston asentamiseen. Rakennat sen lähteestä, joten hanki ensin tarvittavat koontitiedostot.

Käytä wget-komentoa tai lataa tiedostot manuaalisesti viralliselta lataussivulta:

wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz

Ladata:Snort

Kun koontitiedostot sisältävä arkisto on latautunut, pura se tar-komennolla:

tar -xzvf snort*

Siirry purettuun kansioon, suorita asetusskripti, käytä make-komentoa tiedostojen valmisteluun ja asenna ne lopuksi tee asennus:

cd snort*
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
cd rakentaminen
tehdä
sudo tee asennus

Snort asennetaan nyt onnistuneesti järjestelmääsi. Sinun on kuitenkin suoritettava vielä yksi vaihe. Kun uusi ohjelmisto asennetaan manuaalisesti, asennushakemisto ja tarvittavat kirjastot eivät välttämättä sisälly automaattisesti järjestelmän oletuspolkuun. Joten saatat kohdata virheitä käynnistäessäsi sovellusta.

Tämän ongelman välttämiseksi sinun on suoritettava ldconfig-komento. Se synkronoi järjestelmän jaetun kirjaston välimuistin äskettäin asennettujen kirjastojen ja binäärien kanssa. Suorita ldconfig-komento pääkansiosta tai käytä sudo-etuliitettä:

sudo ldconfig

Nyt olet käsitellyt kaikki Snortin asentamiseen tarvittavat tärkeät vaiheet. Tarkista asennus suorittamalla Snort-komento -V lippu, ja sinun pitäisi nähdä tulos, joka palauttaa version nimen ja muut tiedot.

haukkua -V

Kun olet vahvistanut Snort-asennuksen, siirry seuraaviin vaiheisiin määrittääksesi sen täysimittaiseksi IDS/IPS: ksi.

Snortin alkuasetukset Linuxissa

Snortin tehokkuus riippuu lähes täysin sen mukana toimitettujen sääntöjoukkojen laadusta.

Ennen kuin aloitat sääntöjen määrittämisen, sinun on kuitenkin määritettävä verkkokortit toimimaan Snortin kanssa ja sinun on myös testattava, kuinka Snort käsittelee oletusasetuksia. Aloita määrittämällä verkkokortit.

Aseta verkkoliitäntä promiscuous-tilaan:

sudo ip link set dev interface_name promisc päällä

Poista käytöstä ethtoolin avulla Generic Receive Offload (GRO) ja Large Receive Offload (LRO) estääksesi suurempien verkkopakettien katkaisemisen:

sudo ethtool -K käyttöliittymän_nimi gro off lro off

Testaa, kuinka Snort toimii oletuskokoonpanolla:

snort -c /usr/local/etc/snort/snort.lua

Tämän pitäisi palauttaa onnistunut lähtösignaali, että olet asentanut ja määrittänyt Snortin oikein järjestelmääsi. Nyt voit muokata sen ominaisuuksia ja kokeilla erilaisia ​​kokoonpanoja löytääksesi parhaan sääntöjoukon verkkosi suojaamiseen.

Aseta säännöt ja pane ne täytäntöön Snortilla

Kun perusasetukset on tehty, Snort on nyt valmis puolustamaan kehääsi. Kuten tiedät, Snort tarvitsee sääntöjoukkoja määrittääkseen liikenteen pätevyyden. Perustetaan muutama yhteisön tekemä ilmainen sääntöjoukko Snortille.

Snort lukee sääntöjoukkoja ja kokoonpanoja tietyistä hakemistoista. Luo siis ensin mkdir- ja touch-komentojen avulla muutama tärkeä hakemisto sääntöjen ja muiden Snortin oleellisten tietojen tallentamiseen:

sudo mkdir -p /usr/local/etc/{lists, so_rules, rules} 
sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist

Kun nämä hakemistot on luotu, voit ladata yhteisön säännöt viralliselta verkkosivustolta wget-komennolla:

wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz

Kun sääntöjoukko on ladattu, pura se ja kopioi se tiedostoon /usr/local/etc/rules/ hakemistosta.

tar -xvzf snort3-com*
cd snort3-com*
cp * /usr/local/etc/rules/

Suorita Snort sääntöjoukolla suorittamalla tämä komento:

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i käyttöliittymän_nimi -s 65535 -k ei mitään

Komennon erittely:

  • -c asettaa polun oletusasetustiedostoon
  • -R määrittää pakotettavan säännön polun
  • -i asettaa käyttöliittymän
  • -s hylkää snaplen-rajan
  • -k jättää huomioimatta tarkistussummat

Tämän pitäisi vahvistaa määritykset ja pakottaa kaikki Snortin sääntöjoukot. Heti kun se havaitsee verkkohäiriön, se hälyttää sinulle konsoliviestillä.

Jos haluat luoda ja ottaa käyttöön oman sääntöjoukkosi, saat lisätietoja siitä osoitteesta viralliset asiakirjasivut.

Lokitietojen määrittäminen Snortin avulla

Oletuksena Snort ei tulosta lokeja. Sinun on määritettävä kanssa -L lippu käynnistääksesi Snortin lokitilassa, määritä lokitiedostotyyppi ja -l lippu asettaaksesi lokihakemiston, jossa Snort tyhjentää lokit.

Tässä on komento käynnistää Snort kirjauksen ollessa käytössä:

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i käyttöliittymän_nimi -s 65535 -k ei mitään -L tiedostotyyppi -l /var/log /huuskaa

Komennon erittely:

  • -c asettaa polun oletusasetustiedostoon
  • -R määrittää pakotettavan säännön polun
  • -i asettaa käyttöliittymän
  • -s hylkää snaplen-rajan
  • -k jättää huomioimatta tarkistussummat
  • -L ottaa käyttöön lokitilan ja määrittää lokitiedostotyypin
  • -l määrittää polun lokien tallentamiseen

Huomaa, että esimerkkikomennossa lokihakemisto on asetettu arvoon /var/log/snort. Vaikka tämä on suositeltu käytäntö, voit vapaasti tallentaa lokit muualle.

Voit lukea Snortin lokitiedostoja määrittämästäsi hakemistosta tai siirtää ne SIEM-ohjelmistoon, kuten Splunk, lisäanalyysiä varten.

Lisää Snort System Startup Daemoniksi

Vaikka olet asentanut ja määrittänyt Snortin, sinun on varmistettava, että se alkaa toimia käynnistyksen yhteydessä ja toimii taustadaemonina. Sen lisääminen automaattisesti käynnistyvän järjestelmäpalveluna varmistaa, että Snort on toiminnassa ja suojaa järjestelmääsi aina, kun se on online-tilassa.

Näin lisäät Snort-käynnistysdaemonin Linuxiin:

  1. Aloita luomalla uusi systemd-palvelutiedosto:
    kosketa /lib/systemd/system/snort.service
  2. Avaa tiedosto valitsemallasi tekstieditorilla ja täytä se seuraavilla tiedoilla. Voit muokata lippuja tarpeidesi mukaan:
    [Yksikkö]
    Kuvaus=Snort Daemon
    After=syslog.target network.target
    [Palvelu]
    Tyyppi = yksinkertainen
    ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k none -l /var /log/snort -D -L pcap -i ens33
    [Asentaa]
    WantedBy=multi-user.target
  3. Tallenna ja poistu tiedostosta. Sitten käyttämällä palvelua ja systemctl-komennot, ota käyttöön ja käynnistä komentosarja:
    sudo systemctl ota käyttöön snort.service
    sudo snort start

Snort-taustademonin pitäisi nyt olla toiminnassa. Voit tarkistaa skriptin tilan käyttämällä systemctl status snort komento. Sen pitäisi palauttaa positiivinen tulos.

Nyt tiedät kuinka suojata verkkoasi Snort IDS: llä

Vaikka IDS: n käyttöönotto on hyvä käytäntö, se on passiivinen toimenpide kuin aktiivinen. Paras tapa parantaa ja taata verkkosi tietoturva on testata sitä jatkuvasti ja etsiä korjattavia puutteita.

Läpäisytestaus on loistava tapa löytää hyödynnettävissä olevia haavoittuvuuksia ja korjata niitä.