A Snort IDS telepítésével és beállításával megvédheti hálózatát a behatolóktól és a kéretlen támadásoktól.
Ha komolyan gondolja a hálózat biztonságát, az IPS- vagy IDS-megoldás telepítése elengedhetetlen a hálózat peremének megerõsítéséhez és a potenciálisan nemkívánatos hálózati forgalom eltereléséhez.
A Snort egy ilyen híres, ingyenes személyes használatra és nyílt forráskódú IPS/IDS megoldás. Tanuljuk meg, hogyan telepítheti és állíthatja be a Snortot Linux rendszeren, hogy megvédje hálózatát a kibertámadásoktól.
Mi az a Snort?
A Snort nyílt forráskódú Hálózati behatolás-észlelő és -megelőzési rendszer (NIDS/IPS) szoftver, amely, ahogy a neve is sugallja, segít megvédeni a hálózat peremét azáltal, hogy olyan szabályokat és szűrőket kényszerít ki, amelyek észlelik és eldobják a hálózatba befecskendezett potenciálisan rosszindulatú csomagokat.
A Snort segítségével fejlett hálózati forgalomnaplózást, csomagszimulálást és -elemzést végezhet, valamint egy erős behatolás-megelőzési rendszert, amely megvédi hálózatát a nem kívánt és potenciálisan rosszindulatú anyagoktól forgalom.
A Snort telepítésének előfeltételei
A Snort telepítése előtt el kell végezni néhány előzetes beállítást. Ez többnyire magában foglalja a rendszer frissítését és frissítését, valamint a Snort által a megfelelő működéshez szükséges függőségek telepítését.
Kezdje a rendszer frissítésével és frissítésével.
Ubuntu- és Debian-alapú Linux disztribúciók:
sudo apt update && apt upgrade -y
Az Arch Linuxon és származékain:
sudo pacman -Syu
A RHEL-en és a Fedorán:
sudo dnf frissítés
A rendszer frissítése után folytassa a Snort által igényelt függőségek telepítését. Itt vannak a futtatandó parancsok:
Ubuntu és Debian rendszeren futtassa:
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
Arch Linuxon futtassa:
sudo pacman -S gperftools hwloc hyperscan ibdaqlibdnet libmnl libpcap libunwind luajit lz4 openssl pcre pulledporkxz zlib cmake pkgconf
RHEL és Fedora esetén adja ki a következő parancsot:
sudo dnf install gcc gcc-c++ libnetfilter_queue-devel git flex bison zlib zlib-devel pcre pcredevel libdnet tcpdump libnghttp2 wget xz-devel -y
Ezenkívül manuálisan kell telepítenie a Data Acquisition Library-t, a LibDAQ for Snort-t a megfelelő működéshez, valamint a gperftools-t a build fájlok létrehozásához.
Először töltse le a LibDAQ forrásfájlokat a hivatalos webhelyről a wget paranccsal. Ezután csomagolja ki az archívumot, és lépjen be a könyvtárba a cd segítségével. A könyvtárban futtassa a bootstrap és Beállítás szkriptek, majd folytassa a fájlok előkészítésével a make-val, és telepítse a telepítse parancs.
wget https://www.snort.org/downloads/snortplus/libdaq-3.0.11.tar.gz
tar -xzvf lib*
cd lib*
./bootstrap
./Beállítás
készítsenek
sudo make install
A LibDAQ telepítése után telepítenie kell egy utolsó függőséget: a gperftools-t. Kezdje azzal, hogy megragadja a forrásfájlokat a GitHub-tárhelyből. Bontsa ki a fájlokat, lépjen be a könyvtárba, és futtassa a konfiguráló parancsfájlt. Végül telepítse a csomagot a make és make install parancsokkal.
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.10/gperftools-2.10.tar.gz
tar -xvzf gper* && cd gper
./Beállítás
készítsenek
sudo make install
A függőségek telepítése után folytathatja a Snort telepítésének következő lépéseit.
Telepítse a Snort From Source programot Linuxra
Miután az előzetes beállítás nincs útban, most a tényleges szoftver telepítésére összpontosíthat. A forrásból fogod megépíteni, ezért először fogd meg a szükséges build fájlokat.
Használja a wget parancsot, vagy töltse le manuálisan a fájlokat a hivatalos letöltési oldalról:
wget https://www.snort.org/downloads/snortplus/snort3-3.1.58.0.tar.gz
Letöltés:Horkant
Miután a build fájlokat tartalmazó archívum letöltése befejeződött, csomagolja ki a tar paranccsal:
tar -xzvf horkant*
Lépjen a kicsomagolt mappába, futtassa a konfigurációs szkriptet, használja a make parancsot a fájlok előkészítéséhez, és végül telepítse telepítse:
cd horkant*
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
cd build
készítsenek
sudo make install
A Snort most sikeresen telepítve lesz a rendszerében. Azonban még csak egy lépést kell végrehajtania. Új szoftver manuális telepítése esetén előfordulhat, hogy a telepítési könyvtár és a szükséges könyvtárak nem szerepelnek automatikusan a rendszer alapértelmezett elérési útjában. Így az alkalmazás indításakor hibákba ütközhet.
A probléma elkerülése érdekében futtassa az ldconfig parancsot. Szinkronizálja a rendszer megosztott könyvtárának gyorsítótárát az újonnan telepített könyvtárakkal és binárisokkal. Futtassa az ldconfig parancsot egy gyökérhéjból, vagy használja a sudo előtagot:
sudo ldconfig
Most már leírta a Snort telepítéséhez szükséges összes fontos lépést. A telepítés ellenőrzéséhez futtassa a Snort parancsot a -V zászlót, és látnia kell egy kimenetet, amely visszaadja a verzió nevét és egyéb adatokat.
horkant -V
Miután ellenőrizte a Snort telepítését, folytassa a következő lépésekkel, és állítsa be teljes körű IDS/IPS-ként.
A Snort kezdeti beállítása Linuxon
A Snort hatékonysága szinte teljes mértékben a vele szállított szabálykészletek minőségétől függ.
Mielőtt azonban hozzáfogna a szabályok beállításához, be kell állítania a hálózati kártyákat, hogy működjenek a Snorttal, és azt is meg kell vizsgálnia, hogy a Snort hogyan kezeli az alapértelmezett konfigurációt. Kezdje a hálózati kártyák beállításával.
Állítsa a hálózati interfészt promiszkuális módba:
sudo ip link set dev interface_name promisc on
Az ethtool használatával tiltsa le az Általános vételi offload (GRO) és a Large Receive Offload (LRO) funkciót, hogy megakadályozza a nagyobb hálózati csomagok csonkolását:
sudo ethtool -K interface_name gro off lro off
Tesztelje, hogyan teljesít a Snort az alapértelmezett konfigurációval:
snort -c /usr/local/etc/snort/snort.lua
Ennek sikeres kimeneti jelzést kell adnia arról, hogy a Snortot megfelelően telepítette és beállította a rendszerben. Mostantól trükközhet a funkcióival, és kísérletezhet különféle konfigurációkkal, hogy megtalálja a legjobb szabálykészletet a hálózat biztonságához.
Állítson be szabályokat, és érvényesítse azokat a Snort segítségével
Az alapbeállításokkal a Snort készen áll a kerület védelmére. Mint tudják, a Snortnak szabálykészletekre van szüksége a forgalom érvényességének meghatározásához. Állítsunk be néhány közösség által készített, ingyenes szabálykészletet a Snort számára.
A Snort meghatározott könyvtárakból olvassa be a szabálykészleteket és konfigurációkat. Tehát először az mkdir és a touch parancsok használatával hozzon létre néhány fontos könyvtárat a szabályok és a Snort egyéb releváns adatainak tárolására:
sudo mkdir -p /usr/local/etc/{listák, so_rules, szabályok}
sudo touch /usr/local/etc/rules/local.rules
sudo touch /usr/local/etc/lists/default.blocklist
Ezekkel a könyvtárakkal a wget paranccsal letöltheti a közösségi szabályokat a hivatalos webhelyről:
wget https://www.snort.org/downloads/community/snort3-community-rules.tar.gz
Amint a szabálykészlet letöltése befejeződött, bontsa ki, és másolja át a /usr/local/etc/rules/ Könyvtár.
tar -xvzf snort3-com*
cd snort3-com*
cp * /usr/local/etc/rules/
A Snort szabálykészlettel történő futtatásához hajtsa végre ezt a parancsot:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interface_name -s 65535 -k nincs
A parancs bontása:
- -c beállítja az alapértelmezett konfigurációs fájl elérési útját
- -R beállítja az érvényesítendő szabály elérési útját
- -én beállítja az interfészt
- -s eldobja a snaplen limitet
- -k figyelmen kívül hagyja az ellenőrző összegeket
Ennek érvényesítenie kell a konfigurációt, és érvényesítenie kell a Snort összes szabálykészletét. Amint bármilyen hálózati zavart észlel, konzolüzenettel figyelmezteti Önt.
Ha saját szabálykészletet szeretne létrehozni és érvényesíteni, többet megtudhat róla a következő helyen: hivatalos dokumentációs oldalakon.
Naplózás beállítása Snort segítségével
Alapértelmezés szerint a Snort nem ad ki semmilyen naplót. Meg kell adni a -L jelölje be a Snort naplózási módban történő elindításához, adja meg a naplófájl típusát, és -l jelölőnégyzetet a naplózási könyvtár beállításához a Snort számára, hogy kiírja a naplókat.
Íme a parancs a Snort elindításához, ha a naplózás engedélyezett:
sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -i interface_name -s 65535 -k nincs -L fájltípus -l /var/log /horkant
A parancs bontása:
- -c beállítja az alapértelmezett konfigurációs fájl elérési útját
- -R beállítja az érvényesítendő szabály elérési útját
- -én beállítja az interfészt
- -s eldobja a snaplen limitet
- -k figyelmen kívül hagyja az ellenőrző összegeket
- -L engedélyezi a naplózási módot és meghatározza a naplófájl típusát
- -l meghatározza a naplók tárolásának elérési útját
Vegye figyelembe, hogy a példa parancsban a naplózási könyvtár a következőre van állítva /var/log/snort. Bár ez ajánlott gyakorlat, szabadon tárolhatja naplóit máshol.
A Snort naplófájljait elolvashatja a megadott könyvtárból, vagy átadhatja azokat a SIEM-szoftvereknek, például a Splunknak további elemzés céljából.
Adja hozzá a Snortot rendszerindítási démonként
Bár telepítette és beállította a Snortot, meg kell győződnie arról, hogy az indításkor elindul, és háttérdémonként fut. Ha automatikus indítású rendszerszolgáltatásként adja hozzá, akkor a Snort működésben van, és megvédi a rendszert, amikor az online állapotban van.
A következőképpen adhat hozzá Snort indítódémont Linuxon:
- Kezdje egy új systemd szolgáltatásfájl létrehozásával:
érintse meg a /lib/systemd/system/snort.service elemet
- Nyissa meg a fájlt egy választott szövegszerkesztőben, és töltse fel a következő adatokkal. A zászlókat az igényeinek megfelelően módosíthatja:
[Mértékegység]
Description=Snort Daemon
After=syslog.target network.target
[Szolgáltatás]
Típus=egyszerű
ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/snort3-community.rules -s 65535 -k nincs -l /var /log/snort -D -L pcap -i ens33
[Telepítés]
WantedBy=multi-user.target - Mentse el és lépjen ki a fájlból. Ezután a szolgáltatás igénybevételével és systemctl parancsok, engedélyezze és indítsa el a szkriptet:
sudo systemctl engedélyezi a snort.service-t
sudo snort start
A Snort háttérdémonnak most már működnie kell. A szkript állapotát a következővel ellenőrizheti systemctl állapot snort parancs. Pozitív kimenetet kell visszaadnia.
Most már tudja, hogyan védheti meg hálózatát a Snort IDS segítségével
Bár az IDS megvalósítása jó gyakorlat, passzív intézkedés, mint aktív. A hálózat biztonságának javításának és garantálásának legjobb módja az, ha folyamatosan teszteli, és keresi a javítandó hibákat.
A penetrációs tesztelés nagyszerű módja a kihasználható sebezhetőségek megtalálásának és javításának.