1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Olukord

Sain kolmeks kuuks C-Terra VPN-toodete versiooni 4.3 demoversiooni. Tahan teada, kas mu insenerielu muutub pärast uuele versioonile üleminekut lihtsamaks.

Tänane päev pole raske, ühest kotikesest lahustuvast kohvist 3:1 peaks piisama. Ma ütlen teile, kuidas demosid hankida. Proovin luua skeeme GRE-over-IPsec ja IPsec-over-GRE.

Kuidas saada demo

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Jooniselt järeldub, et demo saamiseks peate:

  • Kirjutage kiri [meiliga kaitstud] ettevõtte aadressilt;
  • Märkige kirjas oma organisatsiooni TIN;
  • Loetlege tooted ja nende kogused.

Demod kehtivad kolm kuud. Müüja ei piira nende funktsionaalsust.

Pildi laiendamine

Security Gateway demo on virtuaalmasina pilt. Kasutan VMWare Workstationi. Toetatud hüperviisorite ja virtualiseerimiskeskkondade täielik loetelu on saadaval müüja veebisaidil.

Enne alustamist pange tähele, et virtuaalse masina vaikekujutises pole võrguliideseid:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Loogika on selge, kasutaja peab lisama nii palju liideseid kui vaja. Lisan neli korraga:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Nüüd käivitan virtuaalmasina. Kohe pärast käivitamist nõuab lüüs kasutajanime ja parooli.

S-Terra Gateways on mitu erineva kontoga konsooli. Loen nende arvu eraldi artiklis. Praeguseks:
Login as: administrator
Password: s-terra

Initsialiseerin lüüsi. Initsialiseerimine on toimingute jada: litsentsi sisestamine, bioloogilise juhuslike numbrite generaatori seadistamine (klaviatuurisimulaator – minu rekord on 27 sekundit) ja võrguliidese kaardi loomine.

Võrguliideste kaart. See muutus lihtsamaks

Versioon 4.2 tervitas aktiivset kasutajat sõnumitega:

Starting IPsec daemon….. failed
ERROR: Could not establish connection with daemon

Aktiivne kasutaja (anonüümse inseneri sõnul) on kasutaja, kes suudab kõike kiiresti ja ilma dokumentatsioonita seadistada.

Enne liidese IP-aadressi seadistamist läks midagi valesti. See kõik puudutab võrguliidese kaarti. Oli vaja teha:

/bin/netifcfg enum > /home/map
/bin/netifcfg map /home/map
service networking restart

Selle tulemusena luuakse võrguliidese kaart, mis sisaldab füüsiliste liideste nimede (0000:02:03.0) ja nende loogiliste tähiste vastendamist operatsioonisüsteemis (eth0) ja Cisco-laadses konsoolis (FastEthernet0/0):

#Unique ID iface type OS name Cisco-like name

0000:02:03.0 phye eth0 FastEthernet0/0

Liideste loogilisi nimetusi nimetatakse varjunimedeks. Pseudonüümid salvestatakse faili /etc/ifaliases.cf.
Versioonis 4.3 luuakse virtuaalmasina esmakordsel käivitamisel liidesekaart automaatselt. Kui muudate virtuaalmasinas võrguliideste arvu, looge liidese kaart uuesti:

/bin/netifcfg enum > /home/map
/bin/netifcfg map /home/map
systemctl restart networking

Skeem 1: GRE-over-IPsec

Juurutan kaks virtuaalset lüüsi, vahetan nagu näidatud joonisel:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Samm 1. Seadistage IP-aadressid ja marsruudid

VG1(config) #
interface fa0/0
ip address 172.16.1.253 255.255.255.0
no shutdown
interface fa0/1
ip address 192.168.1.253 255.255.255.0
no shutdown
ip route 0.0.0.0 0.0.0.0 172.16.1.254

VG2(config) #
interface fa0/0
ip address 172.16.1.254 255.255.255.0
no shutdown
interface fa0/1
ip address 192.168.2.254 255.255.255.0
no shutdown
ip route 0.0.0.0 0.0.0.0 172.16.1.253

IP-ühenduse kontrollimine:

root@VG1:~# ping 172.16.1.254 -c 4
PING 172.16.1.254 (172.16.1.254) 56(84) bytes of data.
64 bytes from 172.16.1.254: icmp_seq=1 ttl=64 time=0.545 ms
64 bytes from 172.16.1.254: icmp_seq=2 ttl=64 time=0.657 ms
64 bytes from 172.16.1.254: icmp_seq=3 ttl=64 time=0.687 ms
64 bytes from 172.16.1.254: icmp_seq=4 ttl=64 time=0.273 ms

