Aizsargājiet savu tīklu no iebrucējiem un nevēlamiem uzbrukumiem, instalējot un iestatot Snort IDS.
Ja jūs nopietni domājat par tīkla drošību, IPS vai IDS risinājuma instalēšana ir obligāta, lai nostiprinātu tīkla perimetru un novirzītu potenciāli nevēlamu tīkla trafiku.
Snort ir viens no šādiem slaveniem, personīgai lietošanai bezmaksas un atvērtā koda IPS/IDS risinājumiem. Uzzināsim, kā instalēt un iestatīt Snort operētājsistēmā Linux, lai aizsargātu savu tīklu no kiberuzbrukumiem.
Kas ir Snort?
Snort ir atvērtā koda programma Tīkla ielaušanās atklāšanas un novēršanas sistēma (NIDS/IPS) programmatūra, kas, kā norāda nosaukums, palīdz nodrošināt tīkla perimetru, ieviešot noteikumus un filtrus, kas atklāj un nomet potenciāli ļaunprātīgas paketes, kas ievadītas jūsu tīklā.
Izmantojot Snort, jūs varēsiet veikt uzlabotu tīkla trafika reģistrēšanu, pakešu sniffing un analīzi, kā arī iestatīt izveidot spēcīgu ielaušanās novēršanas sistēmu, kas aizsargā jūsu tīklu no nevēlamas un potenciāli ļaunprātīgas satiksme.
Priekšnosacījumi Snort instalēšanai
Pirms Snort instalēšanas ir jāveic daži sākotnējie iestatījumi. Tas galvenokārt ietver sistēmas atjaunināšanu un jaunināšanu, kā arī to atkarību instalēšanu, kas nepieciešamas, lai Snort darbotos pareizi.
Sāciet ar sistēmas atjaunināšanu un jaunināšanu.
Uz Ubuntu- un Linux distribūcijas, kuru pamatā ir Debian:
sudo apt update && apt upgrade -y
Programmā Arch Linux un tā atvasinājumi:
sudo pacman -Syu
RHEL un Fedora:
sudo dnf jauninājums
Kad sistēma ir jaunināta, turpiniet instalēt Snort pieprasītās atkarības. Šeit ir komandas, kas jums jāpalaiž:
Ubuntu un Debian palaidiet:
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
Operētājsistēmā Arch Linux palaidiet:
sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pulledporkxz zlib cmake pkgconf
RHEL un Fedora izsniedziet šādu komandu:
sudo dnf instalēt gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y
Turklāt jums ir arī manuāli jāinstalē Data Acquisition Library, LibDAQ for Snort, lai tā darbotos pareizi, un arī gperftools, lai ģenerētu būvfailus.
Vispirms lejupielādējiet LibDAQ avota failus no oficiālās vietnes izmantojot komandu wget. Pēc tam izņemiet arhīvu un pārvietojieties uz direktoriju, izmantojot CD. Direktorijā palaidiet bootstrap un konfigurēt skriptus pēc tam turpiniet, lai sagatavotu failus ar marku un instalētu to ar veikt instalēšanu komandu.
wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
tar -xzvf lib*
cd lib*
./bootstrap
./configure
veidot
sudo make install
Kad ir instalēts LibDAQ, jums jāinstalē pēdējā atkarība: gperftools. Sāciet ar avota failu satveršanu no GitHub repo. Izvelciet failus, pārvietojieties uz direktoriju un palaidiet konfigurācijas skriptu. Visbeidzot, instalējiet pakotni, izmantojot komandas make un make install.
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
tar -xvzf gper* && cd gper
./configure
veidot
sudo make install
Kad šīs atkarības ir instalētas, varat pāriet uz nākamajām darbībām, lai instalētu Snort.
Instalējiet Snort From Source operētājsistēmā Linux
Kad sākotnējā iestatīšana nav pabeigta, tagad varat koncentrēties uz faktiskās programmatūras instalēšanu. Jūs to veidosit no avota, tāpēc vispirms satveriet nepieciešamos būvēšanas failus.
Izmantojiet komandu wget vai lejupielādējiet failus manuāli no oficiālās lejupielādes lapas:
wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
Lejupielādēt:Šņāc
Kad arhīvs, kurā ir būvēšanas faili, ir lejupielādēts, izņemiet to, izmantojot tar komandu:
darva -xzvf šņāc*
Pārvietojieties uz izvilkto mapi, palaidiet konfigurācijas skriptu, izmantojiet komandu make, lai sagatavotu failus un visbeidzot instalējiet tos ar veikt instalēšanu:
cd šņākt*
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
CD uzbūve
veidot
sudo make install
Snort tagad tiks veiksmīgi instalēts jūsu sistēmā. Tomēr jums ir jāveic vēl tikai viens solis. Ja jauna programmatūra tiek manuāli instalēta, instalācijas direktorijs un nepieciešamās bibliotēkas var netikt automātiski iekļautas sistēmas noklusējuma ceļā. Tāpēc, startējot lietojumprogrammu, var rasties kļūdas.
Lai izvairītos no šīs problēmas, jums ir jāpalaiž komanda ldconfig. Tas sinhronizēs sistēmas koplietotās bibliotēkas kešatmiņu ar tikko instalētajām bibliotēkām un binārajiem failiem. Palaidiet komandu ldconfig no saknes čaulas vai izmantojiet sudo prefiksu:
sudo ldconfig
Tagad esat veicis visas svarīgās darbības, kas jāveic, lai instalētu Snort. Lai pārbaudītu instalēšanu, palaidiet komandu Snort ar -V karodziņu, un jums vajadzētu redzēt izvadi, kas atgriež versijas nosaukumu un citus datus.
šņākt -V
Kad esat pārbaudījis Snort instalāciju, pārejiet pie nākamajām darbībām, lai iestatītu to kā pilnvērtīgu IDS/IPS.
Sākotnējā Snort konfigurācija operētājsistēmā Linux
Snort efektivitāte gandrīz pilnībā ir atkarīga no tā piegādāto noteikumu kopu kvalitātes.
Tomēr pirms kārtulu iestatīšanas ir jākonfigurē tīkla kartes, lai tās darbotos ar Snort, kā arī jāpārbauda, kā Snort apstrādā noklusējuma konfigurāciju. Sāciet ar tīkla karšu konfigurēšanu.
Iestatiet tīkla interfeisu izlaidības režīmā:
sudo ip saišu komplekts dev interface_name promisc ieslēgts
Izmantojot ethtool, atspējojiet vispārējās saņemšanas izslēgšanu (GRO) un Large Receive Offload (LRO), lai novērstu lielāku tīkla pakešu saīsināšanu:
sudo ethtool -K interfeisa_nosaukums gro off lro off
Pārbaudiet, kā Snort darbojas ar noklusējuma konfigurāciju:
snort -c /usr/local/etc/snort/snort.lua
Tam vajadzētu atgriezt veiksmīgu izejas signālu, ka esat pareizi instalējis un iestatījis Snort savā sistēmā. Tagad varat lāpīt ar tā funkcijām un eksperimentēt ar dažādām konfigurācijām, lai atrastu labāko noteikumu kopu sava tīkla drošībai.
Iestatiet noteikumus un izpildiet tos, izmantojot Snort
Izmantojot pamata iestatījumus, Snort tagad ir gatavs aizsargāt jūsu perimetru. Kā jūs zināt, Snort ir nepieciešamas kārtulu kopas, lai noteiktu trafika derīgumu. Iestatiet dažas kopienas bezmaksas kārtulu kopas Snort.
Snort nolasa noteikumu kopas un konfigurācijas no konkrētiem direktorijiem. Tāpēc vispirms, izmantojot komandas mkdir un touch, izveidojiet dažus svarīgus direktorijus, lai saglabātu noteikumus un citus svarīgus Snort datus:
sudo mkdir -p /usr/local/etc/{lists, so_rules, noteikumi}
sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist
Kad šie direktoriji ir izveidoti, varat lejupielādēt kopienas noteikumu kopu no oficiālās vietnes, izmantojot komandu wget:
wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz
Kad kārtulu kopas lejupielāde ir pabeigta, izņemiet to un kopējiet to uz /usr/local/etc/rules/ direktoriju.
tar -xvzf snort3-com*
cd snort3-com*
cp * /usr/local/etc/rules/
Lai palaistu Snort ar noteikumu kopu, izpildiet šo komandu:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interfeisa_nosaukums -s 65535 -k nav
Komandas sadalījums:
- -c iestata ceļu uz noklusējuma konfigurācijas failu
- -R iestata ceļu uz izpildāmo kārtulu
- -i iestata saskarni
- -s izmet snaplen limitu
- -k ignorē kontrolsummas
Tam vajadzētu apstiprināt konfigurāciju un ieviest visas Snort noteikumu kopas. Tiklīdz tas uztver jebkādus tīkla traucējumus, tas jūs brīdinās ar konsoles ziņojumu.
Ja vēlaties izveidot un ieviest savu kārtulu kopu, varat uzzināt vairāk par to vietnē oficiālās dokumentācijas lapas.
Iestatiet reģistrēšanu, izmantojot Snort
Pēc noklusējuma Snort neizvada nevienu žurnālu. Jums jānorāda ar -L karodziņš, lai sāktu Snort reģistrēšanas režīmā, definējiet žurnālfaila veidu un -l karodziņš, lai iestatītu reģistrēšanas direktoriju, lai Snort izmestu žurnālus.
Šeit ir komanda, lai palaistu Snort ar iespējotu reģistrēšanu:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interfeisa_nosaukums -s 65535 -k nav -L faila_tips -l /var/log /šņāc
Komandas sadalījums:
- -c iestata ceļu uz noklusējuma konfigurācijas failu
- -R iestata ceļu uz izpildāmo kārtulu
- -i iestata saskarni
- -s izmet snaplen limitu
- -k ignorē kontrolsummas
- -L iespējo reģistrēšanas režīmu un definē žurnālfaila tipu
- -l nosaka ceļu uz žurnālu glabāšanu
Ņemiet vērā, ka piemēra komandā reģistrēšanas direktorijs ir iestatīts uz /var/log/snort. Lai gan šī ir ieteicama prakse, žurnālus varat glabāt citur.
Varat lasīt žurnāla failus no Snort no definētā direktorija vai nodot tos SIEM programmatūrā, piemēram, Splunk, lai veiktu turpmāku analīzi.
Pievienojiet Snort kā sistēmas startēšanas dēmonu
Lai gan esat instalējis un iestatījis Snort, jums ir jāpārliecinās, vai tas sāk darboties startēšanas laikā un darbojas kā fona dēmons. Pievienojot to kā automātiskās palaišanas sistēmas pakalpojumu, tiks nodrošināts, ka Snort darbojas un aizsargās jūsu sistēmu vienmēr, kad tā ir tiešsaistē.
Lūk, kā pievienot Snort startēšanas dēmonu operētājsistēmā Linux:
- Sāciet, izveidojot jaunu systemd pakalpojuma failu:
pieskarieties /lib/systemd/system/snort.service
- Atveriet failu izvēlētajā teksta redaktorā un aizpildiet to ar šādiem datiem. Jūs varat modificēt karogus atbilstoši savām vajadzībām:
[Vienība]
Apraksts=Snort Daemon
After=syslog.target network.target
[Apkalpošana]
Tips = vienkāršs
ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k nav -l /var /log/snort -D -L pcap -i ens33
[Uzstādīt]
WantedBy=multi-user.target - Saglabājiet un izejiet no faila. Pēc tam, izmantojot pakalpojumu un systemctl komandas, iespējojiet un sāciet skriptu:
sudo systemctl iespējot snort.service
sudo snort start
Snort fona dēmonam tagad vajadzētu darboties. Varat pārbaudīt skripta statusu, izmantojot systemctl statuss snort komandu. Tam vajadzētu atgriezt pozitīvu rezultātu.
Tagad jūs zināt, kā aizsargāt savu tīklu, izmantojot Snort IDS
Lai gan IDS ieviešana ir laba prakse, tas ir pasīvs pasākums, nevis aktīvs. Labākais veids, kā uzlabot un garantēt tīkla drošību, ir nepārtraukti to pārbaudīt un meklēt trūkumus, ko novērst.
Iespiešanās testēšana ir lielisks veids, kā atrast izmantojamās ievainojamības un tās labot.