Вы находитесь на странице: 1из 11

Mikrotik + IPSec + Cisco = Мир, Дружба,

Жвачка
 Cisco,
 Сетевые технологии
Техническая задача: организовать ipip-тоннель между офисами, с
шифрованием ipsec, при помощи Mikrotik RB450G и Cisco 2821.

Ньюансы

 последняя версия софта на микроте (5.20)


 тип тоннеля на циске IPIP
 тип трансформы «transport», вместо «tunnel»

Исходные данные

 Cisco 2821 (OS v12.4)


 2. Mikrotik RB450G
 3. Реальные внешние IP на обоих устройствах
 4. Адрес циски: 77.77.77.226. Подсеть со стороны циски: 10.192.0.0/22
 5. Адрес микротика: 88.88.88.2. Подсеть со стороны микротика:
192.168.88.0/24

Предыстория
Столкнулся по работе с необходимостью замены серверов в наших филиалах, на
что-нибудь более надёжное, аппаратное.
Связь у нас с центральным офисом осуществляется через тонели с шифрованием
ipsec. В центральном офисе у нас, собственно всё на кошкообразных построено, а
в большинстве филиалов стоят обычные сервера под FreeBSD, которые
цепляются тонелями, с помощью racoon.
Встала задача, в связи с устареванием, выходом из строя самих серверов, начать
устанавливать простые, недорогие аппаратные решения.

Братья по-разуму, коллеги и форумы натолкнули меня на изделия Mikrotik, и сразу


же я направил к ним письмо следующего содержания:
Добрый день. Подскажите, если не трудно подходящию модель микротика, для

следующих целей: nat-роутер, поддержка ipsec-тунелей с несколькими цисками

28хх, нагрузка до 100мбит, поддержка ospf. Желательно, но не обязательно

"POE" Заранее спасибо.

Ответ пришёл неожиданно, очень быстро, в течении одного дня:

Здравствуйте, Владимир

Спасибо за интерес к нашей компании и продукции Mikrotik.

В зависимости от пропусной способности, можем предложить Вам

- Маршрутизатор RB/MRTG (miniROUTERG) 4531

- Маршрутизатор RB1100AHx2 16915

Таблицы производительности по ссылкам:

http://routerboard.com/RB450G

http://routerboard.com/RB1100AHx2

Пример настройки связки

http://wiki.mikrotik.com/wiki/IPSec_VPN_with_Dynamic_Routing_/_Mikrotik_and_

Cisco

Я сразу остановил свой выбор на «RB450G». Заказали, привезли.


Сразу скажу, по вышеуказанной ссылке настроить не удалось. Данные там
устаревшие, некоторые параметры в версии 5.20 просто отсутствуют.
Порылся по форумам, почитал статьи примерно такого содержания:
betep.wpl.ru/2009/02/wiki-mikrotik.html
netandyou.ru/17 — кстати интересная, но рассматривается пример ipsec в gre-
тоннеле, а в моём случае тип тонеля ipip, и режим работы crypto ipsec transform-
set на циске не «Tunnel», а «Transport». Впрочем тоже не получилось.
Так же перерыл ещё кучу материалов на форумах, добился, чтобы проходило
соединение, шифрование включалось, но ничего не работало, пакеты
отказывались бегать по тоннелю, как я не старался их к этому принудить.
Два потерянных дня и побудили меня написать на хабр, возможно кому-то эти
строки помогут в работе.

В итоге, всё оказалось банально и очень просто.


Я акцентрировал своё внимание на настройках политик IPSec в микротике, и
похоже это было ошибкой :)
После вдумчивого изучения материала, который мне действительно помог:
wiki.mikrotik.com/wiki/Manual:IP/IPsec#Transport_mode_2 — от сюда и ниже на пару-
тройку страниц
и 
wiki.mikrotik.com/wiki/Manual:Interface/IPIP — тут просто основы, но на-всякий
случай.

Я просто убрал все политики (к слову — они были правильно настроены, судя по
динамическим, создавшимся позже), и просто установил галочку автогенерации
политик. Что успешно и проделала циска с микротиком после соединения.

Все настройки (консольные и аналогичные графические) привожу ниже.

Cisco:

! Политика авторизации - хеш мд5 и шифрование 3des по парольному ключу (pre-

share)

crypto isakmp policy 20

