Az "Integrációs beállítások" menü lehetőséget ad arra, hogy kiválasszuk, mely hálózati protokollokat szeretnénk bevonni vagy kizárni. Fontos megjegyezni, hogy ezen a menüponton kapcsolhatjuk be a "Monitor Processes" gombot, amely lehetővé teszi a különböző protokollok számára, hogy hozzáadjanak folyamatneveket minden egyes hálózati eseményhez. Ez rendkívül hasznos, mivel lehetővé teszi a gyanús hálózati forgalmi naplók összekapcsolását azzal a host-tal, amely a forgalmat generálta. A beállítások között szabadon választhatunk, hogy hány protokollt és folyamatnév beállítást aktiváljunk, bár ajánlott mindet bekapcsolni. Ezzel láthatjuk minden egyes hálózati kapcsolat mögött a host folyamatot, amely a kapcsolatot létrehozta – igazi kincs a forenzikus nyomozások számára. Ezen kívül a szolgáltatásokhoz tartozó portok listáját is hozzáadhatjuk, ha nem szabványos portokon futnak szolgáltatásaink, például egy webkiszolgáló a 12345-ös porton.
Miután végeztünk a beállítások módosításával, lépjen a "Step 2"-höz, majd kattintson az "Existing hosts" fülre, és válassza az "Agent policy 1"-et, hogy az első Elastic virtuális gépen futó ügynök megkapja az új integrációt. Kattintson a "Save and continue" gombra, majd erősítse meg a változtatásokat a megerősítő ablakban. Ekkor egy banner jelenik meg, jelezve, hogy az új politika alkalmazása folyamatban van. A Kibana "Discover" oldalán az "event.category:"network"" keresőszóval megtekintheti az új integrációnak köszönhetően gyűjtött eseményeket. Ha nem jelennek meg az események azonnal, várjon egy pillanatra. A politika változtatásai általában egy percen belül életbe lépnek.
Iptables Tűzfal Naplók
Az Iptables integráció lehetővé teszi az Iptables tűzfal naplók olvasását Linux hosztokon. Az integráció hozzáadásához térjen vissza a "Menu -> Fleet -> Agent policies -> Agent policy 1" menüpontba, majd kattintson az "Add integration" gombra. Keresés után válassza ki az Iptables lehetőséget, majd kattintson az megjelenő négyzetre. A "Settings" fülön telepítse az eszközöket, ahogyan azt a korábbi szakaszban tette, majd kattintson az "Add Iptables" gombra. Ez a modul képes távoli tűzfal naplók fogadására, de ebben a példában csak helyi fájlokat fogunk használni. Kapcsolja ki az UDP és TCP hálózati bemeneteket, de hagyja bekapcsolva a journald opciót. A politikai szövegmezőben győződjön meg róla, hogy az Agent policy 1 megkapja az új integrációt. Kattintson a "Save and continue" gombra, majd erősítse meg a változtatást a felugró ablakban. A Discover menüpontban kereshet az "event.category:"network" AND event.dataset:"iptables.log"" kifejezésre, hogy ellenőrizze, hogy a tűzfal események megfelelően megjelennek.
Integrációs Útmutatók
Biztonsági okokból célszerű, ha a politikák használata során minimális számú integrációt alkalmazunk. Minden egyes integráció további bájtokat ad hozzá az Elasticsearch-hez, ami tárolóhelyet igényel. A termelési környezetekben ez tárolási költségeket generálhat. Azonban nem minden ügynöknek szükséges ugyanazokkal a politikákkal rendelkeznie. Ha csak néhány ügynök gyűjt adatokat hálózati eszközökről vagy API-król, valószínűleg képesek lesznek integrációkat futtatni, amelyek nem befolyásolják a host gyűjtő politikákat. Az integrációk számára egyedi politikákat is létrehozhatunk. Például frissíthetünk egy hipotetikus Elastic Defend politikát (amely a biztonsági események reagálására és megelőzésére összpontosít) az egész vállalatban anélkül, hogy befolyásolnánk egy másik felhőalapú monitorozási politikát, amely kisebb számú hoston fut.
Az incidens válaszadási eljárások is nagy előnyt nyújthatnak az új politikák gyors alkalmazásában. Ha például egy szervezetet vírus támad meg, és az elemzőknek meg kell határozniuk, hogy mely belső hosztok terjeszthetik a fertőzést, a Packet Capture integráció alkalmazása egy adott irodára, divízióra vagy kampuszra rövid távon hasznos adatokat biztosíthat az elemzők számára. Amint sikerül elhárítani a fenyegetést, eltávolíthatjuk a Packet Capture integrációt.
Stand-Alone Ügynökök
Mi van, ha nem akarjuk (vagy nem tudjuk) közvetlenül csatlakoztatni egy hálózati szegmenst az Elasticsearch-hez és a flotta rendszerhez? Például, ha egy hálózat tűzfalak vagy bastionok (hardened host-ok) segítségével izolálja a hosztokat, amelyekhez nem lehet közvetlen kapcsolatot létesíteni. Az ilyen izolált hosztok valószínűleg nem tudnak közvetlenül csatlakozni az Elasticsearch klaszterhez, és először egy bastionon kell keresztül irányítani őket. Stand-alone politika létrehozásával lehetőséget biztosíthatunk az ügynök számára, hogy integrációkat használjon és adatokat gyűjtsön, még akkor is, ha nem része a flottának. Ez az ügynök adatokat küldhet a bastionon futó Logstash-ba, vagy egy helyi Kafka klaszterbe, hogy más hálózati szegmensek eszközei csatlakozhassanak az izolált hálózathoz és lekérhessék az adatokat.
A stand-alone politikák nem kínálnak olyan előnyöket, mint az automatikus politikaváltozások vagy az integrációk valós idejű frissítése. Ehelyett minden politika YAML fájlban jelenik meg, amelyet az ügynök konfigurálásához használunk. Az Elastic Basic Subscription ingyenes licenc nem engedélyezi, hogy minden egyes politikához külön-külön definiáljuk a kimeneteket, például a Logstash használatát egyedi politikákhoz. Ehelyett minden politikához az alapértelmezett kimenetet kell használni. Később manuálisan beállítjuk az új Logstash kimenetet, miután másoltuk az Agent policy 1 konfigurációt Kibana-ból.
Hogyan kinyerhetjük az adatokat rendezetlen bemenetekből?
A különböző adatfeldolgozási rendszerek hatékonysága nagymértékben függ az adatok helyes és gyors kinyerésétől, különösen akkor, ha az adatokat nem strukturált vagy rendetlen formában kapjuk meg. Az adatok kinyerésének megértéséhez és hatékony kezeléséhez elengedhetetlen, hogy ismerjük a megfelelő eszközöket és technikákat, amelyek segítenek a rendszerezésükben.
A leggyakrabban használt eszközök közé tartoznak a különböző szűrők és regex alapú megoldások, amelyek képesek felismerni és kinyerni az adatokat a bonyolult, nem struktúrált bemenetekből. A Grok egy példa arra, hogyan tudunk adatokat kinyerni a log fájlokból, amelyeket nem előre meghatározott formátumban kapunk. A Grok használata lehetővé teszi a rendszer számára, hogy előre meghatározott minták szerint olvassa be az adatokat, így gyorsabban és pontosabban dolgozhatunk.
A Grok és hasonló eszközök segítenek abban, hogy a rendszert úgy konfiguráljuk, hogy képes legyen a bemenetekben található összes releváns információt kinyerni, még akkor is, ha azok nem követik a jól ismert struktúrákat. Az ilyen típusú adatkinyerés különösen hasznos lehet naplófájlok, rendszerüzenetek vagy más, nem strukturált adatforrások esetén, amelyek valós időben történő feldolgozása szükséges.
A Data Enrichment technika szintén fontos része az adatok hatékony kezelésének. Miután a nyers adatokat kinyertük, azokat gyakran tovább kell gazdagítani, hogy teljesebb és hasznosabb képet kapjunk róluk. Az adatok gazdagítása során olyan külső információkat is hozzárendelhetünk a már meglévő adatokhoz, amelyek segítenek pontosabb analíziseket végezni. Ezzel az információk értékesebbé válhatnak, és jobban támogathatják az üzleti döntéseket.
A másik gyakran alkalmazott technika a "dissect" néven ismert, amely szintén a struktúrált adatkinyerésre összpontosít, de más megközelítéssel. A "dissect" eszköz segítségével megbízhatóan és pontosan kiválaszthatjuk a rendszeren belüli adatokat, miközben minimalizáljuk a hibákat és a téves adatfeldolgozást. A "dissect" akkor különösen hasznos, ha az adatokat sorrendben kell feldolgozni, például időbélyegzők vagy egyéb folyamatos események esetén.
A rendszeres időbélyegzőkkel kapcsolatos problémák megoldásában is segítséget nyújtanak a különböző eszközök. Az ilyen típusú pontosítások biztosítják, hogy még akkor is, ha az adatokat időnként eltérő formátumban rögzítik, azok pontosan tükrözzék a valós eseményeket, így elkerülhetők a téves következtetések.
A különböző eszközök közötti választáskor nemcsak a kinyerési módszert, hanem az adatok feldolgozásának sebességét és megbízhatóságát is figyelembe kell venni. A különféle technikák, mint például a "mutate" vagy a "translate", lehetővé teszik a nyers adat további módosítását, hogy megfeleljen az adott igényeknek.
A munkafolyamatok során az adatok azonosítása is kulcsfontosságú szerepet kap, például a CIDR szűrők használata segíthet a hálózati adatok hatékony kezelésében, míg a "translate" technika lehetőséget ad arra, hogy kulcs-érték alapú kereséseket végezzünk a bemeneti adatokon. Ezek az eszközök segítenek a nagy mennyiségű adat kezelésében, és lehetővé teszik a könnyebb feldolgozást, a hibák csökkentését és az információk gyorsabb elérését.
Egy másik fontos szempont, amit az adatok kinyerésekor figyelembe kell venni, a különböző irányok hozzáadása az adatokhoz. Az irányok vagy címkék hozzárendelése az egyes eseményekhez segít jobban megérteni azok összefüggéseit és helyét a nagyobb adatáramlásban. A címkék segíthetnek az események szűrésében és az adatok rendezésében, valamint segítenek a komplex analízisek gyorsabb elvégzésében.
Fontos, hogy minden adatot úgy dolgozzunk fel, hogy az egyes rendszerek és alkalmazások számára hasznos információkat eredményezzen. A rendszeres kimenet (output) és a bemeneti adatok közötti kapcsolat folyamatos felügyeletet igényel, mivel az adatokat gyakran szükséges továbbformálni vagy más rendszerekbe átvinni a későbbi felhasználás érdekében. A különböző scriptek és szűrők használatával az adatokat a kívánt formátumban és minőségben kaphatjuk meg.
A pontos adatkinyerés és annak feldolgozása elengedhetetlen minden olyan rendszer számára, amely adatokat gyűjt és dolgoz fel. Az eszközök és technikák folyamatos fejlesztése és testreszabása segít abban, hogy az adatokat a lehető legjobb formában és minőségben tudjuk kihasználni, miközben elkerüljük a hibákat és csökkentjük az emberi beavatkozás szükségességét.
Miért fontos megérteni a Kafka kulcsfogalmait a nagy adatfeldolgozási rendszerekben?
A Kafka egy elosztott adatfeldolgozó rendszer, amely lehetővé teszi az adatok gyors és megbízható áramlását a különböző alkalmazások között. Alapvetően egy üzenetkezelő rendszert biztosít, amely a különböző adatforrásokat (úgynevezett "producerek") és adatfogyasztókat (vagy "consumereket") összekapcsolja. Az alapelv az, hogy az adatokat egy központi rendszer, a Kafka, kezeli, miközben elválasztja az adatot előállító és fogyasztó alkalmazásokat. Amíg a két alkalmazás képes csatlakozni a Kafka rendszerhez, nem szükséges köztük közvetlen kapcsolatot fenntartani.
A Kafka által kezelt adatok elosztása különböző nodokon keresztül történik, és az adatok replikálódnak, így biztosítva, hogy a rendszer még akkor is működőképes marad, ha egy vagy több szerver kiesik. Mivel Kafka nem kezdeményez hálózati kapcsolatokat a node-ok között, az adatforrások (producerek) és adatfogyasztók (consumerek) csak akkor lépnek kapcsolatba a Kafka rendszerrel, amikor szükséges, így elkerülhető a folyamatos adatfigyelés.
Az alapvető Kafka fogalmak megértése segít abban, hogy jobban átérezzük a rendszer működését és annak előnyeit. Ilyen fogalom például a "producer" és "consumer". A producerek az adatokat küldik, míg a consumerek azokat fogadják. A "consumer group" rendszerek a fogyasztók között osztják el az adatokat, hogy gyorsabban és hatékonyabban dolgozzák fel azokat. Ezen elv alapján a fogyasztók egy-egy kisebb adatblokkon dolgoznak párhuzamosan, így megnövelve az adatok feldolgozási sebességét.
Kafka "broker"-jei az adatok áramlásáért felelősek a producerek és consumerek között. A broker-ek egyaránt fogadják és továbbítják az adatokat, és a Kafka "controller"-ei a klaszteren belüli menedzsment feladatokat látják el. Az üzenetek adatbázisba történő írása és az egyes node-ok közötti adatelosztás gyakran a "topic"-okon keresztül történik. A topic egyfajta rendezett adatfolyam, amely egy-egy események sorozatát tartalmazza, és logikai csoportosításokat jelenthet. A topicok például különböző eszközök vagy alkalmazások eseményeit rögzíthetik, például egy Logstash vagy Filebeat által küldött adatokat.
A topicokat elosztott egységekre, úgynevezett "partíciókra" bontja a Kafka, hogy azok hatékonyabban kezelhetők legyenek. Egy topichoz tartozó partíciók egyes szervereken tárolódnak, és minden egyes partíciónak megvan a saját "offset" pozíciója, amely segít nyomon követni, hogy a fogyasztók hol tartanak az adatfeldolgozásban. Az egyes partíciók írási sebessége korlátozott, de több partíció alkalmazásával növelhető a teljesítmény és az adatfeldolgozás gyorsasága.
A replikáció egy másik kulcsfontosságú Kafka jellemző, amely lehetővé teszi az adatok redundanciáját. A replikáció révén több példányban tárolódnak az adatok, így még akkor is biztosított az adatok elérhetősége, ha egy vagy több szerver kiesik. A Kafka a legjobb gyakorlatok szerint három példányos replikációt javasol a legtöbb esetben, amelyhez legalább három broker szükséges. A replikáció nemcsak az adatbiztonságot növeli, hanem a rendszer skálázhatóságát is javítja, mivel lehetővé teszi az adatok gyors elérhetőségét és a magas rendelkezésre állást.
Kafka hatékony adatfeldolgozást és biztonságos adatátvitelt biztosít, ám az optimális teljesítmény eléréséhez fontos figyelembe venni a partíciók és replikációk megfelelő beállítását, valamint a broker-ek közötti egyensúlyt. A Kafka telepítése és konfigurálása során érdemes figyelembe venni, hogy a különböző adatforrások és -célpontok különböző igényeket támaszthatnak, így a rendszer testreszabása lehetővé teszi a legjobb eredmények elérését.
A Kafka hatékony működtetése nemcsak technikai tudást igényel, hanem a rendszer működésének átfogó megértését is, hogy az adatok megfelelő módon kerüljenek feldolgozásra és elosztásra. Az alapvető Kafka fogalmak, mint a producer, consumer, topicok, partíciók és replikációk megértése elengedhetetlen ahhoz, hogy a rendszer valóban kihasználja az elosztott adatfeldolgozás előnyeit.
Hogyan oszthatjuk meg és kezelhetjük a fenyegetés-elhárítási adatokat Memcached és Redis segítségével?
A fenyegetés-elhárítási adatok kezelésében és megosztásában a megfelelő eszközök kiválasztása kulcsfontosságú. Az egyik legelterjedtebb megoldás a Redis és Memcached, melyek gyors és hatékony megoldásokat kínálnak a nagy mennyiségű adat kezelésére. Ezen eszközök konfigurálása és alkalmazása lehetőséget ad arra, hogy a fenyegetés-elhárítási információkat eloszthassuk a különböző node-ok között, és biztosítsuk az adatok gyors elérhetőségét. Ebben a fejezetben a Redis és Memcached megoldásokat használjuk a fenyegetés-elhárítási adatok kezelésére és elosztására, miközben bemutatjuk az egyes eszközök megfelelő konfigurálását és a legfontosabb technikai részleteket.
A Redis és a Memcached mindkét eszköz ideális választás a fenyegetés-elhárítási adatok gyors kezelésére, mivel mindkettő képes hatékonyan tárolni a legfontosabb adatokat és biztosítani azok gyors elérését. A Redis, mint vezető adatbázis, elsősorban a centralizált tárolás és a gyors keresés érdekében használható, míg a Memcached a különböző node-ok közötti adatmegosztást segíti elő, anélkül, hogy szükség lenne az adatbázisok szinkronizálására. A két eszköz együttes használata lehetővé teszi, hogy rugalmasan kezeljük a fenyegetés-elhárítási adatokat és biztosítsuk azok elérhetőségét.
A Redis például képes a tárolt adatokat diskre menteni, így a karbantartás során is megőrzi az adatokat. Azonban előfordulhat, hogy egyes esetekben a Redis adatainak elvesztése miatt az adatokat újra kell populálni. Ebben az esetben a Logstash és Elasticsearch segítségével visszanyerhetjük a szükséges információkat és újra feltölthetjük a cache-t.
A Memcached konfigurálásakor fontos figyelembe venni, hogy nem használ adatreplicációt, tehát minden egyes adatnode-nak saját Memcached példányt kell futtatnia. Ezért minden node-nak külön kell kezelnie a saját cache-jét, hogy biztosítsuk a folyamatos adatáramlást és megelőzzük a cache driftet, vagyis a cache-értékek közötti eltéréseket. A Memcached beállításakor a Logstash képes lesz kapcsolatot létesíteni a helyi Memcached példánnyal, és tárolni az adatokat, valamint visszanyerni azokat.
A fenyegetés-elhárítási node konfigurálása során fontos, hogy az adatokat megfelelően szétoszthassuk a különböző node-ok között. Ehhez a Filebeat és Logstash megfelelő konfigurálása szükséges, hogy a fenyegetés-elhárítási jeleket és indikátorokat eloszthassuk az összes adatnode között. A Logstash az adatok kezelésére és szűrésére is képes, így biztosítva, hogy csak a releváns információk kerüljenek a rendszerbe.
A Memcached és Redis megoldások használata lehetővé teszi a fenyegetés-elhárítási információk gyors feldolgozását és elosztását a rendszeren belül. Azonban figyelembe kell venni a rendszer karbantartásának és frissítésének szükségességét is. A karbantartás során a Redis vagy Memcached példányok esetleges adatvesztése esetén a rendszer újra feltöltheti a cache-t az Elasticsearch vagy Logstash segítségével. A rendszerek közötti adatmegosztásnál fontos, hogy a Logstash megfelelő beállításokat használjon, hogy biztosítsuk az adatok helyes és biztonságos továbbítását.
Fontos figyelmet fordítani a titkosításra és a biztonságra is, különösen akkor, ha az adatokat különböző szerverek között továbbítjuk. Az SSL-titkosítás használata elengedhetetlen a biztonságos adatátvitelhez. A Logstash konfigurációjában az SSL beállítások megfelelő konfigurálásával biztosíthatjuk, hogy az adatok biztonságos módon kerüljenek továbbításra a különböző node-ok között.
A fentieket szem előtt tartva, a fenyegetés-elhárítási adatok kezelése és elosztása Memcached és Redis segítségével hatékony megoldást kínál, amely biztosítja az adatok gyors és biztonságos elérhetőségét a különböző node-ok számára. A konfigurációk pontos beállításával a rendszer képes lesz kezelni a különböző fenyegetéseket és biztosítani az adatok védelmét.
A memória- és adatkezelési stratégiák mellett elengedhetetlen a megfelelő monitoring és hibakezelési mechanizmusok implementálása. Az adatok gyors és megbízható elérhetősége mellett fontos, hogy folyamatosan figyelemmel kísérjük a rendszer teljesítményét és válaszidejét, hogy időben észlelhessük a potenciális problémákat.

Deutsch
Francais
Nederlands
Svenska
Norsk
Dansk
Suomi
Espanol
Italiano
Portugues
Magyar
Polski
Cestina
Русский