Windows - IPSecurity alapjai

IPSecurity 1. rész

A hálózati kommunikáció biztonságossá tételéhez nyújt könnyen kezelhető megoldást az IPSec használata. Tulajdonképpen az IP protokoll titkosított megfelelőjéről van szó, beágyazva hitelesítési és titkosítási eljárásokba. Használata nélkülözhetetlen "érzékeny" adatok küldésénél, pénzügyi tranzakciók lebonyolításában. Cikksorozatunkban bemutatjuk az alapoktól kezdve, lépésenként végighaladva a konfigurálás folyamatán. Az IP protokoll megszületésekor biztonságosnak számított. Ez a biztonság azonban a megbízható csomagküldést jelentette és nem a ma elterjedt, annak idején viszont ismeretlen támadások elleni védelmet. Talán ezért nem építettek bele olyan funkciót, amely biztosítaná az adatok titkosított továbbítását. Mára a helyzet jelentősen változott: kényes adatok is áthaladnak a hálózaton (pl.: banki tranzakciók) és az eredeti titkosítatlan IP használata olyan mintha képeslapon küldenénk el a bizalmas információinkat. Tekintettel az IP Interneten való széleskörű elterjedtségének - figyelembe véve a rá épülő szoftverek és hardverek számát - nem megvalósítható máról holnapra átállni egy teljesen más protokoll használatára.
Ezeket a szempontokat figyelembe véve született meg az IP biztonságát szavatoló IPSec biztonsági csomag. Nem kell átalakítani a hálózatot, kidobni a régi szoftvereket, lecserélni a hardvereket az alkalmazásához.
Az IPSec egy virtuális magánhálózati kapcsolatot hoz létre két gép között, egy köztes átviteli közegben. A közeg - a hálózat. Ez lehet helyi, de lehet az Internet is. A virtuális magánhálózat azt jelenti, hogy a két gép úgy jelenik meg a hálózati közegben, hogy egymással képesek kommunikálni, de a többiek számára érthetetlenül és ezért láthatatlanul. A küldő gép titkosítja az adatokat, elküldi a hálózaton, a fogadó pedig visszafejti őket. Részletes specifikáció az RFC 2401-2411 szabványokban található.
A Windows 2000 operációs rendszer minden verziója tartalmazza az IPSec kialakításának minden feltételét. Továbbiakban ebből a szemszögből vizsgáljuk a felépítését.

A jobb megértéshez szükséges ismerni néhány fogalmat:

L2TP protokoll (Layer Two Tunneling Protcol):
Internetes - IP protokollra épülő - bújtatóprotokoll. Az előbb említett virtuális magánhálózat kialakításában játszik (fő)szerepet. Hasonló a Point-to-Point Tunneling Protocol-ra (PPTP), de nem igényel közvetlen IP összekapcsolást a kommunikációban résztvevő két gép között. Tulajdonképpen a PPTP és a Layer 2 Forwarding (L2F) technológiák összekapcsolásáról van szó. Becsomagolja a PPP kereteket és így küldi át az IP, ATM, X.25 vagy Frame Relay hálózatokon. A Windows 2000-beli megvalósításban alapértelmezésben csak az IP hálózati támogatás van. A PPP keretek tartalmazhatnak IP, IPX és NetBEUI csomagokat.

AH (Authentication Header) - Hitelesítési fejléc:
Egy HMAC algoritmussal titkosított ellenőrző összeget hoz létre minden csomaghoz, ez garantálja, hogy útközben nem módosították az adatokat. Tartalmaz továbbá egy hitelesítési fejlécet is, ezért a fogadó biztos lehet benne, hogy a csomag a feladótól és nem mástól érkezett. Fizikailag az IP és a TCP/UDP fejléc közé van beépítve. Titkosítási eljárást nem tartalmaz, tehát ettől még olvashatók maradnak az adatok.

