Kurz CCNA Security

8 – Site-to-site IPsec VPN

Pozn.: V závislosti na zariadení na ktorom pracujete môže byť LAN rozhranie smerovača buď gi0/0 alebo fa0/0. Dostupné rozhrania zistite cez show ip interface brief. Následne tomu prispôsobujete aj topológiu.

Chyby v cvičení nahlasujte na ondrej.kainz@cnl.sk.

A. Konfigurácia zariadení

  1. Nakonfigurujte smerovače R1 a R3 podľa topológie vyššie. Konfigurácia pozostáva z nastavenia hostname, konfigurácie rozhraní s IPv4 adresou podľa topológie. Konfiguráciu R2 realizuje jeden z dvojice, môžete aj spoločne.
  2. Nastavte statickú IP adresy na PC.

 

B. Nakonfigurujte dynamický smerovací protokol OSPF (IPv4):

  1. Použitím príkazu ip ospf 1 area 0 zaveďte priamo pripojené siete do smerovacieho protokolu na rozhraniach (pri smerovači na paličke sa konfigurujú subrozhrania):

    (config-if)# ip ospf 1 area 0

  2. Rozhrania smerujúce do LAN nastavte ako pasívne:

    (config-router)# passive-interface fa0/0

  3. Overenie vytvorenia OSPF susedstva:

# show ip ospf neighbor

  1. Overenie naučených nových smerov cez OSPF (príznak v smerovacej tabuľke O):

# show ip route

Overenie konektivity: Realizujte ping medzi PC A a PC B. Ak nefunguje pokúste sa realizovať ping na lokálnu bránu suseda.

 

C. IPsec VPN

IPsec je otvorený rámec, ktorý zabezpečuje bezpečenú komunikáciu cez sieť internet. IPsec poskytuje zabezpečený tunel medzi dvoma zariadeniami (spravidla smerovače). Konfiguráciou ACL a ich nasadením do crypto máp definuje aj aká prevádzka by mala byť zabezpečená medzi dvoma IPsec zariadeniami. Fáza 1 IKE definuje metódu pre výmenu kľúčov používaných na overenie IKE politík. Vo fáze 2 IKE si partneri vymieňajú a porovnávajú IPsec politiky pre autentifikáciu a šifrovanie dátovej prevádzky. Komunikácia pretekajúca cez Tunel je šifrovaná a komunikácia pretekajúca len cez fyzické rozhrania je prenášaná v nezašifrovanej podobe.

D. Nastavenie IKE politík (angl. policies) na R1 a R3

Nižšie uvedené sa konfiguruje len na R1 a R3. Ak nie je označené, konfigurujete aj na R1 aj R3. Implementácia IPsec VPN má dva hlavné prvky konfigurácie:

  • IKE (angl. Implement Internet Key Exchange) parametre
  • IPsec parametre

Cieľom je vytvoriť IPsec VPN tunel medzi R1 a R3, ktorá prechádza cez R2. Pre povolenie fázy 1 IKE je potrebné vytvoriť ISAKMP politiku a zadefinovať IPsec partnera (druhý koncový bod). ISAKMP politika definuje algoritmy autentifikácie a šifrovania. Po akceptovaní ISAKMP parametrov na oboch IPsec koncových bodoch sa ukončí fáza 1 IKE.

  1. Overenie, že na zariadení je IKE podporované a aktivované:

(config)# crypto isakmp enable

V prípade nefunkčnosti príkazu IKE nie je podporované.

  1. Fáza 1 IKE – Nastavenie ISAKMP politiky. Výber algoritmov pre šifrovanie hovorí aká bude dôvernosť v tuneli. Integritu dát zabezpečuje vybraný hashovací algoritmus a zvolený bude aj autentifikačný algoritmus. Číslo skupiny Diffie-Hellman (DH) sa používa na vytvorenie bezpečného kľúča zdieľaného koncovými bodmi a definuje silu kľuča.

Vytvoríme ISAKMP politiku s prioritou 4. Hashovací algoritmus sa nakonfiguruje SHA, pre autentifikáciu sa zadá predzdieľaný (angl. pre-shared) kľúč, číslo DH skupiny bude 2 (modulus o dĺžke 1024 bitov). Životnosť bude hodina (3600 sekúnd) a na šifrovanie sa nakonfiguruje AES algoritmus s dĺžkou kľúča 256 bitov:

(config)# crypto isakmp policy 4

(config-isakmp)# hash sha

(config-isakmp)# authentication pre-share

(config-isakmp)# group 2

(config-isakmp)# lifetime 3600

(config-isakmp)# encryption aes 256

Overenie nakonfigurovanej IKE politiky cez:

# show crypto isakmp policy

  1. Konfigurácia predzdieľaného kľúča. Potrebná je konfigurácia na oboch stranách spojenia, čiže na R1 aj R3. Okrem kľúča sa zadá aj adresa suseda, ide o verejnú a dosiahnuteľnú adresu, teda adresu na ktorú je potrebné mať dostupný ping z oboch strán. Použité heslo je ipsecheslo. Adresa na R1 na rozhraní Fa0/1 v simulovanom internete (R1-R2-R3) je 232.51.133. Adresa na R2 na rozhraní Fa0/1 je 147.232.51.138:

