Вопрос: Как в микротике создать site to site между микротиками ipsec в тунельном режиме?

Лучший ответ: различие...İpsec а в транспортном и туннельном режиме
Это в гугл.

Порядок создания опишу завтра - если кто-то другой не напишет раньше :)

Берем простейший случай - аутентификация по PSK (Pre-Shared Keys, то бишь простому текстовому паролю). Текст пароля "123456" (понятно, что если реализовывать такой вариант, пароль должен быть посерьезней)

Внешние интерфейсы, смотрящие в тырнет:
система А - 170.70.70.1
система Б - 180.80.80.1
(обязательно поменяйте их на свои!)

Внутренние интерфейсы, смотрящие в спариваемые локалки:
система А - 10.1.1.1
система Б - 10.2.2.1
маски у обеих сетей - /24 (255.255.255.0)

итак погнали.

RouterOS 6.45.7
значения по умолчанию не указываются
Система А (на системе Б будет все тоже, только перевернуто зеркально)

Шаг 0 - создаем предложение
Этот шаг необязательный
/ip ipsec proposal
add auth-algorithms="" enc-algorithms=aes-256-gcm lifetime=1h name=proposal1
Самое первое - создаем proposal. Это наше предложение другой стороне о том, какие мы поддерживаем шифры и какие методы подписи пакетов. Выбираем самое сильное шифрование AES256 со счетчиком Галуа, отдельная подпись пакета не потребуется. Здесь же мы задали время жизни туннеля до неполного переустановления - 1 час.
Этот шаг необязательный, он нужен только для усиления защиты туннеля. Без него будет набор из более простых шифров типа AES128 CBC с SHA1 в качестве алгоритма подписи пакета

Шаг 1 - создаем профиль соединения
/ip ipsec profile
add dpd-interval=disable-dpd enc-algorithm=aes-256 hash-algorithm=sha256 lifetime=2h name=profile1 \
    nat-traversal=no proposal-check=strict
Отключаем DPD - от него только проблемы, устанавливаем более мощные чем по умолчанию алгоритмы шифрования и хэширования (default encrypt может быть и 3DES, default hash - SHA1), устанавливаем время жизни туннеля 2 часа (после - полная переустановка соединения со сбросом ключей шифрования), отключаем NAT Travesal, указываем обработку предложений strict (очень важный параметр! Если время жизни туннеля, запрошенное той стороной больше чем задано у нас - послать, если меньше или равно - принять)

Шаг 2 - создаем напарника (данные об удаленной системе)
/ip ipsec peer
add address=170.70.70.1/32 comment="Main VPN" name=RB2011 profile=profile1
Тут даже пояснять ничего не надо, все самоочевидно

Шаг 3 - создаем политику
/ip ipsec policy
add dst-address=10.2.2.0/24 peer=RB2011 proposal=proposal1 src-address=10.1.1.0/24 tunnel=yes
Очень важный шаг. Именно здесь указываем микротику, какие пакеты будут шифроваться. И включаем туннельный режим

Шаг 4 - создаем идентификаторы (identity). Раньше в IPSec у микротика было меньше сущностей и обьяснение было проще...
/ip ipsec identity
add peer=RB2011 secret=123456

Естественно возникает вопрос - а как же микротик узнает, куда девать пакеты? А это записано у него в настройках - все пакеты с сети 10.1.1.0/24 на 10.2.2.0/24 зашифровать и отправить на 170.70.70.1, все пакеты же с 170.70.70.1 протокола ESP нужно расшифровать и обработать повторно.
Вообще для того, чтобы понять, как ходят пакеты в IPSec - есть отличная схема Packet Flow in Netfilter and General Networking

Худший ответ: Пожалуйста, пишите на своем родном языке.

1. Interfaces -> IP Tunnel, создаем туннель
2. IP -> IPsec, по очереди настраиваем параметры (проверяем те, что по умолчанию) Policies, Proposals, Peers, Identities, Profiles
3. Если все ок, то во вкладках Active Peers, Installed SAs отобразятся соответствующие им пункты
4. IP -> Addresses, назначаем сетевой адрес нашему ipsec интерфейсу
5. IP -> Routes, прописываем маршрут на интерфейс туннеля, что бы роутер знал куда посылать пакеты.

Аналогично, через cli
/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