1.5 مخططات على IPsec VPN المحلي. اختبار العروض

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

الوضع

تلقيت نسخة تجريبية من الإصدار 4.3 من منتجات C-Terra VPN لمدة ثلاثة أشهر. أريد معرفة ما إذا كانت حياتي الهندسية ستصبح أسهل بعد التبديل إلى الإصدار الجديد.

اليوم ليس بالأمر الصعب ، كيس واحد من القهوة سريعة التحضير 3 في 1 يجب أن يكون كافياً. سأخبرك بكيفية الحصول على عروض توضيحية. سأحاول إنشاء مخططات GRE-over-IPsec و IPsec-over-GRE.

كيفية الحصول على عرض

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

ويترتب على الشكل أنه من أجل الحصول على عرض توضيحي تحتاج إلى:

  • اكتب رسالة إلى [البريد الإلكتروني محمي] من عنوان الشركة ؛
  • في الرسالة ، حدد رقم التعريف الضريبي لمؤسستك ؛
  • قائمة المنتجات وكميتها.

العروض صالحة لمدة ثلاثة أشهر. البائع لا يحد من وظائفهم.

توسيع الصورة

العرض التوضيحي لبوابة الأمان هو صورة آلة افتراضية. أنا أستخدم VMWare Workstation. تتوفر قائمة كاملة من برامج Hypervisor المدعومة وبيئات المحاكاة الافتراضية على موقع البائع على الويب.

قبل أن تبدأ ، يرجى ملاحظة أنه لا توجد واجهات شبكة في صورة الجهاز الظاهري الافتراضية:

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

المنطق واضح ، يجب على المستخدم إضافة العديد من الواجهات التي يحتاجها. سأضيف أربعة مرة واحدة:

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

الآن أبدأ تشغيل الآلة الافتراضية. بعد الإطلاق مباشرة ، تتطلب البوابة اسم مستخدم وكلمة مرور.

هناك العديد من وحدات التحكم في 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 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.5 مخططات على IPsec VPN المحلي. اختبار العروض

الخطوة 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 من النصوص الرسمية. أقوم بإنشاء ملف gre1 في الدليل /etc/network/interfaces.d بالمحتويات.

بالنسبة إلى 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

أبدأ الأمر ping بين واجهات GRE:

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 قيد التشغيل:

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

الخطوة 3. التشفير باستخدام GOST GRE

أقوم بتعيين نوع الهوية - عن طريق العنوان. المصادقة بمفتاح محدد مسبقًا (وفقًا لشروط الاستخدام ، يجب استخدام الشهادات الرقمية):

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

لقد قمت بتعيين معلمات IPsec المرحلة الأولى:

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:

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

الخلاصة: مخطط GRE-over-IPsec يعمل بشكل صحيح.

الشكل 1.5: IPsec-over-GRE

لا أخطط لاستخدام IPsec-over-GRE على الشبكة. أجمع لأنني أريد ذلك.

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

لنشر مخطط GRE-over-IPsec بالعكس:

  • إصلاح قائمة وصول التشفير - حركة المرور المستهدفة من LAN1 إلى LAN2 والعكس صحيح ؛
  • تكوين التوجيه من خلال GRE ؛
  • قم بتعليق خريطة التشفير على واجهة GRE.

بشكل افتراضي ، لا توجد واجهة GRE في وحدة تحكم البوابة الشبيهة بـ Cisco. إنه موجود فقط في نظام التشغيل.

أقوم بإضافة واجهة GRE إلى وحدة التحكم التي تشبه Cisco. للقيام بذلك ، أقوم بتحرير ملف /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:

1.5 مخططات على IPsec VPN المحلي. اختبار العروض

الخلاصة: IPsec-over-GRE يعمل بشكل صحيح.

نتائج

فنجان واحد من القهوة كان كافيا. لقد رسمت تعليمات للحصول على نسخة تجريبية. تكوين GRE-over-IPsec ونشره بالعكس.

خريطة واجهات الشبكة في الإصدار 4.3 تلقائية! أنا أختبر أكثر.

مهندس مجهول
t.me/anonymous_engineer


المصدر: www.habr.com

إضافة تعليق