Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Нөхцөл байдал

Би гурван сарын турш S-Terra VPN бүтээгдэхүүний 4.3 хувилбарын демо хувилбарыг хүлээн авсан. Би шинэ хувилбарт шилжсэний дараа инженерийн амьдрал хялбар болох эсэхийг мэдэхийг хүсч байна.

Өнөөдөр тийм ч хэцүү биш, нэг уут 3 уусдаг кофе хангалттай байх болно. Демо хувилбаруудыг хэрхэн авахыг би танд хэлэх болно. Би GRE-over-IPsec болон IPsec-over-GRE схемүүдийг нэгтгэхийг хичээх болно.

Демо хэрхэн авах вэ

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Зургаас харахад танд хэрэгтэй демо хувилбарыг авахын тулд:

  • Байгууллагын хаягаас presale@s-terra.ru руу захидал бичнэ үү;
  • Захидалдаа байгууллагынхаа TIN-г зааж өгөх;
  • Бүтээгдэхүүн, тэдгээрийн тоо хэмжээг жагсаа.

Демо хувилбарууд нь гурван сарын хугацаанд хүчинтэй. Худалдагч нь тэдний үйл ажиллагааг хязгаарладаггүй.

Зургийг задалж байна

Хамгаалалтын гарцын демо хувилбар нь виртуал машины дүрс юм. Би VMWare Workstation ашиглаж байна. Дэмжигдсэн гипервизорууд болон виртуалчлалын орчны бүрэн жагсаалтыг үйлдвэрлэгчийн вэбсайтаас авах боломжтой.

Эхлэхээсээ өмнө өгөгдмөл виртуал машины дүрс нь сүлжээний интерфейсгүй гэдгийг анхаарна уу:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Логик нь ойлгомжтой, хэрэглэгч шаардлагатай олон интерфейсийг нэмэх ёстой. Би нэг дор дөрөв нэмнэ:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Одоо би виртуал машиныг ажиллуулж байна. Эхлүүлсний дараа шууд гарц нь нэвтрэх болон нууц үг шаарддаг.

S-Terra Gateway нь өөр өөр данстай хэд хэдэн консолтой. Би тэдний тоог тусдаа өгүүллээр тоолох болно. Энэ үеэр:
Login as: administrator
Password: s-terra

Би гарцыг эхлүүлж байна. Эхлүүлэх нь үйлдлүүдийн дараалал юм: лиценз оруулах, биологийн санамсаргүй тоо үүсгэгчийг тохируулах (гарын симулятор - миний бичлэг 27 секунд), сүлжээний интерфейсийн газрын зураг үүсгэх.

Сүлжээний интерфейсийн зураг. Энэ нь илүү хялбар болсон

4.2 хувилбар нь идэвхтэй хэрэглэгчдийг дараах мессежээр угтан авлаа.

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

Идэвхтэй хэрэглэгч (нэрээ нууцалсан инженерийн хэлснээр) аливаа зүйлийг хурдан бөгөөд ямар ч баримт бичиггүйгээр тохируулах боломжтой хэрэглэгч юм.

Интерфэйс дээрх IP хаягийг тохируулахаас өмнө ямар нэг зүйл буруу болж байна. Энэ нь сүлжээний интерфейсийн газрын зурагтай холбоотой юм. Үүнийг хийх шаардлагатай байсан:

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

Үүний үр дүнд сүлжээний интерфэйсүүдийн газрын зураг үүссэн бөгөөд үүнд физик интерфэйсүүдийн нэрсийн зураглал (0000:02:03.0) болон үйлдлийн систем (eth0) болон Cisco төстэй консол (FastEthernet0/0) дахь логик тэмдэглэгээг агуулсан болно. :

#Unique ID iface type OS name Cisco-like name

0000:02:03.0 phy eth0 FastEthernet0/0

Логик интерфейсийн тэмдэглэгээг aliass гэж нэрлэдэг. Гаалууд нь /etc/ifaliases.cf файлд хадгалагддаг.
4.3 хувилбарт виртуал машиныг анх эхлүүлэхэд интерфэйсийн зураг автоматаар үүсдэг. Хэрэв та виртуал машин дахь сүлжээний интерфейсийн тоог өөрчилбөл интерфэйсийн газрын зургийг дахин үүсгэнэ үү.

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

Схем 1: GRE-over-IPsec

Би хоёр виртуал гарцыг байрлуулж, зурагт үзүүлсэн шиг сольж байна:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Алхам 1. IP хаяг болон маршрутыг тохируулна уу

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 холболтыг шалгана:

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. GRE-г тохируулах

