Настройка Open VPN

Шаги, необходимые для настройки двухфакторной аутентификации в Open VPN:

Двухфакторная аутентификация для бизнеса Контур.ID

Шаг 1

Создание конфигурации ресурса

  1. Зайдите в кабинет администратора.
  2. Перейдите в «Ресурсы» и выберите OpenVPN.
  3. Добавьте новую конфигурацию.
  4. Заполните настройки:

    • Название конфигурации: укажите любое имя, например, Kontur.ID.
    • : укажите операционную систему, на которой будет развернут серверный компонент RADIUS.

    • Порт Radius Adapter: укажите порт адреса машины, на которой будет развернут серверный компонент RADIUS.
    • Shared Secret: скопируйте и сохраните секрет  он понадобится для настройки OpenVPN.
    • Основной фактор: укажите Active Directory, OTP-код или Radius.
    • Второй фактор: выберите второй фактор  OTP-код или Push/звонок
    • Запрос второго фактора: укажите «У всех» или настройте ограничения по группам пользователей.
    • Саморегистрация пользователей: включите или отключите саморегистрацию.
    • Домен: укажите домен, в котором серверный компонент RADIUS будет проверять логин и пароль.

  5. Нажмите на кнопку «Сохранить и скачать».

В результате вы получите zip-архив, в котором содержится папка с настройками двухфакторной аутентификации.

Файлы конфигурации уже настроены и готовы к использованию для защиты на второй фактор.

Шаг 2

Установка модуля PAM to RADIUS

Модуль PAM to RADIUS — свободное программное обеспечение, которое позволяет серверу на базе Linux стать клиентом RADIUS для аутентификации. Чтобы настроить взаимодействие между сервером RADIUS-адаптером и Open VPN, скачайте модуль PAM to RADIUS.

Установите модуль:

  • Для Debain, Ubuntu выполните команду:
    Установка модуля PAM to RADIUS
    sudo apt-get install libpam-radius-auth
  • Для CentOS, RedHat, Fedora выполните команды:
    Установка пакета epel-release
    sudo yum -y install epel-release
    Установка модуля PAM to RADIUS
    sudo yum -y install pam_radius
Шаг 3

Настройка модуля PAM to RADIUS

  1. Откройте или создайте файл конфигурации:

    sudo nano /etc/pam_radius_auth.conf
  2. Заполните настройки:
    • server[:port]: IP-адрес и порт, на котором установлен RADIUS-адаптер. По умолчанию порт 1812, если не указан другой.
    • shared_secret: общий секрет RADIUS-сервера из панели управления Контур.ID или из файла appsettings.json.

    • timeout: время ожидания пользовательской аутентификации. Рекомендуемое время — 60 секунд.

      Настройка PAM to RADIUS
      # server[:port]             #shared_secret     #timeout (s)
      127.0.0.1:1812              secret             60
       
  3. Удалите из файла конфигурации примеры серверов.
  4. Сохраните изменения.
Шаг 4

Настройка сервера Open VPN

  1. Откройте конфигурационный файл сервера Open VPN. Обычно он находится в директории /etc/openvpn/ и имеет расширение .conf. Например, server.conf:
    sudo nano /etc/openvpn/server/server.conf
  2. Добавьте в файл строку, чтобы подключить модуль для аутентификации пользователей:
    # plugin /путь/до модуля/openvpn-plugin-auth-pam.so openvpn
    plugin /usr/lib/x86_64-linux-gnu/openvpn/plugins/openvpn-plugin-auth-pam.so openvpn
    

    Модуль openvpn-plugin-auth-pam.so может находиться в разных директориях в зависимости от дистрибутива Linux. Чтобы найти, где установлен модуль, выполните следующую команду:

    cd /
    find . -name openvpn-plugin-auth-pam.so

  3. После подключения модуля openvpn-plugin-auth-pam.so, добавьте в файл строку:
    # включение отложенной аутентификации PAM
    setenv deferred_auth_pam 1
  4. Сохраните изменения.

  5. Перезапустите службу Open VPN, чтобы применить изменения.

Если сервер использует локальную базу

Если VPN-сервер использует локальную базу данных вместо Active Directory, то укажите OTP-код основным фактором. Схема работы аутентификации будет следующая:

  • первый фактор — сертификат пользователя;
  • второй фактор — OTP-код.
  1. Откройте конфигурационный файл. Если файла нет, создайте его.

    sudo nano /etc/pam.d/openvpn
  2. Добавьте строки:

    auth    sufficient  pam_radius_auth.so client_id=NAS-IDentifier
    account sufficient  pam_permit.so
    session sufficient  pam_permit.so

Шаг 5

Настройка взаимодействия сервера Open VPN с модулем PAM to RADIUS

  1. Откройте конфигурационный файл. Если файла нет, создайте его.

    sudo nano /etc/pam.d/openvpn
  2. Добавьте в файл строки:

    auth    required    pam_radius_auth.so
    account sufficient  pam_permit.so
    session sufficient  pam_permit.so
  3. Сохраните изменения.
Шаг 6

Настройка клиента Open VPN

  1. Откройте конфигурационный файл клиента.
  2. Добавьте строку:

    auth-user-pass

    Клиент Open VPN будет запрашивать имя и пароль у пользователя при каждом подключении к VPN-серверу.
     

  3. Сохраните изменения.

Настройка двухфакторной аутентификации в Open VPN завершена.


Двухфакторная аутентификация на ваши ресурсы

Протестируй функциональность бесплатно в течении 2х недель

База знаний