802.1Q لإدارة GOST L2VPN أو كيفية توفير المال على تحديثات البرامج





موقف



لا بد لي من إحضار اتصال VPN بين موقعين على الشبكة. في غرفة الخادم ، على ما يبدو ، كانت هناك بوابات أمان C-Terra Gateway الإصدار 4.2. المخطط بسيط. حتى أن البائع نشر برنامج تكوين موصى به. لكن ... البرنامج النصي للمورد يستخدم ثلاث واجهات للشبكة ، والبوابات الخاصة بي بها اثنتان فقط.



أقوم بإعداد القهوة ، وتذكر CCNA الخاصة بي ، وأحاول استخدام ما لدي - منافذ مجانية في المفاتيح المُدارة.



شبكتي



شبكتي عبارة عن موقعين منفصلين جغرافيًا في مجال بث واحد. مساحة العنوان: 10.10.205.0/24:







على يد اثنين من بوابتي الأمان C-Terra Gateway الإصدار 4.2 مع حزمة C-Terra L2.

حول



حزمة C-Terra L2 تسمح لك الحزمة بتبديل واجهة بوابة واحدة أو أكثر إلى وضع PROMISC. تعترض واجهة PROMISC إطارات ارتباط البيانات ، وتقوم C-Terra L2 بتغليفها في UDP.

ثم يتم تشفير حزم UDP (مغلفة في ESP). يؤدي هذا إلى إنشاء اتصال L2-over-L3 VPN. تم تثبيت C-Terra L2 مسبقًا على جميع بوابات الأمان ويتم تنشيطه بترخيص منفصل.


في السيناريو الموصى به ، توجد بوابات الأمان على حافة الشبكة ، ويتم تخصيص واجهة منفصلة للإدارة:







لتسهيل وصف الواجهات:



  • Gi0 / 0 - واجهات PROMISC ؛
  • Gi0 / 1 - واجهات L3 WAN ؛
  • Gi0 / 2 - واجهات إدارة مخصصة. أفهم أنه يجب علي إدارة بوابة الأمان الثانية عبر نفق VPN.


القرار



انتهى فنجان القهوة الأول بينما كنت أقرأ في Habré حوالي 802.1Q - تذكرت CCNA. تم تبريد الكوب الثاني (سأقوم بتسخينه في الميكروويف) أثناء تبديل الجهاز ، كما هو موضح في الشكل:







أميز ثلاثة أنواع من حركة المرور:



  • حركة المرور الرئيسية بين أجهزة R1 و R2. سأقوم بتعيينها على أنها بيانات مجمعة وأضعها في VLAN 205. يجب تشفير البيانات المجمعة قبل النقل بين المواقع ؛
  • حركة إدارة البوابة - MGMT. سآخذها إلى VLAN 10. يجب تشفير حركة مرور MGMT إلى البوابة في الموقع البعيد ؛
  • BULK DATA و MGMT بعد التشفير سأقوم بتعيينها كـ ESP DATA وأضعها في VLAN 100.


وفقًا لتقديراتي ، سيبدو نقل BULK DATA / ESP DATA على الشبكة كما يلي (تمثل الخطوط الخضراء حركة مرور غير مشفرة ، وحركة مرور مشفرة باللون الأحمر):







نقل MGMT للتحكم في البوابة في الموقع المحلي: نقل







MGMT / ESP DATA للتحكم في البوابة في الموقع البعيد:







5 خطوات للإعداد



الخطوة 1. التعامل مع BULK DATA



حددت شبكة VLAN 205 منفصلة لبيانات BULK DATA لهذا ، قمت بتعيين واجهة Gi0 / 2 لأجهزة SW1 و SW2 على وضع الوصول مع VLAN 205:



sw1(config)#
interface gi0/2
    description BULK_TO_R1
    switchport access vlan 205
    no shutdown

