Картинка

БЛОГ про

все цікаве у світі телекомунікацій

CISCO – Mikrotik — FLEXVPN

2021-12-29
Автор: Телесфера

У даній документації розглядається приклад робочої конфігурації з'єднання роутера CISCO з роутером Mikrotik через тунель GRE з IPSec шифруванням в транспортному режимі. У побудові IPsec буде використовуватися IKEv2 та аутентифікація за PSK. Усередині тунелю буде піднято протокол динамічної маршрутизації OSPF для обміну маршрутами про мережі, що знаходяться за peer-ами.

Обладнання та вихідні дані:

  1. Mikrotik hEX, RouterOS - 7.1beta5
  2. Cisco ISR 4331 – IOS 16.9.6

Припускаємо, що між маршрутизаторами вже є L3 зв'язаність.

Схема мережі

Конфігурація Mikrotik

Незважаючи на те, що mikrotik має свій власний CLI, ми будемо налаштовувати через GUI використовуючи “Winbox”. У додатку до документації буде додано CLI-конфіг mikrotik.

1. Створення GRE тунелю

Відкриваємо Winbox->interfaces -> GRE tunnel -> new

Обов'язково вказуємо ім'я та tunnel destination (Remote Address) GRE тунелю. Оскільки передбачається, що IP адреса на зовнішній інтерфейс Mikrotik буде виходити по DHCP, то в полі Local Address, ми або нічого не вказуємо або вводимо “0.0.0.0”

2. Призначення IP адреси на тунель GRE.

IP -> Address -> new

