Biztosan mindenki hallotta már ezt a szót: proxy.
Nyilván valóan sokan tudják is, hogy mi az – de ők főleg IT szakemberek, nem átlagos felhasználók.
Hadd segítsek megismerni ezt az igencsak sokoldalú eszközt.
Első lecke: kommunikáció
A számítógépek már jó ideje kommunikálnak egymással.
Az már nagyon régen volt, hogy a számítógépet és egy valamiféle fali aljzatot csak egy drót kötötte össze, és az is nagyon rázott, ha nem vigyáztunk.
Ma már minden számítógépben van hálózati kártya (némelyikben még vezeték nélküli is), amit arra használunk, hogy kommunikáljunk rajta.
Ez a számítógépes kommunikáció a legtöbb esetben IP címek és TCP portok között történik – és itt meg is kell állnunk egy pillanatra.
Az IP címet – ami valójában négy darab számjegy – képzeljük el úgy, mint egy postacímet: ország, város, utca, házszám. Ez is négy adat, mint az IP címben a számok. Ez a cím azonban egy hálózati kártyát azonosít, kis túlzással azt is mondhatjuk, hogy azt a számítógépet, amiben az adott hálózati adapter van. Remélem, hogy ez így könnyen elképzelhető.
A portok azok, amelyek a kommunikációs csatornák. Ha már a postai címekkel példálóztam, maradjunk is ennél. Tételezzük fel, hogy az adott címen olyan épület van, amelynek van egy halom postaládája (jó 60-70 ezer fiókkal), és minden postaláda tulajdonosa más-más nyelven beszél, ha kommunikálni akarunk vele.
A számítógép bonyolult eszköz, de remélem, hogy ez még mindig követhető – bár túl kéne még bonyolítanom, de eltekintek ettől, inkább szóljanak meg azok, akik értenek hozzá, minthogy az a vád érjen, hogy nem tudom egyszerűen elmagyarázni azt, ami roppant bonyolult.
Második lecke: a kommunikáció korlátozása
A kommunikációt korlátozni kell. Nem holmi hóbort miatt, hanem azért, mert a digitális bűnözés manapság sokkal gyakoribb, mint a hagyományos. Igaz, itt azért nem halnak meg emberek, legalábbis közvetlenül nem.
A kommunikáció korlátozására tűzfalat használunk. A tűzfal működési módja nagyon sok -féle lehet, a célja viszont egy: megakadályozni, hogy egyes címek egyes portokon keresztül elérhetőek legyenek.
Az esetek döntő többségében ezek a tűzfalak szoftveresek – gondoljunk csak pl. a Windows beépített tűzfalára, amit olyan sokan szeretnek gyorsan kikapcsolni, mert idegesít.
Jó, értem én, hogy nem a legkiválóbb találmány, de néha jó, hogy van. A kikapcsolásból persze az esetek többségében nincs probléma, hiszen a gép és az Internet között ott van még egy router, ami szintén egy tűzfal.
Meg kell jegyezni, hogy a szoftveres tűzfalak többsége (a Windowsé is) ugyanolyan módszerrel blokkolja a kommunikációt, mint a routerek.
Ez a módszer az IP szűrés.
Harmadik lecke: az IP szűrés
Tételezzük fel, hogy kommunikálni akarunk, és mi, elküldünk egy üzenetet egy IP címre és egy portra (azaz postaládába). A postás azonban visszahozza a levelet, és mondja, hogy sajnos, azon a címen az adott postaládába tilos üzenetet küldenem.
Ennél kicsivel bonyolultabban működik a dolog, de ahhoz, hogy a tűzfalak ezen típusú működését megértsük, elég ezt tudni.
Annak, hogy az adott címen lévő adott porttal nem engednek kommunikálni, több oka is lehet. Az is lehet, hogy az adott cím adott portja senkivel sem akar kommunikálni, de az is lehet, hogy mindenkivel akar, csak velem nem. Az is lehet, hogy más porttal tudok kommunikálni az adott címen, csak néhánnyal nem.
Tehát a lényeg azon van, hogy adott célállomással nem tudunk kapcsolatot létesíteni adott porton.
Könnyen beláthatjuk, hogy ezt a tűzfalat ki lehet ám cselezni.
Mivel mindkét címen egy-egy számítógép beszélget, meglehet, hogy mindkét számítógépet úgy állítjuk be, hogy bizonyos portokat megcserélünk, és így átverjük a tűzfalat. Nézzünk egy példát:
Két gép között akarunk egy bizonyos kommunikációt megvalósítani a 21-es porton keresztül, de a tűzfal beleszól, és nem engedi. A 80-as porton engedné, de azon más nyelven kéne beszélgetni.
Ha mindkét gép fölött van rendelkezési jogunk, meg tudjuk mondani a gépeknek, hogy az a nyelv, ami a 21-es és a 80-as portokhoz tartozik, cseréljen helyet. A tűzfalat nem tudjuk állítani, mert azt más kezeli, de nem is baj, hiszen kicseleztük, a 21-es porthoz tartozó nyelven beszélgetünk a 80-as porton, a tűzfalunk meg úgy tudja, hogy mindenki betartja a szabályokat.
Negyedik lecke: kommunikáció proxyn keresztül
A proxy egy érdekes megoldás. Képzeljünk el egy olyan postást az egymással beszélgető címek között, aki nem kézben viszi az üzeneteket, hanem fejben.
Azaz, ha üzenni akarok az X cím Y portjának, azt az üzenetet a proxynak kell, hogy elmondjam, ő meg elmegy az adott címre, és elmondja, amit hallott, majd megvárja a választ, és avval visszajön hozzám.
Tehát tulajdonképpen nem két fél beszélget, hanem három, és a harmadik résztvevő – a proxy – gyakorlatilag a teljes kommunikációval tisztában van.
Könnyen belátható, hogy az előző trükkel már nem tudjuk átverni a proxyt abban az esetben, ha a proxy tudja, hogy a 21-es nyelven kapott üzeneteket nem szabad kézbesítenie függetlenül attól, hogy az milyen portra érkezne.
Tehát a proxy-k azon felül, hogy az IP szűrésére is képesek, igazából a kommunikáció tartalmát is képesek kontrollálni, az alapján blokkolni egyes beszélgetéseket, illetve felgyorsítani is azokat.
Ötödik lecke: felhasználási területek
-
Tűzfal
Egyértelmű, hogy egy olyan tűzfallal, ami proxy elven működik, sokkal jobban tudjuk felügyelni a forgalmat. Ha egy adott porton keresztül kommunikáció folyik, abban is biztosak lehetünk. Hogy az azon a nyelven történik, ami oda való. -
Webes gyorsítótár
A mai, széles sávú internetkapcsolatoknak, és a sok-sok dinamikus weboldalnak köszönhetően ma már egyre ritkábban használjuk erre a célra a proxy-t, de érdemes megtudni, hogy hogyan is működött ez.
A proxy nem csak közvetítette az információt, hanem el is raktározta. Így, amikor valaki más ugyanazt az információt kérte, a proxy nem ment el a célállomásra a válaszért, mert arra már neki volt kész válasza. Ma már nem használunk statikus weboldalakat, de régen, a modemes időkben, elég jól meg tudta gyorsítani a böngészést, amikor többen használták ugyanazt az internetkapcsolatot. -
Tartalomszűrés
A működési elv egy speciális formája, amikor a proxy belehallgat az üzenetbe, értelmezi, és a kommunikáció tartalma alapján dönt.
Pl. ha egy weboldalon szerepel egy bizonyos szó, a proxy képes az adott oldalt letiltani, így az a böngészőben nem jelenik meg.