Картинка

БЛОГ про

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

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

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

Мікрофілія EdgeConnect від Aruba покликана спростити віддалену роботу в мережі

Мікрофілія EdgeConnect від Aruba покликана спростити віддалену роботу в мережі
Aruba Networks,Налаштування,Налаштування Aruba,новини,Продуктивність

Компанія Aruba Networks, дочірня компанія Hewlett Packard Enterprise (HPE), анонсувала нову пропозицію під назвою EdgeConnect Microbranch, призначену для спрощення складної мережевої роботи вдома для підприємств. COVID-19 змусив підприємства змінити спосіб використання своїх мереж, оскільки їм доводилося підтримувати зростання кількості користувачів та пристроїв, що підключаються з віддалених місць.

Тенденції ІБ: платформений підхід, аналітика та NaaS

Тенденції ІБ: платформений підхід, аналітика та NaaS
Cisco,cisco,cisco безпека,Налаштування Cisco,новини

Cisco розповіла, як захистити хмарних користувачів, чим корисний "інженерний хаос" і чого чекати від 2022 року. 20 грудня компанія Cisco організувала для журналістів онлайн-брифінг, присвячений підсумкам 2021 та перспективам 2022 року. Сisco регулярно проводить опитування замовників та на основі отриманих результатів готує аналітичні матеріали. Нещодавно компанія випустила два нові великі звіти: Security Outcomes Study Volume 2 і 2021 Global Networking Trends. У першому аналізується те, що відбувалося протягом 2021 року в області ІБ, другий описує глобальні тренди у мережах.

CISCO – Mikrotik — FLEXVPN

CISCO – Mikrotik — FLEXVPN
Cisco,Cisco Network,cisco,Блог Телесфера,Налаштування Cisco,Продуктивність

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