Би албан ёсны скриптүүдээс GRE-г тохируулах жишээг авч байна. Би агуулгын хамт /etc/network/interfaces.d санд gre1 файл үүсгэдэг.

VG1-ийн хувьд:

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-ийн хувьд:

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

Би систем дэх интерфейсийг дээшлүүлдэг:

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

Би шалгана:

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

S-Terra Gateway нь багц sniffer - tcpdump-тай. Би pcap файлд замын хөдөлгөөний хаягдал бичих болно:

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

Би GRE интерфэйсүүдийн хооронд ping ажиллуулдаг:

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 туннель идэвхтэй бөгөөд ажиллаж байна:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Алхам 3. GOST GRE-ээр шифрлэх

Би таних төрлийг хаягаар нь тохируулсан. Урьдчилан тодорхойлсон түлхүүр ашиглан баталгаажуулалт (Ашиглалтын нөхцлийн дагуу дижитал гэрчилгээг ашиглах ёстой):

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

Би IPsec Phase I параметрүүдийг тохируулсан:

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

Би IPsec Phase II параметрүүдийг тохируулсан:

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

Би шифрлэлтийн хандалтын жагсаалтыг үүсгэж байна. Зорилтот урсгал - GRE:

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

Би крипто карт үүсгэж, WAN интерфейстэй холбодог:

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-ийн хувьд тохиргоо нь толин тусгалтай, ялгаа нь:

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

Би шалгана:

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 статистик:

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 замын хөдөлгөөний хогийн цэгт пакет байхгүй:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Дүгнэлт: GRE-over-IPsec схем зөв ажиллаж байна.

Схем 1.5: IPsec-over-GRE

Би сүлжээнд IPsec-over-GRE ашиглахаар төлөвлөөгүй байна. Би үүнийг хүсч байгаа учраас цуглуулдаг.

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

GRE-over-IPsec схемийг урвуу байдлаар ашиглахын тулд та дараахь зүйлийг хийх хэрэгтэй.

  • Шифрлэлтийн хандалтын жагсаалтыг засах - LAN1-ээс LAN2 руу чиглэсэн урсгал болон эсрэгээр;
  • GRE-ээр дамжуулан чиглүүлэлт хийх;
  • Crypto картыг GRE интерфейс дээр өлгө.

Анхдагч байдлаар, Cisco-тэй төстэй гарц консол нь GRE интерфейсгүй. Энэ нь зөвхөн үйлдлийн системд л байдаг.

Би Cisco шиг консол дээр GRE интерфейсийг нэмж байна. Үүнийг хийхийн тулд би /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="*")

Энд gre1 нь үйлдлийн систем дэх интерфейсийн тэмдэглэгээ, Tunnel0 нь Cisco-тэй төстэй консол дахь интерфейсийн тэмдэглэгээ юм.

Би файлын хэшийг дахин тооцоолж байна:

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

SUCCESS:  Operation was successful.

Одоо Tunnel0 интерфэйс Cisco шиг консол дээр гарч ирнэ:

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

Би шифрлэлтийн хандалтын жагсаалтыг тохируулж байна:

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

GRE-ээр дамжуулан чиглүүлэлт хийх:

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

Би Fa0/0-аас крипто картыг устгаад GRE интерфейстэй холбодог:

VG1(config)#
interface Tunnel0
crypto map CMAP

VG2-ийн хувьд ч мөн адил.

Би шалгана:

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 статистик:

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 замын хөдөлгөөний хогийн цэгт GRE-д багцлагдсан пакетууд:

Дотоодын IPsec VPN дээрх 1.5 схемүүд. Туршилтын демо

Дүгнэлт: IPsec-over-GRE зөв ажиллаж байна.

Үр дүн

Нэг аяга кофе хангалттай байсан. Би демо авах зааварчилгааг тэмдэглэсэн. GRE-over-IPsec-ийг тохируулж, эсрэгээр нь суулгасан.

4.3 хувилбар дахь сүлжээний интерфейсийн зураг автомат! Би цаашид туршиж байна.

Нэргүй инженер
t.me/anonymous_engineer


Эх сурвалж: www.habr.com

DDoS хамгаалалт, VPS VDS сервер бүхий сайтуудад найдвартай хостинг худалдаж аваарай 🔥 DDoS хамгаалалттай, VPS VDS сервертэй найдвартай вэбсайт хостинг худалдаж аваарай | ProHoster