[[oktatas:hálózat:cisco|< Cisco]]
====== VPN ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2017
* Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
===== Bevezetés =====
A VPN a Virtual Private Network rövidítése. Virtuális magánhálózatot szeretnénk létrehozni.
Általában a nyílt hálózaton egy privát alagút használatáról van szó, amelyen titkosított forgalom zajlik.
Az alábbiakban kétféle VPN megvalósítást mutatok be. Távoli elérés IPSec alapú VPN-en keresztül és tunnelen keresztül.
===== VPN távoli gépről =====
==== Bevezetés ====
A célunk, hogy a távoli gépről VPN hozzáférésen keresztül
elérhető legyen a zárt hálózatban működő fájlszerver és
az intranetes szerver. A végső cél, hogy ACL-ek segítségével
csak a VPN-en keresztül lehessen elérni a zárt hálózatot.
Az IP cím beállítások nem szerepelnek az alábbiakban.
A megvalósítás ACL nélkül nem tökéletes, mert a PC0-án beállítva
az átjárónak a routert, még elérjük a szervereket, de ezen
egy ACL beállítással segíthetünk.
==== Használt szimbólumok ====
A következő ábrához szimbólumtábla:
| PC0 | számítógép |
| == | kapcsoló (switch) |
| <> | forgalomirányító (router) |
==== A hálózat ====
Vegyük szemügyre a következő hálózatot.
10.1.1.2/8
FileServer
1.1.1.10/8 1.1.1.1/8 10.1.1.1/8 /
f0/1 f0/0 /
PC0------------------------<>-------------==
VPN kliens: R1 \
192.168.1.1- \
192.168.1.50 IntranetServer
10.1.1.3/8
Baloldalon van a PC0. Erről szeretnénk belépni VPN-en keresztül
a zárt (jobb oldali) hálózatba, ahol két szerver van.
Egyik szerver fájlszerver, másik webszerver, amely intranetet
szolgál ki.
A forgalomirányítónak nem jó bármelyik, mivel nem mindegyik képes
VPN hozzáférés konfigurálásra.
Használhatjuk például a következőt:
^ 2811 ^
* alkalmas routerek: 819IOX, 819HGW, 829, 1240, 1841, 2620XM, 2621XM, 2811
* alkalmatlan a 1941, 2901, 2911 és a PacketTracer Generic ruterei
==== Beállítások ====
Hozzunk létre az azonosításhoz egy új modellt:
R1(config)#aaa new-model
R1(config)#aaa authentication login abc1 local
R1(config)#aaa authorization network abc2 local
R1(config)#username janos password titok
Létre kell hoznunk egy isakmp kulcsot:
R1(config)#crypto isakmp policy 10
R1(config-isakmp)#encryption 3des
R1(config-isakmp)#hash md5
R1(config-isakmp)#authentication pre-share
R1(config-isakmp)#group 2
R1(config-isakmp)#exit
Hozzunk létre egy IP-cím medencét:
R1(config)#ip local pool VPNPOOL 192.168.1.1 192.168.1.50
Hozzunk létre egy csoportot a belépéshez:
R1(config)#crypto isakmp client configuration group aranyCsoport
R1(config-isakmp-group)#key szithu
R1(config-isakmp-group)#pool VPNPOOL
R1(config-isakmp-group)#exit
A példában a csoportot "aranyCsoport"-nak neveztem el.
A csoporthoz tartozik egy kulcs/jelszó, ami itt "szithu"
Összerendeltük a csoportot az IP-cím medencével.
Be kell állítani IPSec transzformációt:
R1(config)#crypto ipsec transform-set set1 esp-3des esp-md5-hmac
Létre kell hozni egy kulcstérképet:
R1(config)#crypto dynamic-map map1 10
R1(config-crypto-map)#set transform-set set1
R1(config-crypto-map)#reverse-route
R1(config-crypto-map)#exit
Össze kell kapcsolni a kulcstérképet a kliens és az eddigi kulcsbeállításokkal:
R1(config)#crypto map map1 client configuration address respond
R1(config)#crypto map map1 client authentication list abc1
R1(config)#crypto map map1 isakmp authorization list abc2
R1(config)#crypto map map1 10 ipsec-isakmp dynamic map1
Hozzá kell rendelni a router nyilvános IP címéhez a beállításainkat:
R1(config)#int f0/1
R1(config-if)#crypto map map1
==== A zárót hálózat védelme ====
A router jelenleg átengedi a forgalmat VPN nélkül is.
Állítsunk be ACL-t, hogy csak VPN-en keresztül lehessen elérni a szervereket:
R1(config)#int f0/0
R1(config-if)#ip access-group 100 out
R1(config-if)#
R1(config-if)#access-list 100 permit ip 192.168.1.0 0.0.0.255 10.0.0.0 0.255.255.255
R1(config)#
A forgalomirányító f0/0 láb irányából kifele (a zárt hálózat felé) tartó
forgalmat engedem, ha az a 192.168.1.0 hálózatból jön és a 10.0.0.0 hálózatba
tart. Ezzel együtt minden más tiltásra kerül.
==== Tesztelés ====
A beállítások végén a PC0-val kapcsolódhatunk a VPN szerverhez, ami
valójában a router. A router a PC0 számára egy új IP címet biztosít.
A PC0-án ezt a VPN kliens a kapcsolódás után be is állítja.
Az új IP cím egy úgynevezett alagutat biztosít a forgalomirányítón
keresztül a szerverekhez. A szerverek elérhetővé válnak a PC0-számára.
Teszteljünk:
Teszteljük a kapcsolatot a szerverek felé a ping parancs segítségével:
ping 10.1.1.2
ping 10.1.1.3
Nem működik, és ez így van rendben.
A PC0-án a VPN programban a fenti konfiguráció után a következőket kell megadni:
GroupName: aranyCsoport
Group Key: szithu
Host IP (ServerIP): 1.1.1.1
Username janos
Password titok
A kapcsolódás után próbáljuk meg újra tesztelni a kapcsolatokat
a szerverek felé.
ping 10.1.1.2
ping 10.1.1.3
Ha miden rendben csináltunk, a szervere elérhetők.
===== Tunnel =====
Szeretnénk három routeren keresztül elérni PC0-ról PC1-t.
Ehhez R1 és R3 router között egy alagutat fogunk létrehozni.
A következő ábrához szimbólumtábla:
| PC0 | számítógép |
| == | kapcsoló (switch) |
| <> | forgalomirányító (router) |
1.1.1.2/30 2.2.2.1/30
f0/0 f0/1
<>R2
/ \
/ \
1.1.1.1/30 / \ 2.2.2.2/30
f0/0 / \ f0/0
<>R1 <>R3
f0/1| | f0/1
192.168.20.1/24 | |192.168.30.1/24
| |
| |
PC0 PC1
192.168.20.10/24 192.168.30.10/24
R1(config)#int tunnel 10
R1(config-if)#ip address 172.16.1.1 255.255.255.252
R1(config-if)#tunnel source f0/0
R1(config-if)#tunnel destination 2.2.2.2
R1(config-if)#exit
R1(config)#ip route 192.168.30.0 255.255.255.0 172.16.1.2
R3(config)#int tunnel 100
R3(config-if)#ip address 172.16.1.2 255.255.255.252
R3(config-if)#tunnel source f0/0
R3(config-if)#tunnel destination 1.1.1.1
R3(config-if)#exit
R1(config)#ip route 192.168.20.0 255.255.255.0 172.16.1.1
Ellenőrzés PC0-ról:
ping 192.168.30.10
tracert 192.168.30.10
1 1 ms 0 ms 0 ms 192.168.20.1
2 1 ms 0 ms 0 ms 172.16.1.2
3 0 ms 0 ms 0 ms 192.168.30.10
===== Forrás =====
* http://www.cisco.com/c/en/us/td/docs/security/vpn_modules/6342/vpn_cg/6342site3.html