OpenVPN, странное поведение

Обсуждение ПО и его настройки
Ответить
Аватара пользователя
VGorbatov
Сообщения: 24
Зарегистрирован: 15 авг 2018, 10:26

Здравствуйте!
Буду признателен, если ткнете носом или направите в нужную сторону, т.к. уже неделю грею голову, но пока все мимо.
Краткая предыстория - во времена пандемии поднял на RB3011UiAS сервер OpenVPN. К этому серверу у меня подключено было порядка 30 сотрудников для удаленной работы и 3 филиала.
На компьютерах сотрудников ставил клиента openvpn 2.3.10, люди удаленно подключались, работали, все были довольны.
Буквально две-три недели назад началась какая-то ерунда. Часть сотрудников продолжают без проблем подключаться к удаленке. А часть сотрудников, которые ранее подключались, стали жаловаться, на невозможность подключения к удаленке. Т.е. при запуске клиента openvpn, бесконечно бежит лог, в котором проскакивают строки, сам телевизор не захлапывается и соответственно не "зеленеет"

Часть журнала с клиентского места
Wed May 10 21:43:10 2023 OpenVPN 2.3.10 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [IPv6] built on Mar 10 2016
Wed May 10 21:43:10 2023 Windows version 6.2 (Windows 8 or greater)
Wed May 10 21:43:10 2023 library versions: OpenSSL 1.0.1s 1 Mar 2016, LZO 2.09
Enter Management Password:
Wed May 10 21:43:10 2023 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:25340
Wed May 10 21:43:10 2023 Need hold release from management interface, waiting...
Wed May 10 21:43:10 2023 MANAGEMENT: Client connected from [AF_INET]127.0.0.1:25340
Wed May 10 21:43:10 2023 MANAGEMENT: CMD 'state on'
Wed May 10 21:43:10 2023 MANAGEMENT: CMD 'log all on'
Wed May 10 21:43:10 2023 MANAGEMENT: CMD 'hold off'
Wed May 10 21:43:10 2023 MANAGEMENT: CMD 'hold release'
Wed May 10 21:43:10 2023 Socket Buffers: R=[65536->65536] S=[65536->65536]
Wed May 10 21:43:10 2023 Attempting to establish TCP connection with [AF_INET]XX.XX.XX.XX:1194 [nonblock]
Wed May 10 21:43:10 2023 MANAGEMENT: >STATE:1683729790,TCP_CONNECT,,,
Wed May 10 21:43:11 2023 TCP connection established with [AF_INET]XX.XX.XX.XX:1194
Wed May 10 21:43:11 2023 TCPv4_CLIENT link local: [undef]
Wed May 10 21:43:11 2023 TCPv4_CLIENT link remote: [AF_INET]XX.XX.XX.XX:1194
Wed May 10 21:43:11 2023 MANAGEMENT: >STATE:1683729791,WAIT,,,
Wed May 10 21:43:11 2023 MANAGEMENT: >STATE:1683729791,AUTH,,,
Wed May 10 21:43:11 2023 TLS: Initial packet from [AF_INET]XX.XX.XX.XX:1194, sid=16614c0a 6da6ecf6
Wed May 10 21:43:30 2023 read TCPv4_CLIENT: Connection timed out (WSAETIMEDOUT) (code=10060)
Wed May 10 21:43:30 2023 Connection reset, restarting [-1]
Wed May 10 21:43:30 2023 SIGUSR1[soft,connection-reset] received, process restarting
Wed May 10 21:43:30 2023 MANAGEMENT: >STATE:1683729810,RECONNECTING,connection-reset,,
Wed May 10 21:43:30 2023 Restart pause, 5 second(s)
При этом сотрудники компьютеры и провайдеров не меняли, можно сказать, что была стабильность.
Последнему сотруднику делал настройки удаленки в марте этого года, все работало, в мае начались чудеса с невозможностью подключения.

Что пишет лог микротика в момент попытки подключения
TCP connection established from 212.74.202.78
<212.74.202.78>: disconnected <peer disconnected>
Первым делом подумал, что конфиг микротика без меня кто-то правил, но сравнил с прошлогодним бэкапом - никаких изменений.

