Naplózni minden rendszerben kell, mert a hibakeresés első lépése mindig a log-ok átnézése, viszont egy tűzfal esetében, ahol elsősorban a biztonságról van szó, tudni kell, hogy mi, mikor, honnan, hová, hogyan kommunikált – vagy csak akart.
Az NSX-T rendszerekben azért akad pár komponens, amiből számíthatunk naplóra:
- vSphere ESXi hosztok – gondolom senki sem látott még KVM-et NSX alatt (én biztos nem)
- vCenter Server
- NSX Appliance (3x) – Manager/Controller
- Edge VM – vagy fizikai Edge
- gateway FW
- distributed FW
Az utolsó kettő egy kicsit kivétel, mert valamelyik egyéb rendszer funkciói, tehát a DFW igazából az ESXi hosztokon realizálódik, míg a gateway FW az Edge komponensben.
Ennyi forrást külön kezelni nem lehet, mindenképpen szükség van egy központi naplózási megoldásra, főleg akkor ha rájövünk, hogy a DFW az éppen arra a hosztra loggol, amelyiken az a VM-van, amelyikre azt a vonatkozó szabályt akarjuk naplózni.
Én a VMware vRealize Loginsght-ot tudom erre nyugodt szívvel javasolni. A logok elemzésében sokszor jó szolgálatot tesznek a Content Pack-ok, amelyek dashboard-okat, alert-teket és alapvetően az adott esményt segítenek értelmezni.
Ilyen létezik az NSX-T esetében is, a Marketplace-ről letölthető NSX-T Content Pack képében. Telepítéskor meg is mondja pacekba, hogy sok jóra ne számítsunk, ha a Policy Mode-ban hozogatunk létre dolgokat.
Nagyon viccesnek találom, hogy az NSX-T életében mindig is volt egy erős tudathasadás, a Simplified UI meg az Advanced UI között – korábban – és 3.0-ban a Policy Mode és Manager Mode között. Mikor egy 3.0-t feltesz az ember, az alapértelmezetten Policy Mode-ban mutatja magát. Mindent – majdnem – meg tud tenni a policy nézetben, az abban létrehozott objektumok read only-ban láthatók a Manager Mode-ban is. Viszont fordítva ez nem igaz.
Egyelőre ha a Policy Mode-ban dolgozunk, akkor a semmiféle bejegyzés nem lesz látható Log Insight-ban akkor ha az NSX-T Content pack által adott Dashboard-ban nézzük. Szóval ha Manager Mode-ban létrehozok egy szegmenst, akkor egyből feltűnik a Log Insight-ban. Persze ez a létrehozott szegmens, majd nem látszik a Policy Mode-ban (lol).
Megnézve magát az eseményt ez látszik.:
Szóval jelenleg erősen korlátozott a használhatóság a Log Insight-nak az NSX-el való eggyüttműködésben. A DFW-vel kapcsolatos naplózás, a mentések sikeressége, az NSX Controller/Appliance-okkal kapcsolatos esmények elérhetőek benne, de a szegmensekkel kapcsolatos dolgok egyáltalán nem, ha Policy Mode-ban használjuk (a DHCP,IPAM,Container részekről nem tudok nyilatkozni, mert azokkal nem próbáltam). A Gateway firewall naplózása így teljesen lehetetlen szintén.
Viszont ez nem jelenti azt, hogy ha a raw logot nézzük, akkor ne lenne benne minden esemény. Csupán arról van szó, hogy a az NSX-T Content pack nem bírja értelmezni őket.
Vegyük sorra a komponensek naplózási beállításait
vSphere ESXi és vCenter Server
Mikor egy vCenter Server-t a Log Insight-hoz adunk, akkor az is beállítható, hogy a vCenter által kezelt vSphere hosztokon is beállítsa-e az adott Log Insight-ot mint syslog szerver. Ez itt nem agysebészet, ez az egyszerű rész.
NSX Manager
A legjobb hír, hogy GUI-ra nincs kivezetve, szóval a legegyszerűbb megoldás az SSH. Mindhárom appliance-on be kell állítani, ezt nem szinkronizálják.
NSX Edge
A folyamat teljesen megegyezik az NSX Manager-nél látottakkal, azonos parancs és szintén minden Edge-en meg kell ismételni.
Tűzfalak naplózása – Gateway FW és Distributed FW
Itt érdekes kezd lenni a történed, mert az második – a DFW – egy elosztott tűzfal, szóval ahol NSX-hez kötött NVDS vagy VDS – nem kötelező overlay-t használni csak a DFW képességek használatához(!!!!) – van a hoszton és VM használja azt, ott naplózódhatnak az adott VM-re értelmezett szabályok. Szóval minden hoszton bekerül a logba, a szabállyal kapcsolatos log. Ezt összemásolni, gyűjteni és korrelálni már két hoszt esetén is bajos.
Gateway FW naplója
A gateway tűzfal logja, az az Edge-ek syslog fájljában van – lol – ami enyhén szólva is nehezen olvasható. (VMware link)
Létre is hozok egy szabályt, ami az RDP-t regulázza meg.
Bekapcsolom a naplózást a szabályban és label-nek megadok valami könnyen érthetőt.
SSH-n történő belépés után a „get log-file syslog follow” után kimazsolázható az adott szabály, mondjuk a rule ID alapján, mivel a beírt komment nem jelenik meg benne.
Nézzük meg Log Insight-ban:
Sokkal barátságosabb, bár a beírt komment itt sem nagyon található meg.
Distrubuted FW naplója
Ahogy fentebb látható ez a hoszton jön létre. (VMware link)
Azonos tiltó szabályt hoztam létre – bár a DFW-ben van L7 képesség és azt is beállítottam – mint a GW tűzfalnál.
Szintén bekapcsolom a naplózást és megint prálkozom a komment beadásával.
Egy teszt után azon a vSphere ESXi hoszton, ahol a cél virtuális gép fut, ez jelenik meg a /var/log/dfwpktlogs.log-ban:
Nézzük meg inkább a Log Insight-ot. Én a beírt kommentemre szűrök, de az nem kötelező, mivel akár a VM nevére, IP-jére vagy a rule ID-ra is lehet vizsgálni a naplót.
Itt látszik minden amire szükségem lehet, ez itt kenyér és vaj – bread and butter – erre van szükség. Viszont ez itt a raw log, nézzük meg, hogy az NSX content pack ebből mit képes leszűrni.
Már a bal oldalon látszik, hogy a gateway firewall-t el kell engedni, lövése nincs arról. A DFW látszik legalább, a nézeből átugorva az interaktív részre ez sem tesz mást, mint a raw logot szűri.
Egyéb naplózási esetek
Sok más is fontos lehet:
- szegmens létrehozása
- tűzfal módosítása
Ezek mind mind megjelennek a Log Insight-ban, azonban policy módban történő létrehozás/módosítás/törlés során csak a raw logban látszik. A dashboard-on csak úgy jelenik meg, ha Manager módban történt az akció.
Véleményem szerint ezen a content pack-on igen nagy sebességgel kellene a VMware-nek még picit tornázni, mert az NSX termék fejlesztési iránya nincs összehangolva a Log Insight releváns képességeivel. Nem használhatatlan, mivel raw naplóban mindent megkapunk, de a content pack az nagyon korlátos jelenleg.