R1(config)# crypto isakmp key ipsecheslo address 147.232.51.138

R3(config)# crypto isakmp key ipsecheslo address 147.232.51.133

  1. Fáza 2 IKE: Konfigurácia IPsec transform setlifetime. IPsec transform set definuje kryptografické algoritmy a funkcie (transformácie), ktoré smerovač používa na reálnych dátových paketoch odosielaných cez IPsec tunel. Tieto algoritmy zahŕňajú služby pre šifrovanie, zapuzdrenie, autentifikáciu a integritu údajov. Ide teda o ďalší crypto parameter konfigurácie, potrebný pre vyjednávaní zabezpečeného spojenia. Vytvoríme transform set s názvom R1-R3 používajúc ESP transform so šifrovacím protokolom AES s dĺžkou kľúča 256 bitov a hashovacou funkciou SHA. Je nevyhnutné, aby sa nastavenie tohto transform set zhodoval na oboch stranách:

(config)# crypto ipsec transform-set R1-R3 esp-aes 256 esp-sha-hmac

Zmeniť je možné aj IPsec lifetime, teda životnosť zabezpečeného spojenia z predvolených 3600 sekúnd na 1800 sekúnd (30 minút).

(config)# crypto ipsec security-association lifetime seconds 1800

  1. Definovanie prevádzky záujmu. Na definovanie tejto prevádzky sa použije rozšírený ACL, tým povieme smerovaču, aká prevádzka sa má šifrovať. Paket, ktorý bude mať s ACL zhodu bude poslaný cez tunel ako šifrovaný. Paket, ktorý nebude mať zhodu s ACL nebude zahodený, ale bude poslaný ako nešifrovaný, teda nebude prechádzať tunelom. Pri zlej konfigurácii ACL bude celá prevádzka posielaná ako nešifrovaná. Pre šifrovanie zvolíme celú lokálnu sieť na R1 aj R3.

R1(config)# access-list 101 permit ip 147.232.49.0 0.0.0.255 147.232.50.0 0.0.0.255

R3(config)# access-list 101 permit ip 147.232.50.0 0.0.0.255 147.232.49.0 0.0.0.255

  1. Vytvorenie a nasadenie crypto mapy. Crypto mapa spája prevádzku s ACL voči susednému koncovému bodu a poskytuje aj iné IKE a IPsec nastavenia. Po vytvorení crypto mapy sa nasadzuje na jedno alebo viac rozhraní, ktoré majú na druhej strane druhý IPsec koncový bod.
    Vytvoríme crypto mapu a pomenujeme ju CMAP, ako sekvenčné číslo mapy použijeme 9.

(config)# crypto map CMAP 9 ipsec-isakmp

Pomocou nasledujúceho príkazu definujeme ACL, ktorý hovorí aká prevádzka sa má šifrovať.

(config-crypto-map)# match address 101

Následne zadefinujeme druhú stranu IPsec spojenia, pre R1 to je Fa0/1 na R3 a pre R3 to je Fa0/1 na R1:

R1(config-crypto-map)# set peer 147.232.51.138

R3(config-crypto-map)# set peer 147.232.51.133

Smerovačom povieme aký transform set sa má použiť, teda R1-R3. Zadefinujeme PFS skupinu, čo vlastne predstavuje DH skupinu s dĺžkou kľúča 1024 bitov. Nakonfigurujeme životnosť (angl. lifetime) zabezpečeného spojenia na 900 sekúnd (15 minút):

(config-crypto-map)# set transform-set R1-R3

(config-crypto-map)# set pfs group2

(config-crypto-map)# set security-association lifetime seconds 900

  1. Nasadenie crypto mapy na rozhrania. Crypto mapy nasadíme na WAN rozhrania smerovačov R1 a R3.

(config)# int fastEthernet 0/1

(config-if)# crypto map CMAP

E. Overenie site-to-site IPsec VPN konfigurácie

  1. Overenie IPsec konfigurácie na R1 a R3. Použite nasledujúci príkaz na zobrazenie nakonfigurovaných IPsec politík vo forme transform set. Časť výstupu by mala obsahovať nasledujúce:

R1# show crypto ipsec transform-set