Конфиг микротика
# may/10/2023 21:58:33 by RouterOS 6.48.6
# software id = ZXTS-TGRH
#
# model = RB3011UiAS
/interface bridge
add name=bridge-LAN
/interface ethernet
set [ find default-name=ether1 ] loop-protect=on name=ether1-WAN-TTK
set [ find default-name=ether6 ] advertise=10M-half,10M-full,100M-half,100M-full
set [ find default-name=ether7 ] advertise=10M-half,10M-full,100M-half,100M-full
set [ find default-name=ether8 ] advertise=10M-half,10M-full,100M-half,100M-full
set [ find default-name=ether9 ] advertise=10M-half,10M-full,100M-half,100M-full
set [ find default-name=ether10 ] advertise=10M-half,10M-full,100M-half,100M-full loop-protect=on
/interface ovpn-server
add comment="tunnel 65 let Pobedy" name=ovpn-65letPobedy user=vpn-65letPobedy
add comment="tunnel sklad Gogloya" name=ovpn-Gogolya user=vpn-sklad-Gogolya
add comment="tunnel Krylova" name=ovpn-KR user=vpn-nsk-KR
/interface list
add name=LAN
add name=WAN
/interface wireless security-profiles
set [ find default=yes ] supplicant-identity=MikroTik
/ip pool
add comment="Pool IP for OVPN Filials" name=pool-vpn ranges=172.16.30.11-172.16.30.100
/ppp profile
add dns-server=8.8.8.8 local-address=172.16.30.1 name=ovpn only-one=yes remote-address=pool-vpn use-encryption=yes
/interface bridge port
add bridge=bridge-LAN interface=ether10
add bridge=bridge-LAN interface=ether9
add bridge=bridge-LAN interface=ether8
add bridge=bridge-LAN interface=ether7
add bridge=bridge-LAN interface=ether6
/ip neighbor discovery-settings
set discover-interface-list=LAN
/ip settings
set tcp-syncookies=yes
/interface list member
add interface=bridge-LAN list=LAN
add interface=ether1-WAN-TTK list=WAN
/interface ovpn-server server
set certificate=server.crt_0 cipher=aes128,aes256 default-profile=ovpn enabled=yes mode=ethernet require-client-certificate=yes
/ip address
add address=10.10.20.1/24 comment=LAN interface=bridge-LAN network=10.10.20.0
add address=192.168.100.10/24 comment="WAN TTK" interface=ether1-WAN-TTK network=192.168.100.0
/ip cloud
set ddns-enabled=yes
/ip dns
set allow-remote-requests=yes cache-max-ttl=1d servers=8.8.8.8,77.88.8.1
/ip firewall address-list
add address=195.239.174.71 list=voip-access
add address=195.239.174.100 list=voip-access
add address=193.233.5.206 list=voip-access
add address=188.43.1.121 list=voip-access
add address=192.168.101.1 list=voip-access
add address=172.16.22.254 list=voip-access
add address=94.230.125.199 list=Freematiq
add address=176.212.125.30 list=Freematiq
add address=81.88.86.0/24 comment=MANGO list=voip-access
add address=81.88.88.0/24 list=voip-access
add address=81.88.82.245 list=voip-access
/ip firewall filter
add action=accept chain=input comment="my: accept established, related" connection-state=established,related
add action=drop chain=input comment="my: drop invalid" connection-state= invalid
add action=accept chain=input comment="my: accept ICMP" protocol=icmp
add action=accept chain=input comment="my: accept OpenVPN" dst-port=1194 protocol=tcp
add action=accept chain=input comment="my: accept Winbox access" dst-port=8291 protocol=tcp
add action=accept chain=input comment="my: accept L2TP" dst-port=1701 protocol=udp
add action=accept chain=input comment="my: accept IPSec" dst-port=500,4500 protocol=udp
add action=accept chain=input comment="my: accept IPSec (dop)" protocol=ipsec-esp
add action=drop chain=input comment="my: drop all not LAN" in-interface-list=!LAN
add action=accept chain=forward comment="my: accept established,related" connection-state=established,related
add action=drop chain=forward comment="my: drop invalid" connection-state=invalid
add action=drop chain=forward comment="my: drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state="" in-interface-list=WAN
/ip firewall nat
add action=src-nat chain=srcnat comment="TTK (ne trogat, 2022-02-15)" out-interface=ether1-WAN-TTK to-addresses=192.168.100.10
add action=dst-nat chain=dstnat comment="Asterisk SIP" dst-port=5060 in-interface-list=WAN protocol=udp src-address-list=voip-access to-addresses=10.10.20.2 to-ports=5060
add action=dst-nat chain=dstnat comment="Asterisk PJSIP" dst-port=5160 in-interface-list=WAN protocol=udp src-address-list=voip-access to-addresses=10.10.20.2 to-ports=5160
add action=dst-nat chain=dstnat comment="Asterisk RTP" dst-port=10000-20000 in-interface-list=WAN protocol=udp src-address-list=voip-access to-addresses=10.10.20.2
/ip firewall service-port
set sip disabled=yes
/ip route
add check-gateway=ping comment=TTK distance=1 gateway=192.168.100.1
add comment="Routing to 65letPobedy" distance=1 dst-address=10.10.45.0/24 gateway=172.16.30.2
add comment="Routing to Krylova" distance=1 dst-address=10.10.46.0/24 gateway=172.16.30.3
add comment="TEST Routing to Skald Gogolya" distance=1 dst-address=10.10.50.0/24 gateway=172.16.30.5 pref-src=172.16.30.1
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set api-ssl disabled=yes
/ppp secret
add comment="Ofis, 65 let Pobedy" local-address=172.16.30.1 name=vpn-65letPobedy password="" profile=ovpn remote-address=172.16.30.2 service=ovpn
add comment="Krylova" local-address=172.16.30.1 name=vpn-nsk-KR password="" profile=ovpn remote-address=172.16.30.3 service=ovpn
add name=rGr password=12345 profile=ovpn service=ovpn
...
...
add name=rSa password=12345 profile=ovpn service=ovpn
add comment="Sklad Gogolya" local-address=172.16.30.1 name=vpn-sklad-Gogolya password="" profile=ovpn remote-address=172.16.30.5 service=ovpn
add name=rBy password=12345 profile=ovpn service=ovpn
/system clock
set time-zone-autodetect=no time-zone-name=Asia/Barnaul
/system identity
set name=MIKROT
/system logging
add disabled=yes topics=ovpn
/system ntp client
set enabled=yes server-dns-names=ru.pool.ntp.org
/system package update
set channel=long-term
/system scheduler
add interval=2d name=Backup on-event="export file=fil" policy=ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon start-date=jan/02/1970 start-time=03:00:00
/tool bandwidth-server
set enabled=no
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
Сертификаты еще живые.