В даному меню вводимо IP адресу GRE тунелю обов'язково з маскою не нижче 31 (це потрібно для подальшої коректної роботи OSPF) і вибираємо GRE інтерфейс за ім'ям, якому хочемо призначити IP address (ім'я задається в пункті №1)

3. Переходимо безпосередньо до налаштування самого IPsec. Насамперед, потрібно створити IKEv2 профіль. Переходимо IP -> IPsec -> Profiles -> new. Тут вказуємо ім'я профілю, алгоритми хешування та шифрування, DH Group, Lifitime IKEv2 SA, параметри роботи DPD.

4. Створюємо новий IPsec Peer. Переходимо IP->IPsec->Peer->new. Даємо ім'я peer-у, вказуємо його IP address, у полі Local Address нічого не вказуємо або вказуємо «0.0.0.0», як налаштуваннях GRE інтерфейсу, оскільки IP адреса нашому Mikrotik видається по DHCP. Вибираємо профіль, створений у попередньому пункті та версію IKE.

5. Потрібно налаштувати аутентифікацію сертифікатів між peer-ами. Переходимо IP -> IPsec -> Identities -> new. Тут ми вибираємо peer, створений у попередньому пункті, вибираємо Auth. Method – pre-shared key та вводимо PSK у поле Secret. Всі інші налаштування можна переглянути на малюнку нижче.

6. Створюємо IPsec Proposal, даємо йому ім'я, вказуємо алгоритми шифрування та хешування, час життя IPsec SA. PFS Group у нашому випадку не використовується.

7. Тепер залишилося в налаштуваннях IPsec створити політику шифрування, в якій насамперед вказуємо який трафік шифрувати, у нашому випадку це GRE. Ідемо в IP -> IPsec -> Policies -> new -> General. Тут вибираємо знову Peer, створий в пункті №6, звертаємо увагу на те, щоб галочка поруч із Tunnel не стояла, тому що нам треба використовувати Transport mode. Якщо використовуються Transport mode, то Src і Dst Address не треба вказувати, вони підставляються автоматично при натисканні кнопки Apply. Якщо ми хочемо внести зміни в Src і Dst адреси, це треба робити в налаштуваннях Peer (пункт №6). Оскільки між peer-ами нам треба зашифрувати GRE трафік, то в полі “Protocol” вказуємо 47 – це номер протоколу GRE

Далі переходимо на вкладку Action. Тут перевіряємо, щоб у полі “Action” стояв “encrypt”, у “IPsec Protocols” вибираємо “esp” та поле “Proposal” вибираємо Proposal, створений у пункті №6.

Щоб переглянути статус тунелю на Mikrotik, потрібно перейти IP -> IPsec -> Active Peers. Якщо тунель успішно піднявся, State тунель повинен бути “Established” і лічильники Tx/Rx packets повинні зростати.

Але лічильники почнуть рости після того, як усередині тунелю піде трафік, а цього не буде, доки не будуть підняті з обох боків протоколи динамічної маршрутизації в нашому випадку OSPF. Налаштування OSPF розписані в наведених нижче пунктах.

8. Налаштування OSPF починається зі створення нового OSPF-Instance. Routing -> OSPF -> Instances -> new. Вводимо ім'я Instance, все інше вказуємо як на малюнку нижче.

9. Створюємо OSPF Area. Routing -> OSPF -> Areas -> new. Даємо їй ім'я, пов'язуємо її з нашим OSPF Instance, створеним у пункті №10, в нашому випадку ми використовуємо backbone area, тому Area ID у неї – 0.0.0.0.

10. Треба включити OSPF на інтерфейсах, насамперед на GRE. Routing -> OSPF -> Interface Templates -> new. Вибираємо інтерфейс, на якому включаємо OSPF, Area, створену в пункті № 9, вибираємо мережу, яка налаштована на інтерфейсі GRE. У пункті № 2 було описано, що мережа повинна бути обов'язково з маскою не нижче 31, якщо буде вказана маска 32, то OSPF сусідство з Cisco не підніметься. У "Network type" вибираємо "ptp unnumbered", оскільки на cisco тунель приземляється на virtual-template. Перевіряємо OSPF Hello Interval.

Якщо на протилежному боці все налаштовано, то має піднятися OSPF сусідство, і лічильники пакетів Tx/Rx повинні почати зростати (пункт №9). Перевірити ospf сусідство можна в Routing -> OSPF -> Neighbors, State має бути "Full".

Маршрути, що прийшли по OSPF, можна подивитися в IP-Routes. Маршрути, що прийшли OSPF, мають прапор Dao. У колонці Gateway вказаний інтерфейс, через який піде трафік у бік мережі.

На цьому конфігурація Mikrotik завершена, ще потрібно перевірити Firewall, щоб не був заблокований легітимний трафік.

У цьому прикладі, дозволено весь трафік. Налаштовується тут IP->Firewall->Filter rules.

І налаштований dynamic Pat. Налаштовується тут IP->Firewall->NAT.

Конфігурація CISCO

Маршрутизатор Cisco ISR 4331 ми будемо налаштовувати через CLI.

1. Нам треба переконатися, що у конфізі немає рядка crypto ikev2 fragmentation mtu <>

Якщо цей рядок присутній, його треба обов'язково прибрати. Cisco у 4 пакеті побудови IKEv2 посилає цей параметр як payload, але Mikrotik його не розуміє і не піднімає тунель.

2. Створюємо ikev2 proposal даємо йому ім'я PROP-1, вказуємо алгоритми шифрування та хешування, і diffie hellman group.

crypto ikev2 proposal PROP-1

encryption aes-cbc-256 // Алгоритм шифрування aes-cbc-256

integrity sha256 // Алгоритм хешування sha256

group 5 //diffie hellman group - 5

Зв'язуємо Ikev2 proposal з ikev2 policy.

crypto ikev2 policy IKEV2_POLICY

proposal PROP-1

3. Створюємо KEYRING, в якому прописуємо PSK, для віддалених peer-ів

crypto ikev2 keyring KEYRING

peer ALL

address 0.0.0.0 0.0.0.0 //цей Keyring підходить для всіх peer-ів

pre-shared-key local cisco123

pre-shared-key remote cisco123

4. Створюємо ikev2 profile.

crypto ikev2 profile VTI_PROFILE_MIKR

authentication remote pre-share // використовуємо аутентифікацію по PSK для віддаленого peer-у

authentication local pre-share // використовуємо аутентифікацію по PSK для локального peer-у

keyring local KEYRING// прив'язуємо KEYRING, де знаходиться PSK ключі.

dpd 10 3 periodic // налаштовуємо DPD

virtual-template 2 mode auto // Зв'язуємо profile з virtual-template

5. Створюємо IPSEC transform-set. Даємо йому ім'я (TSET), вказуємо алгоритми шифрування, хешування та задаємо транспортний режим.

crypto ipsec transform-set TSET esp-aes 256 esp-sha512-hmac

mode transport

6. Створюємо ipsec profile, даємо йому ім'я “IPSEC_PROFILE_MIKR” та зв'язуємо його з transform-set, створеного у пункті № 5, та з ikev2 profile, створеного у пункті № 4.

crypto ipsec profile IPSEC_PROFILE_MIKR

set transform-set TSET

set ikev2-profile VTI_PROFILE_MIKR

7. Створюємо loopback інтерфейс і даємо йому IP адресу, ця IP адреса призначається на інтерфейс virtual-template. IP адреса повинна бути обов'язково з 32 маскою - це потрібно для коректної роботи OSPF.

interface Loopback1

ip address 172.16.10.1 255.255.255.255

8. Створюємо virtual-template, даємо номер.

interface Virtual-Template2 type tunnel

ip unnumbered Loopback1 // IP адреса буде братися з loopback1 інтерфейсу

ip ospf dead-interval 40 // позначаємо ospf dead інтервал.

ip ospf mtu-ignore // ospf ігнорує значення mtu

tunnel source GigabitEthernet0/0 // вказуємо фізичний інтерфейс, з якого будуватиметься тунель.

tunnel protection ipsec profile IPSEC_PROFILE_MIKR // вказуємо ipsec profile


9. Піднімаємо ospf

router ospf 1

network 172.16.10.1 0.0.0.0 area 0 // включаємо ospf на інтерфейсі Virtual-Template2.

10. Перевірка

Щоб перевірити піднявся тунель чи ні, потрібно ввести команду:

show crypto ipsec sa peer <ip address remote peer>

 

interface: Virtual-Access1

Crypto map tag: Virtual-Access1-head-0, local addr 10.0.174.253

 

protected vrf: (none)

local ident (addr/mask/prot/port): (10.0.174.253/255.255.255.255/47/0)

remote ident (addr/mask/prot/port): (10.0.200.54/255.255.255.255/47/0)

current_peer 10.0.200.54 port 4500

PERMIT, flags={origin_is_acl,}

#pkts encaps: 68, #pkts encrypt: 68, #pkts digest: 68 // ці лічильники повинні зростати

#pkts decaps: 66, #pkts decrypt: 66, #pkts verify: 66 // ці лічильники повинні зростати

#pkts compressed: 0, #pkts decompressed: 0

#pkts not compressed: 0, #pkts compr. failed: 0

#pkts not decompressed: 0, #pkts decompress failed: 0

#send errors 0, #recv errors 0

 

local crypto endpt.: 10.0.174.253, remote crypto endpt.: 10.0.200.54

plaintext mtu 1442, path mtu 1500, ip mtu 1500, ip mtu idb GigabitEthernet0/0/0

current outbound spi: 0x3F86120(66609440)

PFS (Y/N): N, DH group: none

 

inbound esp sas:

spi: 0xBD3CDFCA(3174883274)

transform: esp-256-aes esp-sha512-hmac ,

in use settings ={Transport, }

conn id: 2499, flow_id: ESG:499, sibling_flags FFFFFFFF80000008, crypto map: Virtual-Access1-head-0

sa timing: remaining key lifetime (k/sec): (4607991/2947)

IV size: 16 bytes

replay detection support: Y

Status: ACTIVE(ACTIVE)

 

inbound ah sas:

 

inbound pcp sas:

 

outbound esp sas:

spi: 0x3F86120(66609440)

transform: esp-256-aes esp-sha512-hmac ,

in use settings ={Transport, }

conn id: 2500, flow_id: ESG:500, sibling_flags FFFFFFFF80000008, crypto map: Virtual-Access1-head-0

sa timing: remaining key lifetime (k/sec): (4607993/2947)

IV size: 16 bytes

replay detection support: Y

Status: ACTIVE(ACTIVE)

 

outbound ah sas:

 

outbound pcp sas:

Перевірити ospf сусідство можна командою show ip ospf neighbor

Приклад

show ip ospf neighbor

 

Neighbor ID Pri State Dead Time Address Interface

172.16.10.4 0 FULL/ - 00:00:32 172.16.10.5 Virtual-Access1

State повинен бути в "FULL", і в полі "інтерфейс" ми маємо значення - "Virtual-Access1". Це означає, що сусідство встановлено через інтерфейс Virtual-Access1.

Цією командою дивимося маршрути, що прийшли OSPF.

show ip route ospf

 

Codes: L - local, C - connected, S - static, R - RIP, M - mobile, B - BGP

D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area

N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2

E1 - OSPF external type 1, E2 - OSPF external type 2

i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2

ia - IS-IS inter area, * - candidate default, U - per-user static route

o - ODR, P - periodic downloaded static route, H - NHRP, l - LISP

a - application route

+ - replicated route, % - next hop override, p - overrides from PfR

 

Gateway of last resort is 10.0.131.1 to network 0.0.0.0

 

10.0.0.0/8 is variably subnetted, 10 subnets, 3 masks

O 10.0.145.0/24 [110/1001] via 172.16.10.5, 11:11:06, Virtual-Access1

У прикладі вище трафік до мережі призначення 10.0.145.0/24 піде через Virtual-Access1 інтерфейс.

Джерело: https://habr.com/ru/post/594957/


Про компанію Телесфера Інтеграція.

Телесфера Інтеграція заснована в 2012 році та являється інтегратором новітніх технологічних рішень для бізнесу.  Ми розробляємо рішення, що роблять Ваш бізнес успішним.

Основні напрямки роботи компанії:

  • Побудова локальних обчислювальних мереж;
  • Налаштування мережевого обладнання передових виробників (Cisco Systems, Aruba Networks та інших);
  • Продаж телекомунікаційного обладнання;
  • Аудит локальних обчислювальних мереж;

e-mail: office@telesphera.net
Телефон: (093) 198-11-82

КОММЕНТАРІ ДО СТАТТІ

Налаштування QoS на пограничному маршрутизаторі Cisco

Налаштування QoS на пограничному маршрутизаторі Cisco
cisco,router,Налаштування,QoS,Налаштування Cisco

Пограничний маршрутизатор в мережі офісу це точка, де вирішується доля всього мережевого трафіку, що прямує в Інтернет. Саме пограничний маршрутизатор вирішує, який трафік надіслати без затримок, а який притримати і пропустити потім.

Чотири причини замінити брандмауер вашої філії удосконаленою захищеною SD-WAN

Чотири причини замінити брандмауер вашої філії удосконаленою захищеною SD-WAN
Aruba Networks,Блог Телесфера,Налаштування Aruba Instant,Налаштування Aruba

Був час, коли рішення SD-WAN були орієнтовані лише на віртуалізацію WAN без особливих міркувань безпеки. Щоб заповнити цю прогалину в безпеці, з'явилися передові безпечні рішення SD-WAN, які включають найвищі можливості захисту від загроз. Фактично розширені функції безпеки, які тепер підтримуються на передових платформах SD-WAN, дозволяють клієнтам повністю відмовитися від виділених міжмережевих екранів філій і ще більше спростити інфраструктуру філій WAN.

Безкомпромісна SASE: Aruba Secure SD-WAN і Netskope SSE

Безкомпромісна SASE: Aruba Secure SD-WAN і Netskope SSE
Aruba Networks,Блог Телесфера,Налаштування Aruba

Програми SaaS, робочі навантаження IaaS, розповсюдження пристроїв IoT і гібридна робоча сила продовжують спонукати підприємства переглядати свої глобальні мережі та архітектури безпеки. Традиційні технології WAN, які базувалися на жорсткій архітектурі WAN, орієнтованій на маршрутизатор, повільно реагували на потреби бізнесу, пропонували непостійну якість роботи та були складними в управлінні. SD-WAN забезпечує кращу та стабільнішу продуктивність хмарних додатків, консолідує функціональні можливості глобальної мережі та підтримує нульову довіру та структуру SASE. Минулого року IDC дослідила Північну Америку та виявила, що 72% підприємств планують перейти на SD-WAN у 2021–2023 роках (1).