තත්ත්වය
මට මාස තුනක් සඳහා C-Terra VPN නිෂ්පාදන අනුවාදය 4.3 හි demo අනුවාදයක් ලැබුණි. නව අනුවාදයට මාරු වීමෙන් පසු මගේ ඉංජිනේරු ජීවිතය පහසු වනු ඇත්දැයි සොයා බැලීමට මට අවශ්යයි.
අද අපහසු නැත, ක්ෂණික කෝපි 3 කින් 1 බෑගයක් ප්රමාණවත් විය යුතුය. මම කියන්නම් demos ගන්නේ කොහොමද කියලා. මම GRE-over-IPsec සහ IPsec-over-GRE යෝජනා ක්රම ගොඩනැගීමට උත්සාහ කරමි.
Demo එකක් ගන්නේ කොහොමද
නිරූපණයක් ලබා ගැනීම සඳහා ඔබට අවශ්ය බව රූපයෙන් පහත දැක්වේ:
- වෙත ලිපියක් ලියන්න [විද්යුත් ආරක්ෂිත] ආයතනික ලිපිනයකින්;
- ලිපියේ, ඔබේ සංවිධානයේ TIN සඳහන් කරන්න;
- නිෂ්පාදන සහ ඒවායේ ප්රමාණය ලැයිස්තුගත කරන්න.
Demos මාස තුනක් සඳහා වලංගු වේ. වෙළෙන්දා ඔවුන්ගේ ක්රියාකාරිත්වය සීමා නොකරයි.
රූපය පුළුල් කිරීම
Security Gateway demo යනු අතථ්ය යන්ත්ර රූපයකි. මම භාවිතා කරන්නේ VMWare වැඩපොළයි. සහාය දක්වන හයිපර්වයිසර් සහ අථත්යකරණ පරිසරයන්හි සම්පූර්ණ ලැයිස්තුවක් වෙළෙන්දාගේ වෙබ් අඩවියේ ඇත.
ඔබ ආරම්භ කිරීමට පෙර, පෙරනිමි අථත්ය යන්ත්ර රූපයේ ජාල අතුරුමුහුණත් නොමැති බව කරුණාවෙන් සලකන්න:
තර්කනය පැහැදිලිය, පරිශීලකයාට අවශ්ය තරම් අතුරුමුහුණත් එකතු කළ යුතුය. මම එකවර හතරක් එකතු කරමි:
දැන් මම virtual machine එක පටන් ගන්නවා. දියත් කළ වහාම, ද්වාරයට පරිශීලක නාමයක් සහ මුරපදයක් අවශ්ය වේ.
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) සහ සිස්කෝ වැනි කොන්සෝලය (FastEthernet0/0) තුළ ඒවායේ තාර්කික තනතුරු සිතියම්ගත කිරීම අඩංගු ජාල අතුරුමුහුණත් සිතියමක් නිර්මාණය වේ:
#Unique ID iface type OS name Cisco-like name
0000:02:03.0 phye eth0 FastEthernet0/0
අතුරුමුහුණත්වල තාර්කික තනතුරු අන්වර්ථ ලෙස හැඳින්වේ. අන්වර්ථ නාම /etc/ifaliases.cf ගොනුවේ ගබඩා කර ඇත.
4.3 අනුවාදයේ, අථත්ය යන්ත්රය මුලින්ම ආරම්භ කරන විට, අතුරුමුහුණත් සිතියමක් ස්වයංක්රීයව නිර්මාණය වේ. ඔබ අතථ්ය යන්ත්රයේ ජාල අතුරුමුහුණත් ගණන වෙනස් කරන්නේ නම්, කරුණාකර අතුරුමුහුණත් සිතියම ප්රතිනිර්මාණය කරන්න:
/bin/netifcfg enum > /home/map
/bin/netifcfg map /home/map
systemctl restart networking
යෝජනා ක්රමය 1: GRE-over-IPsec
මම අතථ්ය ද්වාර දෙකක් යොදවමි, රූපයේ දැක්වෙන පරිදි මම මාරු කරමි:
පියවර 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
C-Terra Gateway හි බිල්ට් පැකට් ස්නයිෆර් එකක් ඇත - 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 උමග ක්රියාත්මකයි:
පියවර 3. GOST GRE සමඟ සංකේතනය කරන්න
මම හඳුනාගැනීමේ වර්ගය - ලිපිනය අනුව සකස් කළෙමි. පූර්ව නිශ්චිත යතුරක් සහිත සත්යාපනය (භාවිත නියමයන්ට අනුව, ඩිජිටල් සහතික භාවිතා කළ යුතුය):
VG1(config)#
crypto isakmp identity address
crypto isakmp key KEY address 172.16.1.254
මම IPsec අදියර I පරාමිතීන් සකසමි:
VG1(config)#
crypto isakmp policy 1
encr gost
hash gost3411-256-tc26
auth pre-share
group vko2
මම IPsec අදියර 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 ට්රැෆික් ඩම්ප් එකේ පැකට් නොමැත:
නිගමනය: GRE-over-IPsec යෝජනා ක්රමය නිවැරදිව ක්රියා කරයි.
රූපය 1.5: IPsec-over-GRE
මම ජාලයේ IPsec-over-GRE භාවිතා කිරීමට අදහස් නොකරමි. මට අවශ්ය නිසා මම එකතු කරනවා.
GRE-over-IPsec යෝජනා ක්රමය වෙනත් ආකාරයකින් යෙදවීමට:
- සංකේතාංකන ප්රවේශ ලැයිස්තුව නිවැරදි කරන්න - LAN1 සිට LAN2 දක්වා ඉලක්කගත ගමනාගමනය සහ අනෙක් අතට;
- GRE හරහා මාර්ගගත කිරීම වින්යාස කරන්න;
- GRE අතුරුමුහුණත මත ගුප්ත සිතියමක් එල්ලන්න.
පෙරනිමියෙන්, සිස්කෝ වැනි ගේට්වේ කොන්සෝලය තුළ GRE අතුරු මුහුණතක් නොමැත. එය පවතින්නේ මෙහෙයුම් පද්ධතියේ පමණි.
මම සිස්කෝ වැනි කොන්සෝලයට 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-over-GRE නිවැරදිව ක්රියා කරයි.
ප්රතිඵල
කෝපි කෝප්පයක් ප්රමාණවත් විය. මම ආදර්ශන අනුවාදයක් ලබා ගැනීම සඳහා උපදෙස් සටහන් කළෙමි. GRE-over-IPsec වින්යාස කර ඇති අතර අනෙක් අතට යොදවා ඇත.
4.3 අනුවාදයේ ජාල අතුරුමුහුණත් සිතියම ස්වයංක්රීයයි! මම තව දුරටත් පරීක්ෂණ කරනවා.
නිර්නාමික ඉංජිනේරු
t.me/anonymous_engineer
මූලාශ්රය: www.habr.com