Двухфакторная аутентификация для MikroTik L2TP VPN
Описание
При подключении к L2TP VPN на базе MikroTik пользователи проходят двухэтапную проверку: вводят логин и пароль (первый фактор) и подтверждают вход вторым фактором.
MikroTik передаёт запрос на проверку первого фактора по протоколу RADIUS в локальный инстанс Simple2FA; он же запрашивает у пользователя подтверждение вторым фактором.
Схема работы:
- Пользователь инициирует подключение к L2TP VPN на MikroTik.
- MikroTik перенаправляет запрос аутентификации через RADIUS на локальный инстанс Simple2FA.
- Локальный инстанс проверяет логин/пароль по AD/LDAP или другому провайдеру первого фактора.
- При успешной проверке запрашивается подтверждение вторым фактором.
- Пользователь подтверждает второй фактор.
- После успешной проверки обоих факторов устанавливается VPN-соединение.
Подготовка в Simple2FA
Войдите в панель администратора локального инстанса, перейдите в раздел «Настройка ресурсов» и создайте новый ресурс:
| Поле | Значение |
|---|---|
| Название | MikroTik L2TP VPN (или любое удобное) |
| Протокол | RADIUS |
| NAS ID | Строка идентификации RADIUS-клиента MikroTik L2TP VPN (должна соответствовать атрибуту NAS-Identifier в запросах MikroTik L2TP VPN). Создаётся автоматически |
| Shared Secret | Общий секрет, который будет использоваться в настройках RADIUS на MikroTik L2TP VPN. Создаётся автоматически |
| Проверять первый фактор | Включить |
| Поставщики учётных записей | Выберите один или несколько каталогов, в которых будет выполняться проверка первого фактора пользователей |
| Использовать кеширование сессий | Включить, если необходимо, чтобы у пользователя после успешного входа не запрашивался второй фактор в течение указанного времени |
| Длительность кеша | Рекомендуемое значение — 60 минут |
В глобальных настройках убедитесь, что указан корректный API-ключ организации для связи локального инстанса с облаком.
Настройка MikroTik L2TP VPN
Настройка выполняется через WinBox или CLI RouterOS.
1) Включите L2TP сервер
/interface l2tp-server server
set enabled=yes use-ipsec=yes ipsec-secret=<IPsec-ключ> authentication=pap
2) Настройте RADIUS-сервер
/radius
add service=ppp address=<IP-адрес локального Simple2FA> secret=<Shared Secret> timeout=60s authentication-port=1812 accounting-port=1813
3) Включите использование RADIUS для PPP
/ppp aaa
set use-radius=yes
Проверка работы
- Подключитесь к L2TP VPN с тестовой учётной записи,
- Введите логин и пароль (первый фактор),
- Получите запрос второго фактора,
- Подтвердите вход,
- После успешной проверки будет установлено защищённое VPN-соединение.