LINUX.ORG.RU
решено ФорумAdmin

MikroTik RouterOS 6 и OpenVPN 2.6

 , , ,


0

1

░▒▓█ Проблема █▓▒░

В MikroTik RouterOS есть функция OpenVPN-server, включив её, без проблем можно подключиться, используя в качестве клиента OpenVPN 2.5.2 для Windows или GNU Linux, но с OpenVPN 2.6.0 возникнут проблемы.

Дело в том что около версии 2.6 в OpenVPN изменился механизм согласования алгоритма шифрования, а в RouterOS 6 всё ещё используется старый механизм. OpenVPN 2.6 в роли клиента запрашивает согласование, а в ответ получает немного не то, что ожидает, к такому исходу он не готов, по этому закрывается на чём-то вроде

2025-01-08 03:49:24 us=654986 SIGUSR1[soft,connection-reset] received, process restarting
2025-01-08 03:49:24 us=655020 Restart pause, 1 second(s)

А логи на RouterOS 6 предлагают разве что

03:49:23 ovpn,info TCP connection established from 172.16.5.2 
03:49:23 ovpn,debug,error,1880,44552,44556,43680,23440,58524,43344,44552,l2tp,info,44556,debug,update,65535,critical,35992,460,62352,update,58600,64968,18464,4043,57924,58524,13440,58524,warning duplicate packet, dropping

░▒▓█ Решение █▓▒░

Чтобы починить просто добавьте в конфиг клиента запасной алгоритм шифрования. После неудачного согласования клиент попробует использовать его. Если сервер поддерживает этот алгоритм - соединение будет установлено. И режим совместимости с 2.4 на всякий случай. С ним будет стабильнее.

data-ciphers-fallback AES-128-CBC
compat-mode 2.4.0

░▒▓█ Пример █▓▒░

Вот моя рабочая конфигурация:
Сервер MikroTik RouterOS 6.49.15 (stable)
Клиент OpenVPN 2.6.3 на Debian 12 GNU/Linux 6.1.0-28-amd64
Сервер OpenVPN на MikroTik настроен так:

/interface ovpn-server server
set auth=sha1 certificate=Public-ovpn-server cipher=aes128 default-profile=Public-ovpn enabled=yes mac-address=78:9A:18:76:02:43 port=1303

/ppp profile
add local-address=10.11.11.1 name=Public-ovpn remote-address=Public-VPN-pool use-compression=no use-encryption=yes

/ip pool
add name=Public-VPN-pool ranges=10.11.11.2-10.11.11.254

Клиент настроен так:

client
dev tun
proto tcp
remote 172.16.5.1 1303
nobind
persist-tun
remote-cert-tls server
verb 3
auth sha1
auth-user-pass
ping-restart 30

data-ciphers AES-128-CBC
data-ciphers-fallback AES-128-CBC
compat-mode 2.4.0

ca public-ovpn.crt

Не нужно слов о безопасности. Я намеренно пожертвовал ей в угоду оптимизации. Этот OpenVPN был нужен лишь чтобы поиграть в сетевую игру. Я предпочёл VPN нежели проброс портов лишь чтобы защититься от нежелательных игроков.

Не нужно слов о безопасн

Хорошо.

RouterOS 6.49.15 (stable)
Этот OpenVPN был нужен лишь чтобы поиграть в сетевую игру.

Надо обновиться до RouterOS 7. Там, наконец-то, сделали udp. В сетевую игру играться будет лучше/быстрее.

AS ★★★★★
()
Последнее исправление: AS (всего исправлений: 2)
Ответ на: комментарий от AS

Или вовсе использовать комп с приложением OpenVPN в качестве сервера, или вовсе с сборкой вроде pfsense. Мой основной OpenVPN, который я ни кому не даю как раз так и реализован. Работает прекрасно.

IASIVAn
() автор топика