Фэндом

Man вики

Переход с keriovpn на openvpn

41статья на
этой вики
Добавить новую страницу
комментариев0 Поделиться

Подключение филиала по технологии OpenVPN на OS WindowsПравить

Цели и задачиПравить

  • Повысить уровень автоматизации системы отказоустойчивости впн сети, в сравнении с KerioVPN
  • Обеспечить возможность проброса Интернет в филиал через центральный канал с сохранением резервирования туннелей.
  • Подготовить платформу для отказа от Kerio

План переходаПравить

Подготовка центрального сервераПравить

  • Настройка на центральном шлюзе сервера OpenVPN (сертификатная авторизация)
    • Создание сертификатов и ключей сервера
    • Создание сертификатов и ключей клиента
    • Создание конфигурации параметров клиента
  • Настройка KWF на работу с OpenVPN

Подготовка сервера филиалаПравить

  • Установка ОпенВПН на сервере филиала
  • Настройка конфигурации и установка сертификата
  • Настройка KWF на работу с OpenVPN

Настройка центральной точкиПравить

1. Создание сертификатов и ключей сервераПравить

ПРИМЕР - gw-khb01

  • Генерируем CA
build-ca.bat
build-dh.bat
build-key-server.bat gw-khb01

2. Создание конфигурации сервераПравить

  • Внимание, если сервер openvpn будет работать совместно с клиентом openvpn (например до вышестоящей центральной точки) необходимо добавить дополнительныю виртуальную сетевую карту ovpn. Новый адаптер переименовать в ovpn-int. Создадим новый адаптер
"C:\Program Files\OpenVPN\bin\addtap.bat"

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

notepad c:\Program Files\OpenVPN\config\gw-khb01.ovpn
port 1194
proto udp
dev tun

# Привязка к виртуальной сетевой карте в Windows. 
# В данном случае, необходимо сетевую карту переименовать в ovpn-int
dev-node ovpn-int

# Пути до сертификатов и ключей относительно папки config
ca khb-keys/ca.crt
cert khb-keys/gw-khb01.crt
key khb-keys/gw-khb01.key
dh khb-keys/dh1024.pem

# Относительный путь и имя папки с маршрутами для виртуального коммутатора E3
client-config-dir ccd
client-to-client

persist-key
persist-tun

# Адреса служебной подсети (подложка)
server 10.0.43.0 255.255.255.0

# route 10.0.33.0 255.255.255.0
  route 10.0.34.0 255.255.255.0
# route 10.0.35.0 255.255.255.0
# route 10.0.36.0 255.255.255.0
# route 10.0.37.0 255.255.255.0
# route 10.0.38.0 255.255.255.0
# route 10.0.39.0 255.255.255.0
# route 10.0.40.0 255.255.255.0
# route 10.0.41.0 255.255.255.0
# route 10.0.42.0 255.255.255.0

# Отключить сжатие трафика, для экономии ресурсов ЦП
comp-lzo no

push "route 192.168.0.0 255.255.0.0"
push "route 10.0.0.0 255.0.0.0"

push "dhcp-option DNS 192.168.32.15"
 
ifconfig-pool-persist udp_ipp.txt
status udp_status.log

Настройка филиалаПравить

ПРИМЕР - gw-khb11, сервер обслуживающий сеть 10.0.42.0/24

1. Создание сертификатов и ключей клиента на стороне сервераПравить

Сперва необходимо убедится, что в каталоге ключей c:\Program Files\OpenVPN\easy-rsa\keys еще нет файлов для нужного филиала. Затем необходимо зайти в консоль сервера cmd и вополним:

cd "c:\Program Files\OpenVPN\easy-rsa"
vars.bat
build-key-pkcs12.bat gw-khb11

Все параметры подтверждаем по умолчанию кроме Common Name, его устанавливаем равным имени сервера:

Common Name (eg, your name or your server's hostname) []: gw-khb11

Затем подтверждаем подписи

>Sign the certificate? [y/n]:y
>1 out of 1 certificate requests certified, commit? [y/n] y

В каталоге c:\Program Files\OpenVPN\easy-rsa\keys должен появится файл gw-khb11.p12, его необходимо будет скопировать на клиентский компьютер.

2. Настройка параметров клиента на стороне сервераПравить

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

C:\Program Files\OpenVPN\config\khb32.ovpn

необходимо добавить строку или раскоментировать строку

route 10.0.42.0 255.255.255.0

и создать файл для виртуального коммутатора

echo iroute 10.0.42.0 255.255.255.0 > "C:\Program Files\OpenVPN\config\ccd\gw-khb11"

3. Настройка на стороне клиентаПравить

notepad C:\Program Files\OpenVPN\config\gw-khb11.ovpn
client
dev tun
proto udp

# Адреса центрального филиала
remote 188.93.129.26
remote 95.143.8.42

# Проверять каждую секунду не отвалился ли канал и если да, то через 10 секунд выполнить перезапуск подключения
keepalive 1 10

# Отвязка от порта (позволяет запускать несколько клиентских OpenVPN подключений)
nobind

# Имя и путь до контейнера безопасности относительно пути с конфигурацией
pkcs12 gw-khb11.p12

# Перенаправить весь трафик Интернет, через центральный филиал назначив два маршрута 0.0.0.0/1 и 128.0.0.0/1
redirect-gateway def1

# Отключить сжатие трафика, для экономии ресурсов ЦП
comp-lzo no
  • Запуск и проверка

1. Необходимо перевести интерфейс OpenVPN в локальные интерфейсы в KWF и убедится, что есть правило, которое разрешает маршрутизацию между локальной сетью и OpenVPN

2. Необходимо разрешить серверу подключаться к центральному филиалу по порту UDP:1194

3. Остановить KerioVPN тунель до центрального филала

4. Запустить службу OpenVPN

Проблемы и решенияПравить

Не назначать общие маршруты конкретному клиентуПравить

В случае, если какому-то клиенту необходимо назначить индивидуальные маршруты и не назначать общие, необходимо на стороне сервера в файле ccd/имяклиента дописать например:

push-reset
push route 10.0.32.0 255.255.240.0

где push-reset, запрещает отдавать этому клиенту общие параметры назначаемые командой push в конфигурационном файле сервера

Не работает после перезагрузкиПравить

Вариант1Править

Случается, что при совместной работе KFW и Open-VPN появляется проблема. Суть её в том, что после перезагрузки сервера Open-VPN стартует, но не назначает адреса. Приходится вручную перезапускать службу.

  • Решение, выполнить в консоли. При этом, необходимо выполнять эту операцию локально, так-как после неё все параметры сетевых карт сбросятся и их придется настраивать вручную повторно. А также возможно придется переустановить Winroute!
netsh int ip reset logfile.txt
netsh winsock reset catalog

Вариант2Править

Решение проблемы Openvpn+Winroute (на винде,серверной стороне, openvpn иногда при старте неможет получить айпи на свой интерфейс)

В конфиге опенвпн на строне сервера: ip-win32 netsh

Вариант 3Править

Создается файл notepad C:\Program Files\OpenVPN\vpn.cmd

ping -n 15 127.0.0.1 > nul
netsh interface set interface name="ovpn" admin=DISABLED
netsh interface set interface name="ovpn" admin=ENABLED
net stop OpenVPNService
ping -n 15 127.0.0.1 > nul
net start OpenVPNService
  • Тут ovpn имя адаптера OpenVPN, если оно отличается надо или переименовать или исправить в скрипте на другое, но написанное латинскими буквами.

Скрипт добавляется в диспетчер назначенных заданий на автозагрузку при загрузке системы.

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

Также на Фэндоме

Случайная вики