Перейти к содержанию

Mikrotik-Cisco IPSec туннель

Понадобилось тут соорудить IPSec-туннель между роутером Cisco (в нашем случае, Cisco 1760), и роутером на Mikrotik RouterOS (Mikrotik RB/750). Раз надо, значит надо.


Оговорюсь, я пошел по самому простому пути — не создавал дополнительных туннелей ни для транспорта IPSec (L2TP), ни для транспорта данных внутри IPSec (GRE). Эти случаи я опишу позже. Пока же — два роутера имеют реальные статические адреса, и соединяются между собой ipsec-туннелем для передачи данных.

Тип аутентификации — passphrase (ключи не использутся, только секретная фраза). DES/MD5. Время жизни ключа — 8ч.
Тип шифрования трафика — DES.

Сначала, настроим Mikrotik.

/ip address
#Назначем интерфейсам нужные IP-адреса
add address=a.b.c.d/30 interface=eth1
add address=192.168.10.1/24 interface=eth2
/ip ipsec peer
#Тут определяем пира и параметры аутентификации.
add address=w.x.y.z comment=PEER enc-algorithm=des generate-policy=yes lifetime=8h secret=SeCrEtKeY
/ip ipsec policy
#Policy, который обеспечит прохождение трафика на нужные сети через туннель
add dst-address=172.16.0.0/16 level=unique priority=10 sa-dst-address=w.x.y.z \
sa-src-address=a.b.c.d src-address=192.168.10.0/24 tunnel=yes
/ip ipsec proposal
#То, что в Cisco называется trasnform set
set [ find default=yes ] auth-algorithms=md5 enc-algorithms=des lifetime=8h pfs-group=none

Затем, настроим Cisco.

crypto isakmp policy 10
 hash md5
 authentication pre-share
 group 2
 lifetime 28800
crypto isakmp key SeCrEtKeY address a.b.c.d
!
!
crypto ipsec transform-set PEER esp-des esp-md5-hmac
!
crypto map IPSEC_MAP 10 ipsec-isakmp
 set peer a.b.c.d
 set transform-set PEER
 match address 112
!
!
!
!
interface FastEthernet0/0.100
 ip address w.x.y.z 255.255.255.252
 speed auto
 crypto map IPSEC_MAP
interface FastEthernet0/0.200
 encapsulation dot1Q 200
 ip address 172.16.0.1 255.255.0.0
access-list 112 permit ip 172.16.0.0 0.0.255.255 192.168.10.0 0.0.0.255

После этого пускаем пинг в соседнюю сеть, чтобы туннель поднялся (да, до этого момента ничего не будет). Максимум после второго-третьего пакета пинг должен пойти. (Иногда первые один-два теряются из-за аутентификации и установления туннеля.)

В интернетах пишут, что после некоторого времени SA протухают, и их нужно удалять вручную, но этот баг, думаю, стоит отдельного, подробного разбирательства. В данном случае, у меня все установилось нормально.

7 комментариев

  1. Костя Костя

    я сам нахожусь в сети провайдера ТТК у меня частный пиринг. Я реализовал при помощи 2-х одинаковых роутеров (Netgear wnr 2200) с альтернативной прошивкой DD-wrt канал связи между железками при промощи OPENVPN

    • admin admin

      OpenVPN это хорошо и здорово, если воспользуетесь поиском по сайту, то увидите, что я уже описывал такие каналы. Тут же была задача поднять именно IPSec.

  2. Костя Костя

    Пордон, если не в ту тему написал

  3. Andr2210 Andr2210

    > В интернетах пишут, что после некоторого времени SA протухают, и их нужно удалять
    >вручную, но этот баг,
    Это не баг, а нормальная работа протокола
    зачем иметь туннель если в нем нет необходимости

    • admin admin

      Нет, это именно что баг.
      SA протухали независимо от использования туннеля.

  4. aziz aziz

    У меня инициатор IPSec тунеля является cisco router, клиент mikrotik, но не смотря на то, что главным устройство является cisco, поднять тунель он не может. Тунель «оживает» если с моей сети инициировать соединение (к примеру пинг на адрес из сети за cisco роутером)
    Кто нить сталкивался? как решили?

    • admin admin

      Сталкивался, решил заменой микрота на Cisco 1760 решения пока не нашел. можно попробовать 6.11, они там много чего допилили в плане IPSec тоже.
      Ну либо добавить задание в netwatcher, который будет периодически опрашивать пира

Добавить комментарий

%d такие блоггеры, как: