Перейти к содержимому
InstagramYouTubeFacebook

Remote Access

Удалённое управление MikroTik через OpenVPN

Настройте OpenVPN с VPS-сервером и клиентом MikroTik для удалённого управления: настройка PKI, работа с сертификатами и практики безопасности.

Резюме OpenVPN — это проверенная временем VPN на базе TLS, которая отлично сочетается с VPS как хабом и роутерами MikroTik как клиентами для удалённого управления. Она появилась до WireGuard и Tailscale, но остаётся актуальной благодаря широкой совместимости, гранулярному управлению PKI и гибким опциям маршрутизации. Это руководство покрывает настройку сервера на Ubuntu VPS с easy-rsa, работу с клиентскими сертификатами, конфигурацию OVPN-клиента на MikroTik и контрольный список безопасности, который держит развёртывание аудируемым со временем.

Как OpenVPN обеспечивает удалённое управление MikroTik?

OpenVPN — это open-source реализация VPN на базе OpenSSL, которая устанавливает зашифрованные туннели поверх TCP или UDP. Для удалённого управления MikroTik типичная топология сочетает Ubuntu VPS, постоянно онлайн, в качестве сервера с одним или несколькими роутерами MikroTik в роли клиентов. Роутер инициирует туннель исходящим соединением, поэтому NAT и CGNAT на стороне клиента не имеют значения, а VPS держит маршруты и правила NAT, позволяющие достучаться до роутера (и устройств за ним) через туннель.

Сильные стороны OpenVPN — зрелая криптография (AES-256, SHA-256, TLS), поддержка IPv4 и IPv6, режимы TUN (маршрутизация) и TAP (мост) и широкая совместимость между производителями и ОС, включая RouterOS. Компромиссы — более тяжёлая нагрузка на CPU, чем у WireGuard, на небольших роутерах, реальный шаг настройки PKI (CA, сертификаты, ключи) и специфическое ограничение RouterOS, о котором нужно знать: исторически OVPN-клиент MikroTik поддерживает только транспорт TCP в некоторых версиях. Для сравнительных шаблонов см. наши руководства удалённое управление с WireGuard, с SSTP и с Tailscale.

Как работает OpenVPN

OpenVPN устанавливает зашифрованный туннель между сервером (обычно публичный VPS) и одним или несколькими клиентами. Аутентификация использует CA, сертификаты на клиента и опциональный TLS-auth (ta.key). Два распространённых режима:

  • TUN (маршрутизация) — IP-маршрутизация между сетями. Стандартный выбор.
  • TAP (мост) — мост на канальном уровне, полезен для приложений, зависящих от broadcast. Тяжелее и редко необходим.

Шаг 1: Установить OpenVPN на VPS

apt update && apt install -y openvpn easy-rsa

Шаг 2: Построить PKI и ключи сервера

make-cadir ~/openvpn-ca
cd ~/openvpn-ca
./easyrsa init-pki
./easyrsa build-ca nopass
./easyrsa gen-req server nopass
./easyrsa sign-req server server
./easyrsa gen-dh
openvpn --genkey --secret ta.key

Храните CA приватно и делайте резервные копии. Относитесь к ключам CA как к секретам уровня production — любой, у кого есть CA, может подделать легитимные клиентские сертификаты.

Шаг 3: Написать конфигурацию сервера

/etc/openvpn/server.conf (минимум):

port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh.pem
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
keepalive 10 120
cipher AES-256-CBC
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3

Шаг 4: Запустить службу и открыть межсетевой экран

systemctl enable openvpn@server
systemctl start openvpn@server
ufw allow 1194/udp

Если вы открываете порт 1194 для всего интернета, защитите VPS — fail2ban, строгие SSH-ключи и ограничения по IP-адресам источника на межсетевом экране там, где это уместно. Открытые в интернет VPN-эндпоинты непрерывно сканируются.

Шаг 5: Создать клиентские сертификаты и конфигурацию

Сгенерируйте клиентский сертификат с easy-rsa (./easyrsa build-client-full client1 nopass) и упакуйте для клиента:

  • ca.crt
  • client1.crt
  • client1.key
  • ta.key (если используется)
  • client.ovpn — файл конфигурации клиента

Минимальный client.ovpn:

client
dev tun
proto udp
remote YOUR.VPS.IP 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client1.crt
key client1.key
remote-cert-tls server
cipher AES-256-CBC
verb 3