--- 172.16.1.254 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3005ms
rtt min/avg/max/mdev = 0.273/0.540/0.687/0.164 ms

2. samm: seadistage GRE

Toon näite GRE seadistamise kohta ametlikest skriptidest. Loon kataloogi /etc/network/interfaces.d koos sisuga faili gre1.

VG1 jaoks:

auto gre1
iface gre1 inet static
address 1.1.1.1
netmask 255.255.255.252
pre-up ip tunnel add gre1 mode gre remote 172.16.1.254 local 172.16.1.253 key 1 ttl 64 tos inherit
pre-up ethtool -K gre1 tx off > /dev/null
pre-up ip link set gre1 mtu 1400
post-down ip link del gre1

VG2 jaoks:

auto gre1
iface gre1 inet static
address 1.1.1.2
netmask 255.255.255.252
pre-up ip tunnel add gre1 mode gre remote 172.16.1.253 local 172.16.1.254 key 1 ttl 64 tos inherit
pre-up ethtool -K gre1 tx off > /dev/null
pre-up ip link set gre1 mtu 1400
post-down ip link del gre1

Tõstan liidese süsteemis:

root@VG1:~# ifup gre1
root@VG2:~# ifup gre1

Kontrollimine:

root@VG1:~# ip address show
8: gre1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1400 qdisc noqueue state UNKNOWN group default qlen 1
    link/gre 172.16.1.253 peer 172.16.1.254
    inet 1.1.1.1/30 brd 1.1.1.3 scope global gre1
       valid_lft forever preferred_lft forever

root@VG1:~# ip tunnel show
gre0: gre/ip remote any local any ttl inherit nopmtudisc
gre1: gre/ip remote 172.16.1.254 local 172.16.1.253 ttl 64 tos inherit key 1

C-Terra Gatewayl on sisseehitatud pakettide nuusutaja - tcpdump. Kirjutan liiklustrüki pcap-faili:

root@VG2:~# tcpdump -i eth0 -w /home/dump.pcap

Alustan pingimist GRE liideste vahel:

root@VG1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
64 bytes from 1.1.1.2: icmp_seq=1 ttl=64 time=0.918 ms
64 bytes from 1.1.1.2: icmp_seq=2 ttl=64 time=0.850 ms
64 bytes from 1.1.1.2: icmp_seq=3 ttl=64 time=0.918 ms
64 bytes from 1.1.1.2: icmp_seq=4 ttl=64 time=0.974 ms

--- 1.1.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 0.850/0.915/0.974/0.043 ms

GRE tunnel on valmis ja töötab:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Samm 3. Krüpteeri GOST GRE-ga

Määrasin identifitseerimise tüübi - aadressi järgi. Autentimine eelmääratletud võtmega (kasutustingimuste kohaselt tuleb kasutada digitaalseid sertifikaate):

VG1(config)#
crypto isakmp identity address
crypto isakmp key KEY address 172.16.1.254

Seadistasin IPsec Phase I parameetrid:

VG1(config)#
crypto isakmp policy 1
encr gost
hash gost3411-256-tc26
auth pre-share
group vko2

Seadistasin IPsec Phase II parameetrid:

VG1(config)#
crypto ipsec transform-set TSET esp-gost28147-4m-imit
mode tunnel

Loon krüptimiseks juurdepääsuloendi. Sihitud liiklus – GRE:

VG1(config)#
ip access-list extended LIST
permit gre host 172.16.1.253 host 172.16.1.254

Loon krüptokaardi ja seon selle WAN-liidesega:

VG1(config)#
crypto map CMAP 1 ipsec-isakmp
match address LIST
set transform-set TSET
set peer 172.16.1.253
interface fa0/0
  crypto map CMAP

VG2 puhul on konfiguratsioon peegeldatud, erinevused on järgmised:

VG2(config)#
crypto isakmp key KEY address 172.16.1.253
ip access-list extended LIST
permit gre host 172.16.1.254 host 172.16.1.253
crypto map CMAP 1 ipsec-isakmp
set peer 172.16.1.254

Kontrollimine:

root@VG2:~# tcpdump -i eth0 -w /home/dump2.pcap
root@VG1:~# ping 1.1.1.2 -c 4
PING 1.1.1.2 (1.1.1.2) 56(84) bytes of data.
64 bytes from 1.1.1.2: icmp_seq=1 ttl=64 time=1128 ms
64 bytes from 1.1.1.2: icmp_seq=2 ttl=64 time=126 ms
64 bytes from 1.1.1.2: icmp_seq=3 ttl=64 time=1.07 ms
64 bytes from 1.1.1.2: icmp_seq=4 ttl=64 time=1.12 ms