sw2(config)#
interface gi0/2
  description BULK_TO_R2
  switchport access vlan 205
  no shutdown


أقوم بعمل واجهات Gi0 / 0 من واجهات GW1 و GW2 PROMISC. لتمرير BULK DATA إلى واجهة PROMISC ، أقوم بتهيئة الجذع لواجهة PROMISC:



sw1(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1
  switchport mode trunk
  switchport trunk allowed vlan 205
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW2
  switchport mode trunk
  switchport trunk allowed vlan 205
  switchport trunk encapsulation dot1q
  no shutdown






الخطوة 2. التعامل مع MGMT المحلي



وفقًا للخطة ، تحمل حركة مرور MGMT شبكة VLAN 10. مساحة العنوان لشبكة VLAN 10 هي 10.76.76.128/28.



على جهاز SW1 و SW2 ، أقوم بإنشاء واجهات افتراضية vlan10:



sw1(config)#
interface vlan10
  ip address 10.76.76.129 255.255.255.240
  no shutdown 

sw2(config)#
interface vlan10
  ip address 10.76.76.142 255.255.255.240
  no shutdown


أقوم بإنشاء VLAN 10 أصلية VLAN حتى لا يتم تكوين واجهات 802.1Q على البوابة:



sw1(config)#
interface gi0/1
  description LINK_TO_WAN_GW1
  switchport mode trunk
  switchport trunk allowed vlan 10
  switchport trunk native vlan 10
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/1
  description LINK_TO_WAN_GW2
  switchport mode trunk
  switchport trunk allowed vlan 10
  switchport trunk native vlan 10
  switchport trunk encapsulation dot1q
  no shutdown






أقوم بتكوين واجهات Gi0 / 1 لبوابات الأمان:



GW1(config)#
interface gi0/1
   ip address 10.76.76.137 255.255.255.240
   no shutdown

GW2(config)#
interface gi0/1
  ip address 10.76.76.138 255.255.255.240
  no shutdown


الآن GW1 متاح عبر SSH من جهاز SW1:



sw1#ssh –l root 10.76.76.137
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW1~#


وبالمثل ، يمكن الوصول إلى GW2 عبر SSH من جهاز SW2:



sw2#ssh –l root 10.76.76.138
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW2~#


لطيفة ، سكب كوبًا آخر من القهوة.



الخطوة 3. التعامل مع MGMT للبوابة في الموقع



البعيد يجب أن تكون حركة مرور MGMT إلى البوابة في الموقع البعيد مشفرة. للقيام بذلك ، سأقوم برمي VLAN 10 عبر VPN. ستدخل كل حركة المرور التي يتم اعتراضها من واجهة PROMISC إلى نفق VPN. سأضيف إلى الجذع إلى واجهة PROMISC VLAN 10:



sw1(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1  
  switchport trunk allowed vlan 10, 205

sw2(config)#
interface gi0/0
  description LINK_TO_PROMISC_GW1  
  switchport trunk allowed vlan 10, 205


لا تضيع نصف ساعة في استكشاف الأخطاء وإصلاحها!



يجب ألا تحصل واجهة PROMISC على بيانات ESP ، لذلك من المهم استبعاد VLAN 100 من خطوط LINK_TO_PROMISC_GW1 و LINK_TO_PROMISC_GW2 في الخيارات التالية:



switchport trunk allowed vlan 1-99,101-4096


الخطوة 4. وصلت إلى ESP DATA



I حدد ESP DATA في VLAN 100 على بوابات GW1 و GW2. مساحة العنوان لـ VLAN 100: 192.168.10.0/30



للقيام بذلك ، على واجهة WAN Gi0 / 1 للبوابات GW1 و GW2 ، قمت بإنشاء واجهة 802.1Q Gi0 / 1.100.

ستنتمي حركة المرور الصادرة من هذه الواجهة إلى VLAN 100:



GW1(config)#
interface gi0/1.100
   ip address 192.168.10.1 255.255.255.252
   no shutdown

GW2(config)#
interface gi0/1.100
  ip address 192.168.10.2 255.255.255.252
  no shutdown






أسمح بمرور VLAN 100 إلى الخط الرئيسي LINK_TO_WAN_GW1 و LINK_TO_WAN_GW2:



sw1(config)#
interface gi0/1
  description LINK_TO_WAN_GW1
  switchport trunk allowed vlan 10,100

sw2(config)#
interface gi0/1
  description LINK_TO_WAN_GW2
  switchport trunk allowed vlan 10,100


يجب أن ينقل الارتباط بين الأجهزة SW1 و SW2 أيضًا حركة مرور VLAN 100 الموسومة:



sw1(config)#
interface gi0/3
  description LINK_TO_SW2
  switchport mode trunk
  switchport trunk allowed vlan 100
  switchport trunk encapsulation dot1q
  no shutdown

sw2(config)#
interface gi0/3
  description LINK_TO_SW1
  switchport mode trunk
  switchport trunk allowed vlan 100
  switchport trunk encapsulation dot1q
  no shutdown


الخطوة 5. تكوين C-Terra L2 و IPsec VPN باستخدام GOST



C-Terra L2 يتم تكوينه في نظام التشغيل باستخدام ملف التكوين /opt/VPNagent/etc/l2.conf. بالنسبة لـ GW1:



vif tap0
bridge br0
capture eth0
remote 192.168.10.2
mssfix 1400
passtos


حيث:



الالتقاط eth0 - حدد واجهة PROMISC ، 192.168.10.2 عن بُعد - عنوان IP لنظير IPsec (واجهة Gi0 / 1.100 لبوابة GW2).



بالنسبة لـ GW2:



vif tap0
bridge br0
capture eth0
remote 192.168.10.1
mssfix 1400
passtos


تكوين معلمات IKE / IPsec. بالنسبة لـ GW1:

ستستخدم Gateways أسماء المضيف كمعرفات ، وتعيين مفتاح محدد مسبقًا للمصادقة (تحتاج قواعد الاستخدام للمصادقة إلى استخدام الشهادات الرقمية ، وسوف أقوم بتغييرها لاحقًا):



GW1(config)#
crypto isakmp identity hostname
ip host GW2 192.168.10.2
crypto isakmp key KEY hostname GW2


تكوين معلمات اكتشاف الأقران الميت (DPD):



GW1(config)#
crypto isakmp keepalive 10 2
crypto isakmp keepalive retry-count 5


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



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


قمت بتعيين معلمات IPsec المرحلة الثانية:



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


نظرًا لأن الإطارات التي تم اعتراضها بواسطة واجهة PROMISC L2 مغلفة في UDP ، فإن قائمة الوصول التي تحدد حركة المرور للتشفير:



GW1(config)#
ip access-list extended LIST
   permit udp host 192.168.10.1 host 192.168.10.2


أقوم بإنشاء خريطة تشفير وربطها بـ Gi0 / 1.100:



GW1(config)#
crypto map CMAP 1 ipsec-isakmp
  match address LIST
  set transform-set TSET
  set peer 192.168.10.2
interface gi0/1.100
  crypto map CMAP


أحدد المسار الافتراضي عبر عنوان IP الخاص بنظير IPsec:



GW1(config)#
ip route 0.0.0.0 0.0.0.0 192.168.10.2 	


تكوين بوابة GW2:



GW2(config)#
crypto isakmp identity hostname
ip host GW1 192.168.10.1
crypto isakmp key KEY hostname GW1
crypto isakmp keepalive 10 2
crypto isakmp keepalive retry-count 5
crypto isakmp policy 1
  encr gost
  hash gost3411-256-tc26
  auth pre-share
  group vko2
crypto ipsec transform-set TSET esp-gost28147-4m-imit
  mode tunnel
ip access-list extended LIST
  permit udp host 192.168.10.2 host 192.168.10.1
crypto map CMAP 1 ipsec-isakmp
  match address LIST
  set transform-set TSET
  set peer 192.168.10.1
interface gi0/1.100
  crypto map CMAP
ip route 0.0.0.0 0.0.0.0 192.168.10.1


حدث؟



من الجهاز R1 ، يتم تنفيذ الأمر ping إلى R2:



R1#ping 10.10.205.2 
Type escape sequence to abort. 

Sending 5, 100-byte ICMP Echos to 10.10.205.2, timeout is 2 seconds: 
!!!!! 
Success rate is 100 percent (5/5), round-trip min/avg/max = 2/2/3 ms</code>

R2   ICMP.  ?  ARP   R1  R2:

<source>R1#show arp 
Protocol  Address          Age (min)  Hardware Addr   Type   Interface 
Internet  10.10.205.1             -   aabb.cc00.5020  ARPA   GigabitEthernet0/2 
Internet  10.10.205.2            54   aabb.cc00.6020  ARPA   GigabitEthernet0/2

R2#show arp 
Protocol  Address          Age (min)  Hardware Addr   Type   Interface 
Internet  10.10.205.1            52   aabb.cc00.5020  ARPA   GigabitEthernet0/2 
Internet  10.10.205.2             -   aabb.cc00.6020  ARPA   GigabitEthernet0/2


تفترض أجهزة R1 و R2 أنها على نفس الشبكة الفرعية للبث.



تعتبر أجهزة SW1 و SW2 أنها متصلة ببعضها البعض بواسطة رابطين:



sw1#show cdp neighbors
Device ID    Local Intrfce   Holdtme     Capability  Platform  Port ID 
sw2          Gi0/0           146             R S I  Linux Uni Gi0/0 
sw2          Gi0/3           146             R S I  Linux Uni Gi0/3 
R1           Gi0/2           156              R B   Linux Uni Gi0/2

sw2#show cdp neighbors
Device ID    Local Intrfce   Holdtme     Capability  Platform  Port ID 
sw1          Gi0/0           140             R S I  Linux Uni Gi0/0 
sw1          Gi0/3           140             R S I  Linux Uni Gi0/3 
R2           Gi0/2           156              R B   Linux Uni Gi0/2


محاولة الاتصال بـ GW2 عبر SSH من جهاز SW1:



sw1#ssh –l root 10.76.76.138
Password:
S-Terra Gate 4.2.18201 (amd64)
root@GW2~#


الخلاصة: الموقعان 1 و 2 مرتبطان بشفافية في مجال بث واحد.



سأتحقق مما إذا كانت القناة تحتوي على تشفير: إحصائيات نفق IPsec على جهاز GW1:



root@GW1:~# 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 (192.168.10.1,500)-(192.168.10.2,500) active 31378 31502

IPsec connections: 
Num Conn-id (Local Addr,Port)-(Remote Addr,Port) Protocol Action Type Sent Rcvd 
1 2 (192.168.10.1,*)-(192.168.10.2,*) 17 ESP tunn 508224 27672


تم إنشاء نفق IPsec بين 192.168.10.1 و 192.168.10.2.



لقد تحققت من أن حركة مرور ESP فقط تنتقل بين أجهزة SW1 و SW2 ، دون احتساب STP. فيما يلي تفريغ حركة المرور من واجهة gi0 / 3 الخاصة بـ SW1:







في النهاية



شربت ثلاثة أكواب من القهوة - ثم لم أنم طوال الليل ، لكن لم أضطر إلى شراء أجهزة جديدة وتحديثها. ربما كان الأمر يستحق ذلك ، في الإصدار 4.3 ، أحضر البائع L2 إلى الذهن. أفكر في أخذ الإصدار 4.3 للاختبار.



مهندس مجهول

t.me/anonimous_engineer



All Articles