Transform set R1-R3: {    { esp-256-aes esp-sha-hmac  }

   will negotiate = { Tunnel,  },

R3# show crypto ipsec transform-set

Transform set R1-R3: {    { esp-256-aes esp-sha-hmac  }

   will negotiate = { Tunnel,  },

  1. Použitím nasledujúceho príkazu zobrazíte crypto mapy nastavené na smerovači:

R1# show crypto map

Crypto Map CMAP 9 ipsec-isakmp

        Peer = 147.232.51.138

        Extended IP access list 101

            access-list 101 permit ip 147.232.49.0 0.0.0.255 147.232.50.0 0.0.0.255

        Current peer: 147.232.51.138

        Security association lifetime: 4608000 kilobytes/900 seconds

        PFS (Y/N): Y

        Transform sets={

                R1-R3,

        }

        Interfaces using crypto map CMAP:

                FastEthernet0/1

R3# show crypto map

Crypto Map CMAP 9 ipsec-isakmp

        Peer = 147.232.51.133

        Extended IP access list 101

            access-list 101 permit ip 147.232.50.0 0.0.0.255 147.232.49.0 0.0.0.255

        Current peer: 147.232.51.133

        Security association lifetime: 4608000 kilobytes/900 seconds

        PFS (Y/N): Y

        Transform sets={

                R1-R3,

        }

        Interfaces using crypto map CMAP:

                FastEthernet0/1

  1. Zobrazte či existujú zabezpečené IKE spojenia (SA, angl. Security Associations):

# show crypto isakmp sa

Zoznam by mal byť prázdny, kým nebude zaslaná prevádzka definovaná v ACL, teda prevádzka záujmu.

  1. Príkazom nižšie sa zobrazí zabezpečené IKE spojenie (SA) medzi R1 a R3:

# show crypto ipsec sa

Časť výpisu hovorí o počte spracovaných paketov, čo je 0.

#pkts encaps: 0, #pkts encrypt: 0, #pkts digest: 0

#pkts decaps: 0, #pkts decrypt: 0, #pkts verify: 0

  1. Vytvorte prevádzku mimo prevádzky záujmu (nie je v ACL), čiže napr. rozšírený ping z R1 na PC B (obdobne to viete realizovať z R3 na PC A):

R1# ping

Protocol [ip]:

Target IP address: 147.232.50.1

Repeat count [5]:

Datagram size [100]:

Timeout in seconds [2]:

Extended commands [n]: y

Source address or interface: fastethernet0/1

Type of service [0]:

Set DF bit in IP header? [no]:

Validate reply data? [no]:

Data pattern [0xABCD]:

Loose, Strict, Record, Timestamp, Verbose[none]:

Sweep range of sizes [n]:

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 147.232.50.1, timeout is 2 seconds:

Packet sent with a source address of 147.232.51.133

!!!!!

Zadajte opäť príkaz:

# show crypto isakmp sa

Následne realizujte ping z PC A na PC B alebo naopak.

PC A:\> ping -t 147.232.50.1

PC B:\> ping -t 147.232.49.1

Týmto sa vygenerovala prevádzka záujmu, ktorá spadá pod ACL. Overíme príkazom:

R1# show crypto isakmp sa

IPv4 Crypto ISAKMP SA

dst                        src                         state             conn-id slot status

147.232.51.138  147.232.51.133  QM_IDLE           1071    0 ACTIVE

R3# show crypto isakmp sa

IPv4 Crypto ISAKMP SA

dst                        src                         state             conn-id slot status

147.232.51.133  147.232.51.138  QM_IDLE           1016    0 ACTIVE

IKE spojenie (SA) medzi R1 a R3 bolo vytvorené. Prevádzka záujmu podľa ACL 101 teraz ide cez tunel ako šifrovaná prevádzka. Ďalšie overenie cez príkaz:

# show crypto ipsec sa

Nám vo výpise povie koľko paketov bolo šifrovaných:

#pkts encaps: 46, #pkts encrypt: 46, #pkts digest: 0

#pkts decaps: 46, #pkts decrypt: 46, #pkts verify: 0

F. Dodatočné overenie v Cisco PT

Ak pracujete v Cisco PT, potom je možné funkcionalitu overiť aj použitím zariadenia Sniffer. Medzi smerovače R1 a R2 pridajte prepínač.

  1. Na prepínači nakonfigurujeme SPAN:

S1(config)# monitor session 1 source interface fastEthernet 0/10
S1(config)# monitor session 1 destination interface fastEthernet 0/11

  1. Následne budeme sledovať prevádzku na zariadení Sniffer, časť GUI/Buffer size. Pre lepšiu prehľadnosť môžete zrušiť filtre (v dolnej časti „Show All/None“). Následne „Edit filters“ zaškrtnite „ICMP“ a v „Misc“ a zaškrtnite „IPsec, ISAKMP“. Pribúdať budú len pakety relevantné pre ukážku.
  2. Realizujte ping z PC A na PC B alebo naopak. V časti okna pod „Buffer size“ by mali pribudnúť nové položky „IPsec“. Realizujte ping z R1 na PC B alebo z R3 na PC A. Zobraziť by sa mali nešifrované správy z ICMP protokolu.
  3. Na oboch rozhraniach Fa0/1 smerovačov R1 a R3 vypnite priradenie crypto mapy na rozhraní:

(config)# interface fastEthernet 0/1

(config-if)# no crypto map CMAP

%CRYPTO-6-ISAKMP_ON_OFF: ISAKMP is OFF

Opätovne realizujte ping. V tomto prípade je ping nešifrovaný. Ak crypto mapy opäť nasadíte na obe rozhrania, ping bude opäť šifrovaný vytvoreným IPsec tunelom.