Tilanne
Sain demoversion C-Terra VPN -tuotteiden versiosta 4.3 kolmeksi kuukaudeksi. Haluan selvittää, muuttuuko insinöörielämäni helpommaksi uuteen versioon siirtymisen jälkeen.
Tänään ei ole vaikeaa, yksi pussi pikakahvia 3 in 1 pitäisi riittää. Kerron kuinka saat demot. Yritän rakentaa GRE-over-IPsec- ja IPsec-over-GRE-malleja.
Kuinka saada demo
Kuvasta seuraa, että demon saamiseksi sinun on:
- Kirjoita kirje [sähköposti suojattu] yrityksen osoitteesta;
- Ilmoita kirjeessä organisaatiosi TIN-tunnus;
- Listaa tuotteet ja niiden määrät.
Demot ovat voimassa kolme kuukautta. Myyjä ei rajoita niiden toimivuutta.
Kuvan laajentaminen
Security Gateway -demo on virtuaalikoneen kuva. Käytän VMWare Workstationia. Täydellinen luettelo tuetuista hypervisoreista ja virtualisointiympäristöistä on saatavilla toimittajan verkkosivustolla.
Ennen kuin aloitat, huomaa, että virtuaalikoneen oletuskuvassa ei ole verkkoliittymiä:
Logiikka on selkeä, käyttäjän tulisi lisätä niin monta käyttöliittymää kuin hän tarvitsee. Lisään neljä kerralla:
Nyt käynnistän virtuaalikoneen. Välittömästi käynnistämisen jälkeen yhdyskäytävä vaatii käyttäjätunnuksen ja salasanan.
S-Terra Gatewayssa on useita konsoleita eri tileillä. Lasken heidän lukumääränsä erillisessä artikkelissa. Toistaiseksi:
Login as: administrator
Password: s-terra
Olen alustamassa yhdyskäytävää. Alustus on toimintosarja: lisenssin syöttäminen, biologisen satunnaislukugeneraattorin (näppäimistösimulaattorin - ennätykseni on 27 sekuntia) asettaminen ja verkkoliittymäkartan luominen.
Verkkoliitäntöjen kartta. Siitä tuli helpompaa
Versio 4.2 tervehti aktiivista käyttäjää viesteillä:
Starting IPsec daemon….. failed
ERROR: Could not establish connection with daemon
Aktiivinen käyttäjä (anonyymin insinöörin mukaan) on käyttäjä, joka voi määrittää mitä tahansa nopeasti ja ilman dokumentaatiota.
Jotain meni pieleen ennen kuin yritettiin määrittää IP-osoite käyttöliittymään. Kyse on verkkoliittymäkartasta. Oli pakko tehdä:
/bin/netifcfg enum > /home/map
/bin/netifcfg map /home/map
service networking restart
Tuloksena luodaan verkkoliitäntäkartta, joka sisältää fyysisten liitäntöjen nimien (0000:02:03.0) ja niiden loogisten merkintöjen kartoituksen käyttöjärjestelmässä (eth0) ja Ciscon kaltaisessa konsolissa (FastEthernet0/0):
#Unique ID iface type OS name Cisco-like name
0000:02:03.0 phye eth0 FastEthernet0/0
Liitäntöjen loogisia nimityksiä kutsutaan aliaksiksi. Aliakset on tallennettu /etc/ifaliases.cf-tiedostoon.
Versiossa 4.3, kun virtuaalikone käynnistetään ensimmäisen kerran, käyttöliittymäkartta luodaan automaattisesti. Jos muutat virtuaalikoneen verkkoliitäntöjen määrää, luo liitäntäkartta uudelleen:
/bin/netifcfg enum > /home/map
/bin/netifcfg map /home/map
systemctl restart networking
Kaavio 1: GRE-over-IPsec
Otan käyttöön kaksi virtuaalista yhdyskäytävää ja vaihdan kuvan osoittamalla tavalla:
Vaihe 1. Määritä IP-osoitteet ja reitit
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-yhteyden tarkistaminen:
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
Vaihe 2: Ota GRE käyttöön
Otan esimerkin GRE:n asettamisesta virallisista skripteistä. Luon /etc/network/interfaces.d-hakemistoon gre1-tiedoston sisällön kanssa.
VG1:lle:
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:lle:
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
Nostan käyttöliittymää järjestelmässä:
root@VG1:~# ifup gre1
root@VG2:~# ifup gre1
Tarkistetaan:
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 Gatewayssa on sisäänrakennettu pakettien haistaja - tcpdump. Kirjoitan liikennevedoskirjan pcap-tiedostoon:
root@VG2:~# tcpdump -i eth0 -w /home/dump.pcap
Aloitan pingin GRE-rajapintojen välillä:
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-tunneli on käynnissä:
Vaihe 3. Salaa GOST GRE:llä
Asetin tunnistustyypin - osoitteen perusteella. Todennus ennalta määritetyllä avaimella (käyttöehtojen mukaan on käytettävä digitaalisia varmenteita):
VG1(config)#
crypto isakmp identity address
crypto isakmp key KEY address 172.16.1.254
Asetin IPsec Phase I -parametrit:
VG1(config)#
crypto isakmp policy 1
encr gost
hash gost3411-256-tc26
auth pre-share
group vko2
Asetin IPsec Phase II -parametrit:
VG1(config)#
crypto ipsec transform-set TSET esp-gost28147-4m-imit
mode tunnel
Luon pääsyluettelon salausta varten. Kohdistettu liikenne - GRE:
VG1(config)#
ip access-list extended LIST
permit gre host 172.16.1.253 host 172.16.1.254
Luon kryptokartan ja sidoin sen WAN-liittymään:
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:ssa kokoonpano peilataan, erot ovat:
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
Tarkistetaan:
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/IPsec-tilastot:
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-liikennekaapissa ei ole paketteja:
Johtopäätös: GRE-over-IPsec -malli toimii oikein.
Kuva 1.5: IPsec-over-GRE
En aio käyttää IPsec-over-GRE:tä verkossa. Kerään, koska haluan.
GRE-over-IPsec-järjestelmän käyttöönotto toisin päin:
- Korjaa salauksen käyttöoikeusluettelo - kohdistettu liikenne LAN1:stä LAN2:een ja päinvastoin;
- Määritä reititys GRE:n kautta;
- Ripusta kryptokartta GRE-liittymään.
Oletusarvoisesti Ciscon kaltaisessa yhdyskäytäväkonsolissa ei ole GRE-liitäntää. Se on olemassa vain käyttöjärjestelmässä.
Lisään GRE-liitännän Ciscon kaltaiseen konsoliin. Tätä varten muokkaan /etc/ifaliases.cf-tiedostoa:
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="*")
missä gre1 on käyttöjärjestelmän käyttöliittymän nimitys, Tunnel0 on Ciscon kaltaisen konsolin rajapinta.
Lasken tiedoston tiivisteen uudelleen:
root@VG1:~# integr_mgr calc -f /etc/ifaliases.cf
SUCCESS: Operation was successful.
Nyt Tunnel0-käyttöliittymä on ilmestynyt Ciscon kaltaiseen konsoliin:
VG1# show run
interface Tunnel0
ip address 1.1.1.1 255.255.255.252
mtu 1400
Käyttöoikeusluettelon korjaaminen salausta varten:
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
Määritän reitityksen GRE:n kautta:
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
Poistan kryptokartan Fa0 / 0:sta ja sidoin sen GRE-liittymään:
VG1(config)#
interface Tunnel0
crypto map CMAP
VG2:lla se on samanlainen.
Tarkistetaan:
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/IPsec-tilastot:
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-liikennekaapissa GRE:hen kapseloidut paketit:
Johtopäätös: IPsec-over-GRE toimii oikein.
Tulokset
Yksi kuppi kahvia riitti. Piirsin ohjeet demoversion hankkimiseen. Määritetty GRE-over-IPsec ja otettu käyttöön päinvastoin.
Version 4.3 verkkorajapintojen kartta on automaattinen! Testaan lisää.
Nimetön insinööri
t.me/anonymous_engineer
Lähde: will.com