--- 1.1.1.2 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 1.077/314.271/1128.419/472.826 ms, pipe 2

ISAKMP/IPseci statistika:

root@VG1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded

ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 1 (172.16.1.253,500)-(172.16.1.254,500) active 1086 1014

IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 1 (172.16.1.253,*)-(172.16.1.254,*) 47 ESP tunn 480 480

GRE liikluses pole pakette:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Järeldus: GRE-over-IPsec skeem töötab õigesti.

Joonis 1.5: IPsec-over-GRE

Ma ei kavatse IPsec-over-GRE-d võrgus kasutada. Ma kogun, sest ma tahan.

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Skeemi GRE-over-IPsec juurutamiseks teistpidi toimige järgmiselt.

  • Parandage krüptimise juurdepääsuloend – sihitud liiklus LAN1-lt LAN2-le ja vastupidi;
  • Seadistage marsruutimine GRE kaudu;
  • Riputage GRE liidesele krüptokaart.

Vaikimisi pole Cisco-laadses lüüsikonsoolis GRE-liidest. See on olemas ainult operatsioonisüsteemis.

Lisan Cisco-laadsele konsoolile GRE liidese. Selleks redigeerin faili /etc/ifaliases.cf:

interface (name="FastEthernet0/0" pattern="eth0")
interface (name="FastEthernet0/1" pattern="eth1")
interface (name="FastEthernet0/2" pattern="eth2")
interface (name="FastEthernet0/3" pattern="eth3")
interface (name="Tunnel0" pattern="gre1")
interface (name="default" pattern="*")

kus gre1 on liidese tähis operatsioonisüsteemis, Tunnel0 on liidese tähis Cisco-laadses konsoolis.

Arvutan faili räsi ümber:

root@VG1:~# integr_mgr calc -f /etc/ifaliases.cf

SUCCESS:  Operation was successful.

Nüüd on Cisco-laadses konsoolis ilmunud Tunnel0 liides:

VG1# show run
interface Tunnel0
ip address 1.1.1.1 255.255.255.252
mtu 1400

Juurdepääsuloendi parandamine krüpteerimiseks:

VG1(config)#
ip access-list extended LIST
permit ip 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255

Konfigureerin marsruutimise GRE kaudu:

VG1(config)#
no ip route 0.0.0.0 0.0.0.0 172.16.1.254
ip route 192.168.3.0 255.255.255.0 1.1.1.2

Eemaldan krüptokaardi failist Fa0 / 0 ja seon selle GRE liidesega:

VG1(config)#
interface Tunnel0
crypto map CMAP

VG2 puhul on see sarnane.

Kontrollimine:

root@VG2:~# tcpdump -i eth0 -w /home/dump3.pcap

root@VG1:~# ping 192.168.2.254 -I 192.168.1.253 -c 4
PING 192.168.2.254 (192.168.2.254) from 192.168.1.253 : 56(84) bytes of data.
64 bytes from 192.168.2.254: icmp_seq=1 ttl=64 time=492 ms
64 bytes from 192.168.2.254: icmp_seq=2 ttl=64 time=1.08 ms
64 bytes from 192.168.2.254: icmp_seq=3 ttl=64 time=1.06 ms
64 bytes from 192.168.2.254: icmp_seq=4 ttl=64 time=1.07 ms

--- 192.168.2.254 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3006ms
rtt min/avg/max/mdev = 1.064/124.048/492.972/212.998 ms

ISAKMP/IPseci statistika:

root@VG1:~# sa_mgr show
ISAKMP sessions: 0 initiated, 0 responded

ISAKMP connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) State Sent Rcvd
1 2 (172.16.1.253,500)-(172.16.1.254,500) active 1094 1022

IPsec connections:
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd
1 2 (192.168.1.0-192.168.1.255,*)-(192.168.2.0-192.168.2.255,*) * ESP tunn 352 352

ESP liikluses on GRE-sse kapseldatud paketid:

1.5 skeemid kodumaisel IPsec VPN-il. Demode testimine

Järeldus: IPsec-over-GRE töötab õigesti.

Tulemused

Piisas ühest tassist kohvist. Visandasin juhised demoversiooni saamiseks. Konfigureeritud GRE-over-IPsec ja juurutatud vastupidi.

Võrguliideste kaart versioonis 4.3 on automaatne! Katsetan edasi.

Anonüümne insener
t.me/anonymous_engineer


Allikas: www.habr.com

Lisa kommentaar