ပြည်တွင်း IPsec VPN ပေါ်တွင် 1.5 အစီအမံများ။ စမ်းသပ်ခြင်း

ပြည်တွင်း IPsec VPN ပေါ်တွင် 1.5 အစီအမံများ။ စမ်းသပ်ခြင်း

အခြေအနေ

ကျွန်ုပ်သည် C-Terra VPN ထုတ်ကုန်ဗားရှင်း 4.3 ၏သရုပ်ပြဗားရှင်းကို သုံးလကြာရရှိခဲ့သည်။ ဗားရှင်းအသစ်သို့ပြောင်းပြီးနောက် ကျွန်ုပ်၏အင်ဂျင်နီယာဘဝသည် ပိုမိုလွယ်ကူလာမည်ကို သိရှိလိုပါသည်။

ဒီနေ့တော့ မခက်ပါဘူး၊ 3 in 1 တစ်ခွက်လောက်တော့ ရှိသင့်တယ်။ သရုပ်ပြနည်းကို ပြောပြပါမယ်။ GRE-over-IPsec နှင့် IPsec-over-GRE အစီအစဥ်များကို တည်ဆောက်ရန် ကြိုးစားပါမည်။

ဒီမိုကို ဘယ်လိုရယူမလဲ။

ပြည်တွင်း IPsec VPN ပေါ်တွင် 1.5 အစီအမံများ။ စမ်းသပ်ခြင်း

သရုပ်ပြတစ်ခုရရန် သင်လိုအပ်သော ပုံမှ အောက်ပါအတိုင်းဖြစ်သည် ။

  • စာရေးပါ။ [အီးမေးလ်ကိုကာကွယ်ထားသည်] ကော်ပိုရိတ်လိပ်စာမှ;
  • စာထဲတွင်၊ သင့်အဖွဲ့အစည်း၏ TIN ကိုညွှန်ပြပါ။
  • ထုတ်ကုန်များနှင့် ၎င်းတို့၏ ပမာဏကို စာရင်းပြုစုပါ။

သရုပ်ပြများသည် သုံးလဖြစ်သည်။ ရောင်းချသူသည် ၎င်းတို့၏ လုပ်ဆောင်နိုင်စွမ်းကို ကန့်သတ်မထားပေ။

ပုံရိပ်ကိုချဲ့ထွင်ခြင်း။

Security Gateway သရုပ်ပြသည် စက်ရုပ်ပုံဖြစ်သည်။ ငါ VMWare Workstation သုံးနေတယ်။ ပံ့ပိုးပေးထားသော hypervisors များနှင့် virtualization ပတ်ဝန်းကျင်များ အပြည့်အစုံကို ရောင်းချသူ၏ ဝဘ်ဆိုက်တွင် ရနိုင်ပါသည်။

သင်မစတင်မီ၊ မူရင်း virtual machine image တွင် ကွန်ရက်ချိတ်ဆက်မှုများ မရှိကြောင်း ကျေးဇူးပြု၍ သတိပြုပါ။

ပြည်တွင်း IPsec VPN ပေါ်တွင် 1.5 အစီအမံများ။ စမ်းသပ်ခြင်း

ယုတ္တိဗေဒသည် ရှင်းလင်းသည်၊ အသုံးပြုသူသည် သူလိုအပ်သလောက် အင်တာဖေ့စ်များကို ထည့်ရပါမည်။ လေးခု တပြိုင်နက် ထည့်လိုက်မယ်

ပြည်တွင်း IPsec VPN ပေါ်တွင် 1.5 အစီအမံများ။ စမ်းသပ်ခြင်း

ယခုကျွန်ုပ်သည် virtual machine ကိုစတင်သည်။ စတင်ပြီးပြီးချင်း၊ တံခါးပေါက်သည် အသုံးပြုသူအမည်နှင့် စကားဝှက်တစ်ခု လိုအပ်သည်။

S-Terra Gateway တွင် မတူညီသောအကောင့်များဖြင့် ကွန်ဆိုးလ်များစွာရှိသည်။ သီးခြားဆောင်းပါးတစ်ခုတွင် ၎င်းတို့၏နံပါတ်ကို ကျွန်ုပ်ရေတွက်ပါမည်။ အခုအတွက်တော့:
Login as: administrator
Password: s-terra

