немного непонял из прошлого поста ТЗ, вот пример построения сети через IP Sec
Нажмите для просмотра прикрепленного файлаMikrotik 1 и Mikrotik 2 расположены разных сетях и являются граничными маршрутизаторами. Схема предусматривает, что они имеют внешние IP-адреса или имеют любой другой способ подключения друг кдругу. Сеть 192.168.5.0, адреса 192.168.5.1 и 192.168.5.2 являются виртуальными, т.е. созданными в результате поднятия туннеля между маршрутизаторами.
Описание IPSecНабор протоколов IPSec был разработан специально для сокрытия информации, передаваемой чрез открытые сети. Принципы их реализации значительно повлияли на подход к созданию IPv6 и развитие систем передачи данных промышленных стандартов.
Все протоколы IPSec делятся на два типа:
протоколы шифрования и формирования шифрованного потока;
протоколы обмена ключами.
К протоколам первого типа относятся ESP (Encapsulating Security Payload — инкапсуляция зашифрованных данных) и АН (Authentication Header — аутентифицирующий заголовок). Стоит отметить, что AH не подразумевает обеспечения конфиденциальности передаваемых данных и отвечает только за проверку их целостности.
К протоколам второго типа относится только один существующий на данный момент – IKE (Internet Key Exchange). Данный протокол обычно используется в двух случаях:
передаваемый трафик попал под какое-либо правило, по которому он должен быть зашифрован и у клиента нет данных для его шифрования (Security Associations SA). В этом случае он отправляет запрос на получение ключа своему оппоненту;
клиент получил запрос на получение ключа и должен ответить вызывающей стороне.
Протоколы IPSec, отвечающие за передачу зашифрованных данных, могут работать в двух режимах: транспортном (создание зашифрованного туннеля между маршрутизаторами) и туннельном (создание подключения между сетями и построение виртуальных частных сетей).
Транспортный режим подразумевает шифрование только блока транспортных данных IP пакета.
Туннельный режим обязывает шифровать пакет полностью и инкапсулировать его в другой UDP пакет, чем обеспечивается его беспроблемная маршрутизация. Также не никак не влияет на маршрутизацию шифрование только поля данных IP-пакетов.
В ситуации когда IPSec пакеты сгенерированы с использованием AH (Authentification Header) не достаточно применения технологии NAT. Структура IP пакета, подверженного обработке IPSec протоколом меняется, что делает невозможным его правильное распознавание. Для устранения этой проблемы прибегают к технологии NAT-Traversal, которая инкапсулирует IPSec трафик в UDP пакеты и передаёт их по сети в виде привычного маршрутизируемого сетевого трафика. На принимающей стороне от пакета отбрасывается UDP заголовок и концевик и на стек протокола IPSec поступают полученные данные.
RouterOS Mikrotik имеет следующие средства для работы с IPSec: создание политик для шифрования правил, автоматическую генерацию ключей, ручное создание правил для шифрования трафика, работу как в транспортном режиме, так и в режиме туннелирования, средства мониторинга. Кроме того, в файерволе системы предусмотрен механизм NAT-T, о котором было рассказано выше.
Для создания простейшего транспортного IPSec подключения между двумя маршрутизаторами нужно:
на первом маршрутизаторе выполнить:
Код
/ip ipsec policy add sa-src-address=192.168.1.1 sa-dst-address=192.168.1.2 action=encrypt
/ip ipsec peer add address=192.168.1.2/24 secret="mysecret" generate-policy=yes
на втором маршрутизаторе выполнить:
Код
/ip ipsec policy add sa-src-address=192.168.1.2 sa-dst-address=192.168.1.1 action=encrypt
/ip ipsec peer add address=192.168.1.1 secret="mysecret"
Также на обоих маршрутизаторах необходимо разрешить используемые протоколами IPSec порты:
Код
/ip firewall add chain=input protocol=udp dst-port=500 action=accept comment="Allow IKE" disabled=no
/ip firewall add chain=input protocol=ipsec-esp action=accept comment="Allow IPSec-esp" disabled=no
/ip firewall add chain=input protocol=ipsec-ah action=accept comment="Allow IPSec-ah" disabled=no
Если у вас не возникло никаких трудностей с вышеописанным, откройте статистику и посмотрите шифруются ли пакеты
Код
ip ipsec> counters print
out-accept: 7
out-accept-isakmp: 0
out-drop: 0
out-encrypt: 8
in-accept: 16
in-accept-isakmp: 0
in-drop: 0
in-decrypted: 7
in-drop-encrypted-expected: 0
В случае использования IPSec в туннельном режиме для объединения сетей с адресами 192.168.10.0/24 и 192.168.20.0/24 правила будут выглядеть следующим образом.
Код
/ip firewall nat add chain=srcnat src-address=192.168.10.0/24 dst-address=192.168.20.0/24 out-interface=public action=masquerade
/ip ipsec policy add src-address=192.168.10.0/24 dst-address=192.168.20.0/24 action=encrypt tunnel=yes sa-src-address=192.168.1.1 sa-dst-address=192.168.1.2
/ip ipsec peer add address=192.168.1.2 exchange-mode=aggressive secret="mysecret"
и
Код
ip firewall nat add chain=srcnat src-address=192.168.20.0/24 dst-address=192.168.10.0/24 out-interface=public action=masquerade
/ip ipsec policy add src-address=192.168.20.0/24 dst-address=192.168.10.0/24 action=encrypt tunnel=yes sa-src-address=192.168.1.2 sa-dst-address=192.168.1.1
/ip ipsec peer add address=192.168.1.1 exchange-mode=aggressive secret="mysecret"
результате маршрутизаторы 192.168.1.1 и 192.168.1.2 будут обмениваться ключами и создадут безопасный шифрованный туннель между сетями 192.168.20.0 и 192.168.10.0.
Создание Proposals можно сравнить с созданием профилей шифрования. Среди доступных опций предусмотрены:
алгоритмы генерации данных для аутентификации, которые могут принимать значения: md5, sha1, null;
алгоритмы генерации данных для шифрования со значениями: des, 3des, aes-128, aes-192, aes-256, null.
Также возможно указать время жизни профиля в секундах или байтах и способ генерации материала для шифрования из списка предложенного ниже:
modp768;
modp1024;
modp1536;
none.
Профили Proposals используются в качестве опции при создании политик (Policy)