Настройка двухфакторной аутентификации OpenVPN

Описание

При подключении к OpenVPN пользователи проходят двухэтапную аутентификацию: вводят логин и пароль (первый фактор) и подтверждают вход с помощью второго фактора (Push-уведомление, TOTP или Telegram-бот).

Для интеграции используется PAM-адаптер Simple2FA, который устанавливается на сервер OpenVPN и взаимодействует с локальным инстансом Simple2FA по HTTPS.

Схема работы:

  1. Пользователь подключается к OpenVPN и вводит логин и пароль.
  2. OpenVPN передает учетные данные в PAM-адаптер Simple2FA.
  3. PAM-адаптер отправляет логин и пароль в локальный инстанс Simple2FA по HTTPS.
  4. Локальный инстанс Simple2FA проверяет первый фактор через Active Directory, LDAP или Keycloak.
  5. При успешной проверке первого фактора локальный инстанс инициирует проверку второго фактора.
  6. Пользователь подтверждает вход через Push, TOTP или Telegram-бот.
  7. После успешной проверки второго фактора OpenVPN устанавливает VPN-соединение.

Подготовка в Simple2FA

Войдите в административную панель локального инстанса Simple2FA. Перейдите в раздел «Настройка ресурсов» и создайте новый ресурс:

  • Название: OpenVPN (или любое удобное)
  • Описание: краткое описание ресурса
  • Проверка первого фактора: включена

В панели управления Simple2FA откройте ресурс OpenVPN и скопируйте:

  • API key ресурса
  • адрес local-backend

Требования

  • ОС: Linux (Astra Linux 1.7+, Debian 11+)
  • OpenVPN: версии 2.5 и выше
  • Наличие PAM в системе
  • Доступ сервера OpenVPN к local-backend по HTTPS (TCP 443)
  • Корректное системное время (NTP) на сервере OpenVPN и local-backend
  • Права root для установки PAM-адаптера и изменения PAM-конфигурации

Установка PAM-адаптера

1) Скопируйте PAM-адаптер

  • Скопируйте модуль simple2fa_pam.so в системный каталог PAM.
  • Для Debian-based систем используется каталог /lib/security/.
  • Для RPM-based систем используется каталог /usr/lib64/security/.

2) Установите OpenVPN PAM-plugin

  • Установите пакет OpenVPN PAM-plugin и необходимые PAM-библиотеки.
  • Для Debian plugin обычно располагается по пути:
    /usr/lib/openvpn/plugins/openvpn-plugin-auth-pam.so

3) Создайте конфигурацию Simple2FA

Создайте файл конфигурации PAM-адаптера рядом с конфигурацией OpenVPN.

В конфигурации указываются:

  • API key ресурса OpenVPN
  • URL local-backend
  • параметры проверки первого фактора
  • настройки логирования
  • режим работы OTP

4) Настройте PAM для OpenVPN

В файл /etc/pam.d/openvpn добавляется конфигурация PAM-адаптера Simple2FA.

5) Настройте OpenVPN

В конфигурации OpenVPN подключается PAM-plugin и включается поддержка deferred PAM authentication.

6) Перезапустите OpenVPN

После применения конфигурации перезапустите сервис OpenVPN.

Проверка работы

  • Подключитесь к OpenVPN
  • Введите логин и пароль пользователя
  • Дождитесь запроса второго фактора
  • Подтвердите вход через Push, Telegram или TOTP
  • После успешной проверки VPN-соединение будет установлено

После успешной проверки первого фактора пользователь должен получить запрос на подтверждение второго фактора Simple2FA.

Смотрите также:

Связаться с нами

Укажите свои контактные данные, и мы свяжемся с вами в ближайшее время, чтобы ответить на все ваши вопросы.

Телефон: +7 (495) 120-01-18

Отдел продаж: sales@simple2fa.ru

Поддержка: support@simple2fa.ru

Заполняя форму, вы соглашаетесь на обработку персональных данных.

Телефон: +7 (495) 150-80-59

Отдел продаж: sales@simple2fa.ru

Поддержка: support@simple2fa.ru