ကျွန်ုပ်သည် တံခါးပေါက်ကို စတင်နေပါသည်။ ကနဦးလုပ်ဆောင်ခြင်းဆိုသည်မှာ လိုင်စင်တစ်ခုဝင်ရောက်ခြင်း၊ ဇီဝကျပန်းနံပါတ်ဂျင်နရေတာစနစ်ထည့်သွင်းခြင်း (ကီးဘုတ် simulator - ကျွန်ုပ်၏မှတ်တမ်းသည် 27 စက္ကန့်ဖြစ်သည်) နှင့် ကွန်ရက်ကြားခံမြေပုံတစ်ခုဖန်တီးခြင်း။

ကွန်ရက်ချိတ်ဆက်မှုများ၏မြေပုံ။ ပိုလွယ်လာတယ်။

ဗားရှင်း 4.2 သည် လက်ရှိအသုံးပြုသူကို မက်ဆေ့ခ်ျဖြင့် နှုတ်ဆက်သည်-

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

တက်ကြွသောအသုံးပြုသူ (အမည်မသိအင်ဂျင်နီယာတစ်ဦး၏အဆိုအရ) သည် စာရွက်စာတမ်းမပါဘဲ မည်သည့်အရာကိုမဆို လျင်မြန်စွာ သတ်မှတ်ပေးနိုင်သည့် အသုံးပြုသူဖြစ်သည်။

အင်တာဖေ့စ်ပေါ်တွင် IP လိပ်စာတစ်ခုသတ်မှတ်ရန်မကြိုးစားမီ တစ်ခုခုမှားယွင်းနေပါသည်။ ဒါတွေအားလုံးက network interface မြေပုံအကြောင်းပါ။ လုပ်ဆောင်ရန် လိုအပ်သည်-

/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 phye eth0 FastEthernet0/0

အင်တာဖေ့စ်များ၏ ယုတ္တိတန်သော ဒီဇိုင်းများကို နာမည်တူများဟုခေါ်သည်။ နာမည်ဝှက်များကို /etc/ifaliases.cf ဖိုင်တွင် သိမ်းဆည်းထားသည်။
ဗားရှင်း 4.3 တွင်၊ virtual machine ကိုပထမဆုံးစတင်သောအခါ၊ အင်တာဖေ့စ်မြေပုံကိုအလိုအလျောက်ဖန်တီးသည်။ အကယ်၍ သင်သည် virtual machine တွင် network interfaces အရေအတွက်ကိုပြောင်းလဲပါက၊ ထို့နောက် interface map ကိုပြန်လည်ဖန်တီးပါ။

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

အစီအစဉ် 1- GRE-over-IPsec

ငါသည် ပုံတွင်ပြထားသည့်အတိုင်း virtual gateways နှစ်ခုကို အသုံးချပြီး၊

ပြည်တွင်း 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 စနစ်ထည့်သွင်းပါ။

တရားဝင် scripts များမှ GRE ကိုတည်ဆောက်ခြင်း၏ဥပမာတစ်ခုကိုယူပါ။ အကြောင်းအရာများနှင့် /etc/network/interfaces.d directory တွင် 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

C-Terra Gateway တွင် built-in packet sniffer - tcpdump ရှိသည်။ ငါ pcap ဖိုင်တစ်ခုသို့ traffic dump ကိုရေးပါလိမ့်မည်-

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 parameters တွေကို ငါသတ်မှတ်ထားပါတယ်-

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

ကျွန်ုပ်သည် crypto မြေပုံကိုဖန်တီးပြီး 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 မှတဆင့် လမ်းကြောင်းပြောင်းခြင်းကို ပြင်ဆင်ပါ။
  • GRE အင်တာဖေ့စ်တွင် cryptomap ကိုဆွဲထားပါ။

ပုံမှန်အားဖြင့်၊ Cisco-like gateway console တွင် GRE interface မရှိပါ။ ၎င်းသည် operating system တွင်သာရှိသည်။

ကျွန်ုပ်သည် Cisco-like console သို့ GRE interface ကိုထည့်သည်။ ဒါကိုလုပ်ဖို့၊ /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-like console တွင် interface ဒီဇိုင်းဖြစ်သည်။

ဖိုင်၏ hash ကို ပြန်လည်တွက်ချက်ပါသည်။

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

SUCCESS:  Operation was successful.

ယခု Tunnel0 အင်တာဖေ့စ်သည် Cisco-like console တွင်ပေါ်လာသည်-

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

ကျွန်ုပ်သည် cryptomap ကို 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


source: www.habr.com

မှတ်ချက် Add