Otthoni és irodai hálózatok a gyakorlatban - Labor: VPN

A VIK Wikiből

Ez az oldal a korábbi SCH wikiről lett áthozva.

Ha úgy érzed, hogy bármilyen formázási vagy tartalmi probléma van vele, akkor, kérlek, javíts rajta egy rövid szerkesztéssel!

Ha nem tudod, hogyan indulj el, olvasd el a migrálási útmutatót.


Laborvezető: Ladányi Ákos

Ezen a helyen volt linkelve a(z) soho_vpn.pdf nevű fájl ("OpenVPN konfigurációs útmutató" link szöveggel) a régi wiki http://wiki-old.sch.bme.hu/bin/view/Valaszthato/SohoLaborVPN oldaláról. (Ha szükséged lenne a fájlra, akkor a pontos oldalmegnevezéssel együtt küldd el a wiki@sch.bme.hu címre a kérésedet)


Feladatok

1. Egy szerver, több kliens

Válasszon ki egyet a csoportjához tartozó gépek közül, ezen konfiguráljon be egy VPN szervert. A többi gépet pedig állítsa be kliensnek. Használjon PKI alapú authentikációt és titkosítást. Engedélyezze a kliensek közti kommunikációt is (client-to-client opció).

Segítség a feladathoz:

  • A mérési utasításban is szerepló konfigurációt kell itt használni. Ezt megtalálja a /usr/share7doc/openvpn/examples/sample-config-files/{client,server}.conf file-okban is.
  • A tanúsítványok és kulcsok generálásához szükséges
    Ezen a helyen volt linkelve a(z) easy-rsa.tar.gz nevű fájl ("easy-rsa" link szöveggel) a régi wiki http://wiki-old.sch.bme.hu/bin/view/Valaszthato/SohoLaborVPN oldaláról. (Ha szükséged lenne a fájlra, akkor a pontos oldalmegnevezéssel együtt küldd el a wiki@sch.bme.hu címre a kérésedet)
a /usr/share/doc/openvpn /examples/easy-rsa/ mappában található. Fontos: ne itt futtassa az easy-rsa scriptjeit, hanem készítsen egy másolatot róla (cp -R) valahova.

Vizsgálja meg valamely VPN link forgalmát az ethereal/wirwshark/tcpdump programmal. Nézze meg a tap0 és az ethX interface-ek forgalmát is. Küldjön át a hálózaton egy könnyen felismerhetó stringet a netcat segítségével, és figyelje a csomagok payloadját a tap0 majd az ethX interface-en is.

A netcat használata:

  • fogadó gépen: =netcat -l -p port=
  • küldő gépen: =netcat ip-cím port=

2. Két LAN összekötése egy VPN linkkel

A feladatban célja annak bemutatása hogyan lehetséges két távoli Ethernet LAN-t egy összekötni az OpenVPN segítségével úgy, hogy azok egynek látszanak.

						Host																		Host
						  \							 (			 )							/
						 Switch---VPN szerver---(  Internet  )---VPN kliens---Switch
						  /							 (			 )							\ 
						Host																		Host

															  1. ábra.

Alakítsa ki az 1. ábrán látható hálózati elrendezést. Mindkét LAN-on válasszon ki egy gépet. Ezek között építsen ki egy bridged VPN-t, hogy az egyik LAN Ethernet keretei átjussanak a másikba is. Ellenórizze minden gép elérhetóségét.

Segítség a feladathoz:

  • Mivel most mindössze két gép között van szükség egy VPN-re, ezért elég lesz a szimmetrikus kulcsokon alapuló azonosítás és titkosítás is.
  • Bridged VPN-re van szükség, ezért egy TAP eszközt kell létrehozni.
  • Az előbbiek beállításán felül a kliens konfigurációs file-jában értelemszerűen meg kell adni a szerver IP címét is.
  • Ezután létre kell hozni egy-egy bridge-et a VPN kliens és szerver gépen is a TAP interface és a LAN-hoz kapcsolódó interface között. Ez a =brctl= paranccsal tehető meg, aminek működéséhez be kell tölteni a =bridge= kernel modult.

Megoldás

VPN kliens konfigurációja

  • Ezen a helyen volt linkelve a(z) client.conf nevű fájl ("client.conf" link szöveggel) a régi wiki http://wiki-old.sch.bme.hu/bin/view/Valaszthato/SohoLaborVPN oldaláról. (Ha szükséged lenne a fájlra, akkor a pontos oldalmegnevezéssel együtt küldd el a wiki@sch.bme.hu címre a kérésedet)
bemásolása:
    • =su=
    • =cp /ramdisk/home/knoppix/client.conf /etc/openvpn/openvpn.conf=
  • Kulcsok átvetele
    • =scp x@152.66.245.83:client_1* .=
    • =scp x@152.66.245.83:ca.crt .=
  • Konfiguráció: openvpn.conf-ban írjunk át 4 sort:
    • =remote 152.66.245.83 1194=
    • =ca /etc/openvpn/ca.crt=
    • =cert /etc/openvpn/client_1.crt=
    • =key /etc/openvpn/client_1.key=

Tesztelés

  • Csatlakozás: =openvpn /etc/openvpn/openvpn.conf=
  • Válasz: =Thu Nov 30 13:34:34 2006 /sbin/ifconfig tun0 10.11.30.10 pointopoint 10.11.30.9 mtu 1500=
    • Saját VPN IP cím: 10.11.30.10
    • Point-to-point kapcsolaton point-to-multipoint szimulálásához az OpenVPN egy fake IP címet használ: 10.11.30.9
    • Szerver IP címe: 10.11.30.1
  • Teszt 1: =ping 10.11.30.6= (egy másik kliens)
  • Teszt 2: =netcat 10.11.30.1 1979= (a szerveren 1979-es porton fut a netcat üzenetküldő szolgáltatás)

-- Peti - 2006.11.30.