MindPhaser34
@MindPhaser34
Системный администратор, DevOps

Связка Miktorik + OpenVPN(ubuntu18) + OpenLDAP авторизация?

Ситуация такая. Раньше стоял шлюз Zyxel, имелась следующая связка:
-сервер OpenVPN на Ubuntu 18, находящийся в lan (192.168.1.50). Внутренняя подсеть VPN - 172.16.10.0/24
-авторизация через openldap (находится на внешнем VDS-сервере в облаке).
-на zyxel'e проброшены маршруты с подсети vpn (172.16.10.0/24) до 192.168.1.50. Открыты порты 1194, настроен проброс(NAT) до машины 1.50.

Клиент подключался через openvpn client по внешнему IP, порт 1194, udp, вводил свои лог\пасс и вуаля! Он в сети, внутренние ресурсы доступны.

Недавно поменяли zyxel на mikrotik RB3011. До этого с ними не имел дело. Настроил локалку, брандмауэр, интернет. Всё работает.
С VPN возникла проблема. В firewall создал правила на input порты 1194 (udp), 389 (tcp) - accept. В NAT сделал проброс порта 1194 до 192.168.1.50, с 389 не стал делать проброс, т.к. OpanLDAP находится на внешнем сервере.
В итоге, клиент начинает подключать VPN, доходит до ввода логина\пароля, жмёт ОК а дальше выходят такие сообщения и связь прерывается:

Mon Sep 10 10:48:54 2018 us=144325 read UDP: Unknown error (code=10054)
Mon Sep 10 10:48:56 2018 us=487570 read UDP: Unknown error (code=10054)
Mon Sep 10 10:49:01 2018 us=64565 read UDP: Unknown error (code=10054)
Mon Sep 10 10:49:08 2018 us=890855 read UDP: Unknown error (code=10054)
Mon Sep 10 10:49:24 2018 us=840523 read UDP: Unknown error (code=10054)
Mon Sep 10 10:49:55 2018 us=99046 TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
Mon Sep 10 10:49:55 2018 us=99046 TLS Error: TLS handshake failed


Думаю проблема именно во взаимодействии OpenVPN с внешним OpenLDAP и настройками внутри микротика, скорее всего я не настроил какое-то правило. Подскажите, пожалуйста, как решить данную проблему? Кто-нибудь сталкивался с подобным?

Заранее, всем спасибо, кто откликнулся!
  • Вопрос задан
  • 670 просмотров
Решения вопроса 1
MindPhaser34
@MindPhaser34 Автор вопроса
Системный администратор, DevOps
Собственно, сам спросил, сам ответу:
Во-первых, если правила проброса протов настроены в NAT, то в firewall уже не нужно ничего открывать дополнительно.
Во-вторых, моя ошибка была в том, что я пробрасывал порт TCP, вместо настроенного на сервере OpenVPN - UDP.
В-третьих, для того чтобы посмотреть - приходят ли запросы\пакеты на 1194 порт от клиент к серверу OpenVPN - есть отличная команда (запускается на сервере OpenVPN):
tcpdump -i udp port 1194
Запускаете и смотрите прилетает ли что-нибудь в тот момент, когда вы пытаетесь клиентом подключится к серверу.
Если пакеты прилетают, значит всё ок, идём в логи сервера openvpn (/var/log/openvpn/openvpn.log) и видим какие там ошибки и почему не происходит подключения... У меня сервер ругался на параметр в конфиге и из-за этого всё шло к чертям! )
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
martin74ua
@martin74ua
Linux administrator
input - трафик на микротик
forward - трафик через микротик
output - трафик от микротика

PS. Посмотрите документацию по iptables - примерно тоже самое ;)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы