Доброго всем дня!

Так уж сложилось, что в нашей компании в течении последних двух лет мы потихоньку переходим на микротики. Основные узлы построены на CCR1072, а локальные точки подключения компов на устройствах попроще. Само собой существует и объединение сетей по IPSEC tunnel, в данном случае настройка достаточно проста и не вызывает никаких трудностей, благо есть множество материалов в сети. А вот с мобильным подключением клиентов есть определенные трудности, вики производителя подсказывает, как использовать Shrew soft VPN client (по этой настройке все вроде понятно) и именно этот клиент использует 99% пользователей удаленного доступа, а 1% это я, мне стало просто лень каждый раз вводить логин и пароль в клиент и захотелось ленивого расположения на диване и удобного подключения к рабочим сетям. Инструкций по настройки Микротика для ситуаций, когда он находится даже не за серым адресом, а совсем за черным и может быть даже несколькими NAT в сети я не нашел. Потому пришлось импровизировать, а потому предлагаю посмотреть на результат.

Имеется:

  1. CCR1072 как основное устройство. версия 6.44.1
  2. CAP ac как домашняя точка подключения. версия 6.44.1

Главная особенность настройки в том, что ПК и микротик должны находиться в одной сети с одной адресацией, что и выдается основым 1072.

Переходим к настройке:

1. Конечно включаем Fasttrack, но так как с впн fasttrack не совместим, то приходится вырезать его трафик.

/ip firewall mangle
add action=mark-connection chain=forward comment="ipsec in" ipsec-policy=    in,ipsec new-connection-mark=ipsec passthrough=yes
add action=mark-connection chain=forward comment="ipsec out" ipsec-policy=    out,ipsec new-connection-mark=ipsec passthrough=yes
/ip firewall filter add action=fasttrack-connection chain=forward connection-mark=!ipsec

2. Добавляем пробросы сетей из/в домашнюю и рабочую

/ip firewall raw
add action=accept chain=prerouting dst-address=192.168.33.0/24 src-address=    10.7.76.0/24
add action=accept chain=prerouting dst-address=192.168.33.0/24 src-address=    10.7.98.0/24
add action=accept chain=prerouting dst-address=10.7.76.0/24 src-address=    192.168.33.0/24
add action=accept chain=prerouting dst-address=10.7.77.0/24 src-address=    192.168.33.0/24
add action=accept chain=prerouting dst-address=10.7.98.0/24 src-address=    192.168.33.0/24
add action=accept chain=prerouting dst-address=192.168.33.0/24 src-address=    10.7.77.0/24

3. Создаем описание подключения пользователя

/ip ipsec identity
add auth-method=pre-shared-key-xauth notrack-chain=prerouting peer=CO secret=    общий ключ xauth-login=username xauth-password=password

4. Создаем IPSEC Proposal

/ip ipsec proposal
add enc-algorithms=3des lifetime=5m name="prop1" pfs-group=none

5. Создаем IPSEC Policy

/ip ipsec policy
add dst-address=10.7.76.0/24 level=unique proposal="prop1"     sa-dst-address=<white IP 1072> sa-src-address=0.0.0.0 src-address=    192.168.33.0/24 tunnel=yes
add dst-address=10.7.77.0/24 level=unique proposal="prop1"     sa-dst-address=<white IP 1072> sa-src-address=0.0.0.0 src-address=    192.168.33.0/24 tunnel=yes

6. Создаем IPSEC profile

/ip ipsec profile
set [ find default=yes ] dpd-interval=disable-dpd enc-algorithm=    aes-192,aes-128,3des nat-traversal=no
add dh-group=modp1024 enc-algorithm=aes-192,aes-128,3des name=profile_1
add name=profile_88
add dh-group=modp1024 lifetime=4h name=profile246

7. Создаем IPSEC peer

/ip ipsec peer
add address=<white IP 1072>/32 local-address=<ваш адрес роутера> name=CO profile=    profile_88

А теперь немного простой магии. Так как мне не очень хотелось менять настройки на всех устройствах в домашней сети, то надо было как-то повесить DHCP на туже сеть, но разумно, что Микротик не позволяет повесить более одного адресного пула на один bridge, потому нашел обходной вариант, а именно для ноутбука просто создал DHCP Lease с ручным указанием параметров, а так как netmask, gateway & dns также имеют номера опций в DHCP, то и их указал вручную.

1. DHCP Option

/ip dhcp-server option
add code=3 name=option3-gateway value="'192.168.33.1'"
add code=1 name=option1-netmask value="'255.255.255.0'"
add code=6 name=option6-dns value="'8.8.8.8'"

2. DHCP Lease

/ip dhcp-server lease
add address=192.168.33.4 dhcp-option=    option1-netmask,option3-gateway,option6-dns mac-address=<MAC адрес ноутбука>

При этом настройка 1072 является практически базовой, только при выдаче IP адреса клиенту в настройках указывается, что выдавать ему IP адрес введенный вручную, а не из пула. Для обычных клиентов с персональных компьютеров подсеть такая же, как в конфигурации с Wiki 192.168.55.0/24.

И немного добавлю, на основном сервере подключения 1072 необходимо также добавить в IP-Firewall-RAW правила для симметричного проброса сетей. При добавлении нового проброса сети необходимо добавить правила в IPSEC-Policy на клиенте, сервере, а также на сервере IP-Firewall-RAW и список вырезки из NAT.

Подобная настройка позволяет на ПК не подключаться через сторонний софт, а туннель сам поднимается роутером по мере необходимости. Нагрузка клиентского CAP ac практически минимальная, 8-11% при скорости 9-10МБ/с в туннеле.

Все настройки делались через Winbox, хотя с тем же успехом можно проводить и через консоль.

Комментарии (4)


  1. sunwater
    15.04.2019 01:02
    +1

    MikroIk — за что же Вы его так :)


    1. kisyabrus Автор
      15.04.2019 09:22

      Ошибся, но исправился


  1. DaemonGloom
    15.04.2019 08:21

    Правила firewall будут смотреться приятнее, если настроить списки адресов ваших сетей и использовать в правилах уже их. И не совсем понятна магия с DHCP. Что вы хотели ей получить, и что было с настройками прочих устройств, что требовалось их сменить при добавлении новых маршрутов через vpn для роутера?


    1. kisyabrus Автор
      15.04.2019 09:29

      работа с DHCP была сделана в связи с тем, что не было желания менять адресацию домашней сети и соответственно перенастраивать рабочие устройства, конечно не совсем красиво в одном vlan тянуть разные адресации, но этот вариант настройки скорее был сделан для наших пользователей, чтобы можно было вставить Микротик в существующую сеть без мучительных настроек всего и вся. Функционал работает только в случае если Микротик имеет адрес интерфейса из той же подсети, что и выдается сервером. Потому просто добавил подсеть для ноутбука немного странным способом.
      При добавлении этой конфигурации настройки остальных устройств (2 ТВ, ресивер, медиаплейер, сетевое хранилище не изменяются и они при всем желании не смогут пойти по маршруту в впн). Можно конечно добавить дополнительные блокировки на случай пущей безопасности.
      Изначально рассматривал вариант роутера между провайдером и домашним роутером.