Mikrotik и OPNsense как openconnect клиент

RIP, OSFP, BGP, MPLS/VPLS
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

Изображение

Всех приветствую. В голове родилась идея реализации маршрутизации трафика по адрес листам в VPN туннели. Проблема в том, что мне нужно использовать openconnect, который не поддерживается в RouterOS.

Пришла в голову реализация подобного через установку на ВМ в сети за моим роутером OPNsense. В нем поддержка клиента openconnect есть.
Суть вот в чем, я хочу что бы при запросе на адреса, которые находятся в адрес-листах из моей сети за физическим ротуром. Трафик рулился через туннель openconnect. То есть при запросе, трафик летел на мой роутер, тот в свою очередь перенаправлял его в виртуальный роутер, а тот в клиента по туннелю.

Направьте, пожалуйста, в нужное русло, как нужно выстроить сетевое взаимодействие, я посидел несколько часов, но в итоге все тщетно.
Аватара пользователя
Chupaka
Сообщения: 3914
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Chupaka »

Здравствуйте.

В целом, ничего сложного не должно быть. Микротик является шлюзом по умолчанию? Тогда на нём создать новую таблицу маршрутизации, в ней маршрут по умолчанию через адрес виртуального роутера. В Firewall Mangle Prerouting отмаркировать нужный трафик с new-routing-mark=эта_новая_таблица. Убедиться, что NAT случайно не подействует на этот трафик.

В результате пакетики от клиента будут бежать на RouterOS, если получатель в списке - уйдут на виртуальный роутер, оттуда в Интернет (через тоннель), из Интернета вернутся на виртуальный роутер, с него напрямую клиенту (даже в обход RouterOS - они же в одной подсети все? именно для этого надо убедиться в отсутствии НАТа до виртуального роутера). Дальше клиент может получить от RouterOS какой-нибудь ICMP Redirect - и вообще обращаться к этим адресам напрямую через виртуальный роутер, но это уже лирика.
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

А как в этом случае избежать натирования, моей подсети за роутером в любом случае нужен маскарадинг? Я вроде добился работы текущей схемы, но странно что одни сайты сбрасывают соединения, а другие работают. Но в текущей реализации трафик приходит обратно все равно с моего роутера, так как он гейтвей по умолчанию. А в виртуальный роутер трафик входит и выходит по WAN.
Аватара пользователя
Chupaka
Сообщения: 3914
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Chupaka »

Как добились? Что за текущая схема? Зачем вы делаете NAT, которого хотите избежать?
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

Добрый день!
Все по той схеме, которые вы упомянули. Сначала маркирую трафик через Mangle, и создаю для него правило маршрутизации dst 0.0.0.0/0 > OPNSense (10.10.10.6)

На OPNSense уже весь трафик по умолчанию летит в openconnect server (10.10.100.32)
Вот таблица маршрутизации, которая создалась автоматически. Так же, для подсети 10.10.10.0/24 создано правило outbound (если я правильно понял, это и есть маскарадинг). Без него трафик дальше не идет.
Изображение


На самом сервере openconnect включен ip forward и маскарадинг в ip tables на LAN интерфейс.

Зачем делают NAT? Видимо потому что до конца не понимаю как это должно работать при правильной настройке, я пока далек от того, что бы смотреть на уровень ниже в сетевом взаимодействии, по этому пытаюсь совместить текущие знания и имперический метод)
Аватара пользователя
Chupaka
Сообщения: 3914
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Chupaka »

NAT (маскарадинг) делайте только на WAN-интерфейсы - так сложнее запутаться.

А "сайты сбрасывают соединение" - это в чём проявляется?
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

Ввожу URL в строке для адреса браузера, какие-то сайты спустя время открываются (туннель в Казахстан и обратно большой пинг дает), а другие могут отдать ошибку "ERR_CONNECTION_RESET". При этом сайты доступны из сети на обратной стороне туннеля и при прямом подключении по openconnect клиеном через AnyConnect.
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

И добавлю, сайт при этом пингуется, но на curl или запрос из браузера, он сбрасывает соединение.
Аватара пользователя
Chupaka
Сообщения: 3914
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Chupaka »

Хм, а на curl он в какой момент соединение сбрасывает? С MTU вопросов не может быть? https://help.mikrotik.com/docs/display/ ... -ChangeMSS
Strange0ne
Сообщения: 10
Зарегистрирован: 11 дек 2023, 21:35

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Strange0ne »

Спустя 10-15 секунд после выполнения запроса. Попробовал создать правило на снижение MSS до 1300, поведение такое же(
Аватара пользователя
Chupaka
Сообщения: 3914
Зарегистрирован: 29 фев 2016, 15:26
Откуда: Минск

Re: Mikrotik и OPNsense как openconnect клиент

Сообщение Chupaka »

А на роутере есть правило, дропающее invalid-пакеты? Попробовать отключить?