ESP (Ecapsulating Security Payload) protokoll:
Az AH funkcióin kívül titkosítja is az adatokat, de aláírással csak bújtatáskor látja el a teljes csomagot, egyébként csak az adatokat (az IP fejléc így ebből a szempontból védtelen marad). Fizikai elhelyezkedése megegyezik az AH fejlécével. Használható önállóan, de az AH-el kombinálva is.

ISAKMP/Oakley protokollok:
Oakley kulcsgeneráló protokoll:
Diffie-Hellman által kidolgozott kulcs cserélő algoritmus szerint dolgozik. A folyamat garantálja az egyedi kulcsok (758 és 1024 bites) létrehozását az adathozzáférésekhez és azt is, hogy nem lehet ugyanazt a kulcsot többször használni, illetve minden kulcshoz rendel egy élettartamot. Az IPSec protokollt használó gépek ezekkel a kulcsokkal határozzák meg a kommunikáció módját és az adatok védelmét. Ennek főleg akkor van jelentősége, ha egy kiszolgáló több ügyféllel tart egyszerre kapcsolatot.
Internet Security Association and Key Management Protocol (ISAKMP) központosítja a kulcshozzárendelések kezelését.
Windows 2000-ben a két protokoll kombinációját valósították meg.

IP szűrők:
A IP forgalom állítható be velük. Mind a kimenő mind a bejövő adatforgalmat kontrollálják. Ha egy csomagot egy adott kimeneti szűrővel küldünk el, a fogadó oldalon léteznie kell a szűrő ellentettjének bemenő szűrőként a sikeres fogadáshoz. Előírható a kommunikáció feltétele: protokollok használata, küldő és fogadó IP címe, stb. Az IPSec Driver - IPSec meghajtó gondoskodik a csomagok szűrési szempontok szerinti ellenőrzéséről.

Bújtatási mód (Tunnel Mode):
L2TP, IPSec vagy PPTP bújtatási technológiákat nem támogató hálózati elemeken (átjárók, útválasztók) való átvitelre használható. Ilyenkor konkrétan meg kell adni a célgép IP címét a kapcsolat létrejöttéhez. Leginkább a VPN-hez hasonlítható a működési módja.

Az IPSec működése:

A kommunikációban résztvevő felek: GÉP_A és GÉP_B.

1. GÉP_A adatküldést kezdeményez GÉP_B felé. Mielőtt ez megkezdődik, a feleknek meg kell állapodniuk a kapcsolat részleteiben, ezt nevezik biztonsági egyeztetésnek (Securtity Assocciation - SA).

2. A kifelé menő csomagokat az IPSec meghajtó összehasonlítja az aktuálisan érvényben lévő szűrővel, annak eldöntésére, hogy szükség van-e és milyen módon a titkosításra. Ha elő van írva a titkosított kommunikáció, a GÉP_A várakozási sorába kerülnek az adatok.

3. Az IKE (Internet Key Exchange) kulcs cserélő szolgáltatás felveszi a kapcsolatot a GÉP_B-vel.

4. Létrejön a biztonsági egyeztetés (Security Association - SA) folyamata. Ez a biztonsági házirend és a kulcsok egybevetésével előírja a közös kommunikációhoz szükséges eljárások használatát. A folyamat lezajlása - egységesítés végett - egy IETF szabványban van rögzítve. A következő egyeztetések történnek: IPSec házirend, titkosítási algoritmus (a DES algoritmus különböző változataival), integritási algoritmus, hitelesítési metódus (Windows 2000 tartományokban az alapértelmezett hitelesítési protokoll a Kerberos), Diffie-Hellman kulcs-csere, IPSec protokoll (AH, ESP).

5. Megkezdődik az adatküldés GÉP_A-tól GÉP_B felé.

Egy gépen több biztonsági egyeztetés is létrejöhet párhuzamosan. Tipikus esete ennek, amikor egy kiszolgáló több klienssel tart fenn titkosított IP kapcsolatot. Ilyenkor az SPI (Security Parameters Index) határozza meg az adatcsomaghoz tartozó hozzárendelést.

Ennyi bevezető után a következő részben a gyakorlati megvalósítást kezdjük el tárgyalni.




IPSecurity cikksorozat