Конфиг клиента OpenVPN (одинаковый у всех)
client # Клиентское подключение
dev tap # Выбор виртуального сетевого драйвера. TAP — эмулирует Ethernet устройство и работает на канальном уровне модели OSI
proto tcp # Протокол для передачи данных
remote XX.XX.XX.XX 1194 # Задает сервер и порт, к которому должен подключаться клиент
persist-key # Не перечитывает ключи и параметры туннеля при перезагрузке сервиса OpenVPN
persist-tun # Не перечитывает ключи и параметры туннеля при перезагрузке сервиса OpenVPN
remote-cert-tls server # Исключает возможность mitm атаки, включая верификацию сертификата сервера
ns-cert-type server # Защита от «man in the middle» атаки
auth-user-pass auth.cfg # Защита от «man in the middle» атаки
ca ca.crt # Корневой сертификат
cert client.crt # Открытый ключ
key client.key # Закрытй ключ
verb 3 # Уровень детализации лога
cipher aes-128-cbc # Указывает алгоритм шифрования
route-method exe # Метод внесения данных о маршрутах
auth-nocache
# Устанавливает указанную маршрутизацию на VPN-хосте, после успешного запуска туннеля
route 10.10.20.0 255.255.255.0 172.16.30.1
Если бы все не могли подключиться, то было бы понятно, что настройки нужно перепроверять или с железом беда, но даже на текущий момент я смотрю у меня три сотрудника подключились к удаленке, а один не может (та самая плавающая проблема). Здесь же на форуме было описание проблемы с MPLS в настройках профиля opvn, попробовал все галочки включать - не помогает. Пробовал версию клиента поднимать потихоньку, дошел до 2.7, не помогает.
Перегружал все что можно - не помогает.
Куда дальше искать и что это?


Аватара пользователя
VGorbatov
Сообщения: 24
Зарегистрирован: 15 авг 2018, 10:26

Здравствуйте, похоже моя проблема связана с этим:
В России блокируют VPN. Проблема массовая, решения пока нет

В России перестал работать протокол OpenVPN, используемый, в том числе, в корпоративных сетях отечественных компаний. Блокировка осуществляется и интернет-провайдерами, и сотовыми операторами. Сообщения о сбоях в работе OpenVPN поступают со всей России, но источник проблемы, а также причина, по которой он обрушился на OpenVPN именно сейчас, остаются тайной.
Источник: https://internet.cnews.ru/news/top/2023 ... pnproblema

У кого-то еще наблюдается подобная "нерабочесть" OpenVPN ?


Illinory
Сообщения: 98
Зарегистрирован: 23 окт 2019, 15:08

Пока такое слышал от абонентов больших провайдеров, близких к государству, где ТСПУ обкатывают.
OpenVPN не так широко использую, ничего критичного.
А вот с на "массовые перебои" с IPsec я уже попадал в прошлом году.

Лучше принять как данность - любой VPN может стать тыквой.


Olegsevmor
Сообщения: 2
Зарегистрирован: 02 июн 2023, 10:22

Добрый день. А на каком операторе такое поведение?


Olegsevmor
Сообщения: 2
Зарегистрирован: 02 июн 2023, 10:22

"В России блокируют VPN. Проблема массовая, решения пока нет" - читал такое, но непонятно как будут блокировать, если по признаку пакета, то это совсем плохо, даже переход на WireGuard, скорее всего не спасет...


boris
Сообщения: 2
Зарегистрирован: 13 фев 2019, 11:41

Olegsevmor писал(а): 02 июн 2023, 10:33 Добрый день. А на каком операторе такое поведение?
Столкнулись с той же историей МТС, Мегафон, Теле2, Биллайн пока без нареканий. Нужно зайти в личный кабинет оператора, вроде у них доп опция появилась типо "безлимит с использованием ВПН", по крайней мере у Теле2.


Ответить