vbali blogja

just a geek with a blog

Tűzfal építés egyszerűen

Mindig is közel álltak a szívemhez a Linux alapú megoldások. Alapvetően “konzol huszárnak” tartom magam, nem riadok meg néhány shell szkript megírásától, mi több, az esetek többségében kifejezetten jobban szeretek a konzolban dolgozni mint a GUI-n kattintgatni. Hiába, DOS-on és Linuxon nőttem fel, Dos Navigator és Midnight Commander volt a desktopom. Volt amikor Lynx) volt az alapértelmezett böngészőm, Mutt) a levelezőkliensem, néztem már videót az MPlayer ASCII art kimenetén keresztül (mplayer -vo aa) és hardcore linuxos időszakomban készítettem a cdw (CD/DVD író frontend) alkalmazást.

Szerver üzemeltetés során az egyik leggyakoribb igény - webszerver építése mellett - egy stabil, magas rendelkezésre állású és biztonságos tűzfal kialakítása. Nálam általában az iptables és az ipfw a favorit. A legelképesztőbb dolgokat be lehet velük állítani, a költség vonzata pedig kimerül egy megfelelő hardverkonfiguráció beszerzésében. Nem véletlen, hogy sok nagyvállalat teszi le a voksát Linux alapú tűzfal megoldás mellett, még akkor is ha a teljes informatikai rendszer Windows alapú szervereket, klienseket és szolgáltatásokat tartalmaz.

Ahogyan a bejegyzés elején már említettem, nem riadok meg néhány shell szkript megírásától, így az iptables konfigurációja sem szokott problémát okozni. Mi több, az iptables eleve biztosítja, hogy az elkészített szabályokat egyetlen parancs kiadásával egy állományba mentsük, ahonnan később könnyedén visszatölthető a mentett állapot (iptables-save). Sok Linux disztribúció már alapértelmezetten tartalmaz valamilyen inicializáló szkriptet a tűzfal szabályok betöltésére így nincs is különösebb gond addig amíg csak néhány port engedélyezéséről és/vagy átirányításról van szó. Amikor a szabályok száma drasztikusan elkezd növekedni és ezeket napi szinten kell módosítani, finomhangolni, akkor a legnagyobb geek rendszergazda is belátja, hogy nem feltétlenül ez a leghatékonyabb módja az üzemeltetésnek. Ha ilyen helyzetben találod magad, akkor lehet szükséged a Firewall Builder alkalmazásra.

A Firewall Builder egy platformfüggetlen GUI a különböző platformok tűzfalainak menedzseléséhez, amely fut Windowson, Linuxon és legnagyobb örömömre Mac OSX-en is. Igaz, hogy engem csak az iptables-re és az ipfw-re vonatkozó részek érintenek, de impozáns a támogatott platformok listája:

  • iptables
  • ipfw
  • pf (Packet Filter)
  • Cisco ASA/PIX
  • Cisco ACL
  • HP ProCurve ACL

Régebben egy Cisco SOHO routert használtam, amely ACL-jének a kezelését manuálisan konfigurálgattam, mert a webes felülete sosem akart rendesen működni. Sokszor vért izzadtam mire sikerült a kívánt beállításokat elvégeznem, jól jött volna akkor is ez a szoftver. A Check Point tűzfalmegoldásánál találkoztam ehhez hasonló, grafikus felhasználói felületen történő adminisztrációval, de az leginkább fájdalmas emlék számomra.

A Firewall Builder mindamellett, hogy remek felületet biztosít a tűzfal létrehozására és adminisztrálására, további remek kényelmi és biztonsági funkciókat is biztosít. Képes az elkészített szabályokat ellenőrizni és analizálni, figyelmeztet, ha egy beállítás “kitakar” egy másikat vagy esetleg ütközik vele. Egyszerűen lehet meglévő beállításokat duplikálni további szerkesztéshez vagy rendezni a szabályok sorrendjét. Új szolgáltatásokkal, hosztokkal és csoportokkal lehet kiegészíteni a meglévő szabályrendszert, akár egy egyszerű drag-and-droppal.

A csoportok és meta objektumok létrehozása különösen nagy segítség a mindennapi adminisztrációban, melyekkel olyan egységeket is létre lehet hozni amelyek fizikailag nem is léteznek. Ezek lehetnek címtartományok, egyedi ip címek, hálózati interface-ek, sőt akár text állományból is be tudja olvasni az abban regisztrált címeket. A routing tábla adminisztrációját is el lehet végezni a szoftver felületén keresztül, valamint óriási segítséget nyújt a virtuális hálózati interface-ek létrehozásában. Alapértelmezetten tartalmazza a standard szolgáltatások listáját (ICMP, IP, TagServices, TCP, UDP) amelyeket természetesen saját szolgáltatásokkal is ki lehet egészíteni, melyekből szintén készíthetőek csoportok. Így nem kell az azonos szolgáltatásokat használó szabályokhoz (például a Windows megosztásokhoz) mindig ugyanazokat a portokat behúzgálni. Csak definiálni kell egy csoportot amely a szükséges portok/szolgáltatások listáját tartalmazza, majd azt az egy szolgáltatáscsoportot kell beilleszteni a szabályokhoz. A későbbi adminisztráció során is kényelmes ezek kezelése, hisz ha bővítjük vagy szűkítjük a listát akkor azok - csoport lévén - automatikusan érvénybe lépnek az összes használt beállításnál.

Végül, de nem utolsó sorban az elkészült csomagot egyszerűen lehet telepíteni a tűzfalra, anélkül, hogy a Firewall Builder bármilyen komponensét telepíteni kellene a szerverre. Akár egy laptopon el lehet végezni a teljes konfigurálást. Ha minden elkészült, akkor a Firewall Builder legenerálja a megfelelő szkriptet a beállítások alapján és - tapasztalataim alapján - SSH-n keresztül elküldi azt a szervernek, majd lefuttatja. Milliónyi apró finomhangolást lehet végezni mind a szabályokra, a telepítésre és a program felületére egyaránt.

A szoftver árazása is barátságos, mindössze 120 dollárba kerül. Nyilvánvalóan a legtöbben üzleti célra vásárolnák meg a terméket, ezért fontos lehet, hogy vásárlás esetén a licencen túl tudnak küldeni nyomtatható számlát is a magyarországi vásárlóknak (ezt kérni kell). A 30 napos próbaverzió letölthető a Firewall Builder honlapjáról.