Настройка OpenVPN в режиме «клиент - сеть» (устарело)

Введение

Сотрудники на удалённой работе/мобильные клиенты - это удалённые пользователи, которым необходим безопасный доступ к инфраструктуре компании. Traffic Inspector Next Generation использует OpenVPN для настройки SSL VPN «клиент - сеть» и предлагает интеграцию OTP со стандартными токенами и Google Authentificator.

Главные преимущества использования SSL VPN для мобильных клиентов вместо IPsec:

  • Простая настройка, практически для всех мобильных устройств с помощью экспорта конфигурации клиента TING.

  • Тонкий контроль доступа, с помощью нескольких серверов или Переопределения значений для конкретного клиента.

  • Отсутствие проблем с NAT без использования NAT-T.

В этом руководстве покажем, как настроить SSL VPN в TING для режима «клиент - сеть» и приведём примеры конфигурации для:

  • Двухфакторной аутентификации (2FA)

  • Мультифакторной аутентификации (Сертификат клиента + Пароль + OTP)

  • Настройка клиента на Windows и Android

Примечание

Для примера, будем использовать частный IP для нашего WAN-соединения. Для этого потребуется отключить стандартное правило блокировки WAN, чтобы разрешить приватный трафик. Для этого, перейдите в раздел Интерфейсы ‣ [WAN] и снимите флажок Блокировать частные сети*. (Не забудьте сохранить изменения и применить их).

Пример настройки

В примере будет использоваться следующая топология.

Сеть компании с удалённым клиентом

../../_images/sslvpn_client-topology.svg

Сеть компании

Имя хоста

TING

WAN IP

11.22.33.44/32

LAN IP

192.168.1.1/24

Диапазон DCHP для LAN

192.168.1.100-192.168.1.200

Туннельная сеть

172.16.1.0/24

Удалённый пользователь

Имя хоста

User PC

WAN IP

22.33.44.55/32

LAN IP

192.168.2.1/24

Туннельная сеть

172.16.1.0/24

Шаг 0 - Подготовка

В нашем примере мы будем использовать двухфакторную и мультифакторную аутентификации. Поэтому, перед началом настройки SSL VPN, нам понадобится TOTP-сервер и действующий центр сертификации.

Для полноты картины, мы также настроим пользователя.

Настройка TOTP-сервера

Для конфигурирования одноразового пароля на основе времени, перейдите в раздел Система ‣ Доступ ‣ Серверы и нажмите кнопку Добавить в правом верхнем углу формы.

Совет

Также можно использовать быструю навигацию, чтобы сразу перейти к форме настроек сервера доступа. Начните печатать в поле поиска Сер… и в выпадающем меню отобразится список страниц, соответствующих вводимому шаблону:

../../_images/sslvpn_client-navigation.png

Теперь надо выбрать в поле Тип сервера значение Локальный + Синхронизированный по времени пароль. Введите Описательное имя, например TOTP VPN сервер.

В данном примере, оставим все остальные настройки без изменений, по умолчанию - поскольку мы будем использовать Google Authentificator и настройки по умолчанию для него подходят.

При использовании других токенов, может потребоваться изменить Длину токена.

Нажмите кнопку Сохранить, чтобы добавить сервер.

Примечание

Чтобы запрашивать TOTP отдельно, на странице VPN ‣ OpenVPN ‣ Экспорт настроек клиента, в форму ввода Пользовательская конфигурация, добавьте static-challenge "Введите OTP-токен:" 1. Поскольку это опция на стороне клиента, она не будет добавлена автоматически. Клиенты должны импортировать или настроить её. Подробнее об этом статическом запросе можно почитать в «–static-challenge args» .

Добавление центра сертификации

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

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

Если центр сертификации уже существует, данный шаг можно пропустить.

На маршрутизаторе TING, пройдите в раздел Система ‣ Доверенные сертификаты ‣ Полномочия и создайте сертификат со следующими настройками:

Описательное имя

OpenVPN CA

Метод

Создать внутренний центр сертификации

Тип ключа

RSA

Длина ключа (бит)

4096

Алгоритм дайджеста

SHA512

Время существования (д)

365

Код страны

RU (Russia)

Штат или область

MO

Город

Kolomna

Организация

Smart-Soft

Эл. почта

info@smart-soft.ru

Стандартное имя

OpenVPN CA

Создание cертификата сервера для маршрутизатора TING

На маршрутизаторе TING, пройдите в раздел Система ‣ Доверенные сертификаты ‣ Сертификаты и создайте cертификат сервера со следующими настройками:

Метод

Создать внутренний сертификат

Описательное имя

OpenVPN SRV cert

Центр сертификации

