MikroTik OpenVPN: pre-logon на Windows Server 2019
Настройка автоматического подключения MikroTik OpenVPN до входа в систему (pre-logon) на Windows Server 2019. Решение проблем с management-hold, PLAP, службой Local System и auth-user-pass. Пошаговое руководство для стабильного VPN.
Как настроить OpenVPN для автоматического подключения до входа в систему (Pre-Logon) на Windows Server 2019 с сервером Mikrotik?
Спецификация системы:
- ОС: Windows Server 2019
- OpenVPN: 2.6.17
- Сервер OpenVPN: Mikrotik
Выполненные действия:
- Включена опция “Pre-Logon Access” в настройках OpenVPN.
- Служба OpenVPNService настроена на автоматический запуск с правами администратора.
- Файлы конфигурации перенесены в папку auto-config.
Проблема: Автоматическое подключение до авторизации в Windows не происходит. При ручном подключении всё работает корректно.
Логи OpenVPN:
2026-01-16 21:06:15 OpenVPN 2.6.17 [git:v2.6.17/fa20154d58ca609b] Windows [SSL (OpenSSL)] [LZO] [LZ4] [PKCS11] [AEAD] [DCO] built on Nov 28 2025
2026-01-16 21:06:15 Windows version 10.0 (Windows 10 or greater), amd64 executable
2026-01-16 21:06:15 library versions: OpenSSL 3.6.0 1 Oct 2025, LZO 2.10
2026-01-16 21:06:15 DCO version: N/A
2026-01-16 21:06:15 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:5555
2026-01-16 21:06:15 Need hold release from management interface, waiting...
2026-01-16 21:06:58 MANAGEMENT: Client connected from [AF_INET]127.0.0.1:49703
2026-01-16 21:06:58 MANAGEMENT: CMD 'state on'
2026-01-16 21:06:58 MANAGEMENT: CMD 'log on all'
2026-01-16 21:06:58 MANAGEMENT: CMD 'echo on all'
2026-01-16 21:06:58 MANAGEMENT: CMD 'bytecount 5'
2026-01-16 21:06:58 MANAGEMENT: CMD 'state'
Конфигурация клиента (.ovpn):
dev tun
remote ФФФФФФФФФФФ 1194 tcp
tun-mtu 1500
tls-client
nobind
ping 15
ping-restart 45
persist-tun
persist-key
mute-replay-warnings
verb 3
data-ciphers AES-256-CBC
pull
auth-user-pass
connect-retry 1
reneg-sec 3600
remote-cert-tls server
management 127.0.0.1 5555
management-hold
management-query-passwords
Какие дополнительные настройки или права требуются для работы Pre-Logon? Где может быть ошибка?
Для автоматического подключения OpenVPN до входа в систему (pre-logon) на Windows Server 2019 с сервером Mikrotik отключите management-hold и management-query-passwords в файле .ovpn — именно они заставляют службу ждать команды от GUI, как видно из ваших логов. Настройте службу OpenVPNService на запуск от Local System, включите Pre-Logon Access Provider (PLAP) при установке или через OpenVPN GUI, и используйте auth-user-pass с файлом паролей для обхода интерактивной авторизации. Это решит проблему “Need hold release from management interface”, типичную для mikrotik openvpn в pre-logon режиме — при ручном запуске GUI просто снимает hold.
Содержание
- Настройка Pre-Logon Access Provider (PLAP)
- Корректировка конфигурации .ovpn для mikrotik openvpn
- Настройка службы OpenVPNService
- Права доступа и учетная запись Local System
- Авторизация с Mikrotik: auth-user-pass
- Тестирование, логи и устранение неисправностей
- Источники
- Заключение
Настройка Pre-Logon Access Provider (PLAP)
Сначала убедитесь, что Pre-Logon Access Provider включен — без него Windows Server 2019 просто не даст OpenVPN запуститься до логина. Вы говорите, что опция “Pre-Logon Access” уже включена, но давайте перепроверим шаг за шагом.
Переустановите OpenVPN 2.6.17 с галочкой “Enable OpenVPN Pre-Logon Access Provider” во время установки. Если уже стоит, правой кнопкой на иконке OpenVPN GUI в трее (даже скрытой), выберите “Advanced Settings” и поставьте галку напротив Pre-Logon Access Provider. Согласно официальной документации OpenVPN, это критично для Windows 10+ (Server 2019 на той же базе).
А теперь вопрос: а служба GUI не мешает? Отключите автозапуск OpenVPN GUI в реестре или диспетчере задач — иначе конфликт с pre-logon. После этого импортируйте ваш .ovpn из Mikrotik и перезапустите службу.
Корректировка конфигурации .ovpn для mikrotik openvpn
Ваша конфигурация — вот корень зла. Строки management 127.0.0.1 5555, management-hold и management-query-passwords предназначены для GUI: они ждут, пока вы вручную подтвердите hold release. В pre-logon нет GUI, так что служба висит вечно, как в логах.
Откройте .ovpn в блокноте и закомментируйте (добавьте # перед строкой) или удалите эти три строки:
# management 127.0.0.1 5555
# management-hold
# management-query-passwords
Сохраните в C:\Program Files\OpenVPN\config\ (или вашу auto-config). Для Mikrotik добавьте remote-cert-tls server уже есть — хорошо, но убедитесь в TLS-совместимости: на роутере проверьте /ppp profile вашего OpenVPN, чтобы tls-version не был слишком свежим для 2.6.17. Форум OpenVPN подтверждает: без этого auth-user-pass не сработает до логина.
Если трафик не пойдет после подключения, добавьте pull-filter ignore "redirect-gateway" — Mikrotik иногда пушит маршруты агрессивно.
Настройка службы OpenVPNService
Служба на автоматическом запуске с админом — это полдела, но для pre-logon она должна быть чистой службой без GUI-зависимостей.
services.msc→ OpenVPNService → Свойства → Тип запуска: Автоматически.- Вкладка “Войти в систему” → Local System account (не пользователь!).
- Зависимости: добавьте в реестре
HKLM\SYSTEM\CurrentControlSet\Services\OpenVPNServiceпараметрImagePathс путем кopenvpnserv.exe --config your.ovpn.
Перезапустите службу. Русскоязычное руководство по автоподключению советует: если в логах все равно waiting, создайте bat-файл с net start OpenVPNService и запланируйте в Task Scheduler на “При запуске системы” с правами SYSTEM.
Почему это работает? Local System видит сеть до логина, в отличие от юзер-аккаунта.
Права доступа и учетная запись Local System
OpenVPNService под Local System должна читать все файлы в config без вопросов. Ваша папка auto-config — ок, но проверьте:
- Правой кнопкой на
C:\Program Files\OpenVPN\config\→ Свойства → Безопасность → Добавить “SYSTEM” с полным доступом. - Файл паролей (см. ниже) тоже в config, с правами только SYSTEM+Administrators.
На Server 2019 иногда глючит UAC — отключите для службы в secpol.msc → Локальные политики → Права пользователя → “Вход в службу как” → добавьте NT AUTHORITY\SYSTEM.
Обсуждение на Reddit подчеркивает: без этого Mikrotik-сервер отвергает подключение из-за прав на certs.
Быстрый тест: запустите службу вручную от SYSTEM через PsExec (psexec -s -i services.msc).
Авторизация с Mikrotik: auth-user-pass
Mikrotik OpenVPN требует username/password, а auth-user-pass без файла ждет ввода. Создайте pass.txt в config:
your_username
your_password
В .ovpn замените auth-user-pass на auth-user-pass pass.txt. На Mikrotik в /ppp secret убедитесь, что профиль matches (service=ovpn, profile=openvpn).
Документация Mikrotik предупреждает: без key-direction и tls-auth клиент зависнет. Добавьте в .ovpn:
tls-auth ta.key 1
Генерируйте ta.key на Mikrotik: /certificate export-certificate ta.ovpn.
Теперь pre-logon увидит creds автоматически — никаких промптов.
Тестирование, логи и устранение неисправностей
Перезагрузите сервер. В логах (C:\Program Files\OpenVPN\log\) должно быть “Initialization Sequence Completed” без waiting. Если нет:
verb 4в .ovpn для детальных логов.- Проверьте Event Viewer → Windows Logs → System на ошибки PLAP.
- Task Manager на старте: ищите openvpnserv.exe под SYSTEM.
Типичные косяки с mikrotik openvpn: poll error (UDP вместо TCP? Ваш tcp — ок), duplicate packets (добавьте mute-replay-warnings). Если не пингует — route add вручную или push route на роутере.
Хабр Q&A делится: на Server 2019 Task Scheduler с триггером “Startup” бьет на 100%. Тестируйте в безопасном режиме — если работает, виноват софт.
Удалось? Теперь весь домен доступен до Ctrl+Alt+Del.
Источники
- Access Server: Configure “Start Before Logon” (SBL) / “Pre-Logon Access Provider” (PLAP) using OpenVPN GUI
- r/OpenVPN: OpenVPN on boot before login Windows
- r/OpenVPN: How to have OpenVPN connect automatically before the login screen?
- Start Before Login (User Auth) - OpenVPN Forum
- Enable OpenVPN Pre-Logon Access Provider - OpenVPN Forum
- Автоматическое подключение к OpenVPN в Windows
- Автоматический запуск OpenVPN из под Windows
- OpenVPN - RouterOS - MikroTik Documentation
Заключение
Настройка mikrotik openvpn для pre-logon на Windows Server 2019 сводится к отключению management-hold, переходу на службу Local System с PLAP и auth-user-pass файлом — после этого автоматическое подключение заработает стабильно, без ожидания логина. Главная ошибка в вашем случае — GUI-зависимые директивы в .ovpn, которые блокируют службу. Протестируйте после правок, и если логи чистые, сервер готов к доменной авторизации. Удачи с настройкой openvpn windows server 2019!