Шаг 6: Настроить MikroTik как OpenVPN-клиент

RouterOS поддерживает клиентские OpenVPN-соединения с ограничениями, специфичными для RouterOS, — в частности, более старые версии ограничены транспортом TCP.

  1. Загрузите ca.crt, client1.crt и client1.key на MikroTik через окно Files в Winbox.
  2. В терминале:
/interface ovpn-client add name=ovpn-out1 \
connect-to=YOUR.VPS.IP port=1194 \
user=vpnuser password="yourpassword" \
profile=default-encryption add-default-route=no
/interface ovpn-client print

Ожидаемый статус:

status: connected
uptime: 00:01:03
remote-address: 10.8.0.1
local-address: 10.8.0.6

Проверьте release notes вашей версии RouterOS, если соединение не устанавливается через UDP: если ваша версия ограничивает OVPN-клиент TCP, переключите proto сервера на tcp и соответствующее правило межсетевого экрана. В качестве дружественной к UDP альтернативы на RouterOS WireGuard — современный выбор по умолчанию.

Достичь внутреннего устройства через туннель

Чтобы достучаться до устройства за MikroTik (например, камеры на 192.168.88.100), используйте dst-nat на MikroTik, чтобы выставить локальный порт через туннель:

/ip firewall nat add chain=dstnat protocol=tcp dst-port=8081 \
action=dst-nat to-addresses=192.168.88.100 to-ports=80

С сервера или другого VPN-клиента подключайтесь по маршрутизируемому адресу и порту:

http://10.8.0.6:8081

Трафик идёт через туннель OpenVPN и достигает внутреннего хоста.

Лучшие практики безопасности

  • Уникальный сертификат на каждого клиента. Никогда не переиспользуйте ключи между устройствами.
  • Совмещайте TLS-клиентские сертификаты с логином/паролем, если хотите контроль, похожий на двухфакторный.
  • Ротируйте ключи и сертификаты по графику. Внедрите CRL (списки отзыва сертификатов) для утерянных устройств.
  • Ограничивайте IP-адреса источников на межсетевом экране VPS там, где это уместно.
  • Предпочитайте UDP ради производительности; проверяйте совместимость RouterOS по релизу.
  • Мониторьте состояние соединения и логи (syslog, openvpn-status.log).
  • Автоматизируйте выпуск сертификатов для большого парка скриптами, но держите CA офлайн там, где возможно, — CA на подключённом сервере находится в одном фишинговом письме от компрометации.

Для более широкого контекста безопасности плоскости управления см. нашу статью лучшие практики безопасности Winbox.

OpenVPN против современных альтернатив

РешениеСильные стороныКогда выбирать
OpenVPNСовместимость, гранулярный контроль сертификатовСмешанные/устаревшие парки; корпоративные устройства
WireGuardСкорость, простота, современная криптографияСовременные устройства, компактные роутеры
SSTPTLS на порту 443, прохождение межсетевых экрановСети, блокирующие UDP и другие VPN-порты
Tailscale / ZeroTierMesh, на основе идентификации, простое развёртываниеНоутбуки, команды, кроссплатформенная совместная работа

Когда использовать OpenVPN

Выбирайте OpenVPN, когда важен тонкий контроль над сертификатами, ваш парк включает устаревшие устройства или appliance-устройства без современных VPN-агентов, или когда нужна интеграция с уже существующими правилами межсетевого экрана и корпоративным PKI. Если важнее чистая пропускная способность и минимальные накладные расходы на CPU — выигрывает WireGuard; см. туториал WireGuard и руководство по Tailscale.

Сделайте следующий шаг

OpenVPN не реликт. Это надёжный инструмент, когда нужна совместимость и явный контроль над аутентификацией и маршрутизацией. Сочетайте его с VPS и клиентом MikroTik — и вы получите надёжный, аудируемый путь удалённого доступа к камерам, роутерам и внутренним сервисам.

Если вы предпочитаете обойтись без ритуала PKI для каждого устройства, NATCloud от MKController обеспечивает удалённый доступ к устройствам за NAT или CGNAT с централизованным управлением, мониторингом и автоматическим переподключением — без сертификатов, которые нужно поддерживать для каждого роутера.

Начните бесплатную пробную версию MKController