OpenVPN CA

Тип

Сертификат сервера

Тип ключа

RSA

Длина ключа (бит)

4096

Алгоритм дайджеста

SHA512

Время существования (д)

365

Код страны

RU (Russia)

Штат или область

MO

Город

Kolomna

Организация

Smart-Soft

Эл. почта

info@smart-soft.ru

Стандартное имя

OpenVPN server cert

Создание пользователя и клиентского сертификата

Создайте учетную запись для пользователя в разделе Система ‣ Доступ ‣ Пользователи на маршрутизаторе TING.

Укажите имя учетной записи и пароль, установите флаг Создать сертификат пользователя и нажмите на кнопку Сохранить. Вы окажитесь в мастере создания сертификата пользователя. Укажите следующие настройки сертификата:

Метод

Создать внутренний сертификат

Описательное имя

Viacheslav

Центр сертификации

OpenVPN CA

Тип

Сертификат клиента

Тип ключа

RSA

Длина ключа (бит)

4096

Алгоритм дайджеста

SHA512

Время существования (д)

365

Код страны

RU (Russia)

Штат или область

MO

Город

Kolomna

Организация

Smart-Soft

Эл. почта

info@smart-soft.ru

Стандартное имя

Viacheslav

Шаг 1 - Добавление SSL-сервера

Пройдите в VPN ‣ OpenVPN ‣ Серверы и нажмите на Добавить сервер в верхнем правом углу формы. Используйте следующие настройки (настройки, которые мы опускаем, должны остаться по умолчанию):

Описание

OpenVPN SSL Server

Режим сервера

Удаленный доступ (SSL/TLS + аутентификация пользователя)

Сервер для аутентификации

Локальная база данных

Протокол

UDP

Режим работы устройства

tun

Интерфейс

WAN

Локальный порт

1194

Центр сертификации пиров

Сертификат OpenVPN CA

Сертификат сервера

Сертификат OpenVPN SRV cert

Длина параметров DH

4096

Алгоритм шифрования

AES-256-CBC (256-bit)

Дайджест-алгоритм аутентификации

SHA512 (512-bit)

Hardware Crypto

Без аппаратного ускорения криптоалгоритмов

Уровень сертификата

Один (клиент + сервер)

Туннельная сеть IPv4

172.16.1.0/24

Локальная сеть/сети IPv4

192.168.1.0/24

Сжатие

Включено с использованием адаптивного сжатия

DNS-серверы

8.8.8.8

Нажмите Сохранить для применения настроек.

Как видно из настроек, VPN будет обладать следующими характеристиками:

SSL/TLS используется
Туннелируемый трафик инкапсулируется в UDP-пакеты
OpenVPN демон будет обрабатывать подключения только на IP-адрес, присвоенный WAN-адаптеру
Сертификаты используются для взаимоаутентификации
Аутентификация по логину/паролю используется
Аутентификация TLS не используется
Сжатие данных используется

Создание правил сетевого экрана

На маршрутизаторе TING, в разделе Межсетевой экран ‣ Правила, на вкладке WAN, создайте правило для разрешения OpenVPN-трафика. По молчанию, OpenVPN использует протокол UDP и порт 1194.

../../_images/pf_rules_udp_1194.png

Для того, чтобы разрешить VPN-клиентам обращаться в сеть 192.168.1.0/24, находящуюся за маршрутизатором TING, и на сам маршрутизатором TING через туннель, на маршрутизаторе TING, в разделе Межсетевой экран ‣ Правила на вкладке OpenVPN, создайте правило для разрешения трафика из IP-сети 172.16.1.0/24.

../../_images/pf_rules_ting.png

Нажмите на кнопку Сохранить изменения.

Настройки на компьютере удаленного пользователя

Установка OpenVPN-клиента

На компьютере удаленного пользователя установите OpenVPN Community, доступный для скачивания по ссылке .

Настройка VPN

Эскпорт настроек клиента.

На маршрутизаторе TING, перейдите в раздел VPN ‣ OpenVPN ‣ Экспорт настроек клиента и эскпортируйте config-файл клиента для OpenVPN:

../../_images/openvpn_export.png

После установки OpenVPN Community, скопируйте эскпортированные файлы в папку config, обычно она расположена C:\Users\%username%\OpenVPN\config:

../../_images/openvpn_path.png

В трее выбрать OpenVPN Connect и нажать Подключиться для установки соединения:

../../_images/openvpn_connect.png

Если подключение прошло без критических ошибок, то в появившемся окне авторизации необходимо ввести данные пользователя:

../../_images/openvpn_authorization.png

Если введены корректные данные пользователя, VPN-соединение будет установлено.