encr 3des

hash md5

authentication pre-share
! group2 означает, что в микротике надо установить dh-group=modp1024

group 2

! Сам ключ

crypto isakmp key MyPassWord address 88.88.88.2 no-xauth

crypto isakmp keepalive 30

! Трансформ. Внимание! Используется transport, а не tunnel режим

crypto ipsec transform-set transform-2 esp-3des esp-md5-hmac

mode transport

crypto dynamic-map dynmap 10

set transform-set transform-2

reverse-route

crypto map vpnmap client configuration address respond

crypto map vpnmap 5 ipsec-isakmp dynamic dynmap

crypto map vpnmap 10 ipsec-isakmp

! криптомапа микротика

crypto map vpnmap 93 ipsec-isakmp

description Mikrotik_Local
! ip микротика

set peer 88.88.88.2

set security-association lifetime seconds 86400

set transform-set transform-2

! pfs group2 означает, что в микротике надо установить dh-

group=modp1024

set pfs group2

! access-лист, разрешающий соединение

match address 137

! Сам тоннель

interface Tunnel93

description tunnel_Mikrotik

ip unnumbered GigabitEthernet0/1

! Цискин адрес

tunnel source 77.77.77.226

! Адрес микрота

tunnel destination 88.88.88.2

! тип тонеля ipip


tunnel mode ipip

! Наружный интерфейс

interface GigabitEthernet0/1

description Internet

ip address 77.77.77.226 255.255.255.224

no ip redirects

no ip unreachables

no ip proxy-arp

ip wccp web-cache redirect out

ip virtual-reassembly

ip route-cache policy

no ip mroute-cache

duplex auto

speed auto

no mop enabled

! ВКЛЮЧАЕМ ШИФРОВАНИЕ НА ИНТЕРФЕЙСЕ

crypto map vpnmap

! Роутинг сети, находящейся за микротиком


ip route 192.168.88.0 255.255.255.0 Tunnel93

! Разрешение на соединение тоннеля

access-list 137 permit ip host 77.77.77.226 host 88.88.88.2

Микротик:

/interface ipip

add disabled=no dscp=0 local-address=88.88.88.2 mtu=1260 name=ipip1 \

remote-address=77.77.77.226

add address=192.168.88.1/24 comment= "default configuration"

disabled=no \

interface=ether2-master-local network=192.168.88.0

add address=88.88.88.2/30 disabled=no interface=ether1-gateway network=\

62.5.248.248

add add-default-route=yes comment= "default configuration" \

default-route-distance=1 disabled=no interface=ether1-gateway \

use-peer-dns=yes use-peer-ntp=yes

/ip ipsec peer

add address=77.77.77.226/32 auth-method=pre-shared-key dh-group=modp1024 \


disabled=no dpd-interval=2m dpd-maximum-failures=5 enc-algorithm=3des \

exchange-mode=main generate-policy=yes hash-algorithm=md5

lifebytes=0 \

lifetime=1d my-id-user-fqdn= "" nat-traversal=no port=500

proposal-check=\

obey secret=MyPassWord send-initial-contact=yes

/ip route

add comment= "Default routing" disabled=no distance=1 dst-

address=0.0.0.0/0 \

gateway=88.88.88.1 scope=30 target-scope=10

add disabled=no distance=1 dst-address=10.192.0.0/22 gateway=ipip1

scope=30 \

target-scope=10

/ip firewall filter

add action=accept chain=input comment= "default configuration"

disabled=no

add action=accept chain=output disabled=no

/system logging
add action=memory disabled=no prefix= "" topics=ipsec

Если кто-то настраивает через микротиковский GUI «Winbox», аналогичная


настройка:
1. Интерфейсы-IP Tunnel. Добавить:

2. В разделе IP-IPSec-Proposals в дефолтном правиле ОБЯЗАТЕЛЬНО сменить


SHA1 на MD5!
3. IP-IPSec-Peers. Добавить:
После этого, если циска уже настроена, то должна поднятся сессия:

И автоматически сгенерируются политики:


4. IP-Routes. Добавить:

После этого можно заглянуть обратно в IP-IPSec, закладка Instaled SAs, и вы


должны увидеть, что байтики бегут по тунелю в обе стороны:

Надеюсь этот материал сэкономит кому-нибудь время и нервы.