OSS Group OSS Group
>  Карта
>  Поиск
>  Контакты
>  OSS Group  ::  Admin  ::  Настройка OpenVPN
  
РегистрацияЗабыли пароль?

↓  Быстрый поиск по Wiki


Режим поиска:   И   ИЛИ

↓  Доступные Wiki

↓  Навигация по сайту

[]

↓  Последняя новость

Загрузка...
Get Firefox!
[~]

Настройка OpenVPN

OpenVPN - свободная реализация SSL VPN.

Общий порядок настройки OpenVPN

  • Установка пакета - apt-get install openvpn
  • Создание CA и сертификатов, см. "Создание сертификатов OpenSSL"
  • Создание конфигураций на базе шаблонов в %doc
  • Разрешение для сервера прохождения пакетов на порт 1194.
  • Настройка межсетевого экрана для интерфейсов tunX - на клиенте и сервере. В конфигурации OpenVPN возможно привязаться к конкретному интерфейсу путём задания его имени в директиве dev (dev tun0).

См. также:
Описание порядка настройки клиента в Windows.
Особенности установки в контейнер OpenVZ с интерфейсом venet.
Особенности установки OpenVPN в ALT Linux.

Возможные причины проблем

  • Сообщения вида 'TLS error: unroutable control packet...' вызываются или расхождениями времени на сервере и клиенте, или ошибками в сертификатах. Искать причины в настройках роутинга и межсетевых экранов стоит в последнюю очередь.
  • Корректность сертификатов желательно проверять
openssl verify -CAfile ca.cert -purpose sslclient client.cert
openssl verify -CAfile ca.cert -purpose sslserver server.cert
  • Сообщения вида 'TLS Error: cannot locate HMAC' вызываются расхождениями в конфигурации клиента и сервера в области директивы tls-auth ta.key.
  • Много интересного есть на форуме Gentoo.

Разное

Управление пользователями

  • Через выдачу сертифкатов и управлением списком отзыва. Список отзыва задаётся директивой crl-verify. При работе в chroot список отзыва должен быть доступен openvpn - он проверяется каждый раз при подключении клиента.
  • Через отдельный вызываемый при подключении скрипт. Имя скрипта задаётся директивой tls-verify.

Подсчёт трафика

  • Возможен, для каждого соединения передаётся в параметрах скрипта client-disconnect.

Периодическая проверка сертификатов клиентов

  • Возникает при необходимости управления доступом уже подключенных клиентов (т.е. даёт возможность периодической проверки сертификата клиента по списку CRL). Для настройки использовать директивы 'reneg-sec' (повторная авторизация через определённый временной интервал), 'reneg-pkts' (через определённое количество переданных пакетов) или 'reneg-bytes' (через определённый объём трафика).

Интерфейс управления и мониторинга

Есть возможность включить встроенный интерфейс управления - директивой конфигурации сервера

  management <IP> <port>

При этом появляется возможность подключения через telnet к локальному интерфейсу с <IP> на указанный порт. Никакой авторизации не предусмотрено, т.е. в большинстве случаев следует указывать в качестве интерфейса localhost. Список доступных команд выдается по "help". Есть возможность просмотра текущих соединений, а также отправления серверу ряда команд.

Использование OpenVPN с несколькими внешними интерфейсами

OpenVPN 2.0 не умеет работать с несколькими внешними интерфейсами по протоколу UDP. Если есть необходимость запустить один сервер на несколько внешних интерфейсах, то требуется или переходить на TCP, или использовать версию 2.1.

Изменение маршрута по умолчанию

Есть возможность установить маршрут по умолчанию (default route) через созданный туннель OpenVPN. Для этого можно использовать директиву 'redirect-gateway', в т.ч. с автоматической передачей её клиенту через механизм push-pull. Однако при работе клиента под непривилегированным пользователем и в chroot-окружении возникают проблемы с восстановлением старого маршрута при закрытии соединения, т.к. клиенту не хватает прав внести изменения в таблицу маршрутизации. Для обхода этой ситуации следует использовать параметр 'def1' директивы 'redirect-gateway'. При этом на сервере в файле конфигурации (глобальном или конкретного клиента) переназначение маршрута задаётся строкой вида

  push "redirect-gateway def1"

Получив эту директиву (при наличии 'pull' в своей конфигурации), клиент не удаляет старый маршрут, а добавляет в таблицу маршрутизации записи вида:

 0.0.0.0/1 via 192.168.231.5 dev tun0 
 128.0.0.0/1 via 192.168.231.5 dev tun0 

Оригинальный маршрут по-умолчанию при этом не используется пока существует интерфейс tun0 канала.


Дата создания: 2006-05-24 15:18:16 (Фетисов Н. А. (naf))
Последнее изменение: 2008-04-22 23:08:59 (Фетисов Ф. А. (faf))
Владелец: Фетисов Н. А. (naf)
Версия: 15  Все версии


  Не показывать комментарии



Wiki::Admin   Оглавление  Карта раздела  Изменения за сутки  Изменения за неделю  Изменения за месяц



Valid XHTML 1.0 Transitional  Valid CSS!  [Valid RSS]