Настройка openvpn сервера и клиента на mikrotik

Содержание:

Конфигурирование устройств

Покажу все на примере одного роутера, так как настройки у них идентичны. Начинаем с настройки IPSec Peer. Вообще для поднятия туннеля достаточно добавить address, auth-method and secret но все по порядку. Идем в раздел IP-> IPSec вкладка Peers, добавляем новый элемент через плюс. Далее на первой вкладке изменим следующие параметры:

  • Address – 192.168.13.27 (белый ip удаленного роутера)
  • Auth. Method – метод авторизации, выбираем «pre shared key»
  • Secret – пароль который должен быт одинаковый на обоих микротиках.

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

  • Src. Address – 10.1.202.0/24 (адрес локальной сети в Москве)
  • Dst. Address – 10.1.101.0/24 (адрес локальной сети в Питере)

Здесь же на вкладке Action выбираем протокол шифрования и указываем SA для каждого микторика. Обязательно поставьте галочку Tunnel.

Сохраняем все и идем проверять установился ли IPSec туннель между городами. Посмотреть это можно в разделе Installed SAs. Если у вас примерно также как у меня, значить трафик шифруется и VPN работаем.

OVPN Server

Sub-menu:

This sub-menu shows interfaces for each connected OVPN clients.

An interface is created for each tunnel established to the given server. There are two types of interfaces in OVPN server’s configuration

  • Static interfaces are added administratively if there is a need to reference the particular interface name (in firewall rules or elsewhere) created for the particular user.
  • Dynamic interfaces are added to this list automatically whenever a user is connected and its username does not match any existing static entry (or in case the entry is active already, as there can not be two separate tunnel interfaces referenced by the same name).

Dynamic interfaces appear when a user connects and disappear once the user disconnects, so it is impossible to reference the tunnel created for that use in router configuration (for example, in firewall), so if you need a persistent rule for that user, create a static entry for him/her. Otherwise it is safe to use dynamic configuration.

Note: in both cases PPP users must be configured properly — static entries do not replace PPP configuration.

Server configuration

Sub-menu:

Properties:

Property Description
auth (sha1 | md5; Default: sha1,md5) Authentication methods that server will accept.
certificate (name | none; Default: none) Name of the certificate that OVPN server will use.
cipher (aes128 | aes192 | aes256 | blowfish128; Default: aes128,blowfish128) Allowed ciphers.
default-profile (name; Default: default) Default profile to use.
enabled (yes | no; Default: no) Defines whether OVPN server is enabled or not.
keepalive-timeout (integer | disabled; Default: 60) Defines the time period (in seconds) after which the router is starting to send keepalive packets every second. If no traffic and no keepalive responses has came for that period of time (i.e. 2 * keepalive-timeout), not responding client is proclaimed disconnected
mac-address (MAC; Default: ) Auto Generated MAC address of the server.
max-mtu (integer; Default: 1500) Maximum Transmission Unit. Max packet size that OVPN interface will be able to send without packet fragmentation.
mode (ip | ethernet; Default: ip) Layer3 or layer2 tunnel mode (alternatively tun, tap)
netmask (integer; Default: 24) Subnet mask to be applied to client.
port (integer; Default: 1194) Port to run server on.
require-client-certificate (yes | no; Default: no) If set to yes, then server checks whether client’s certificate belongs to the same certificate chain.
 /interface ovpn-server server set enabled=yes 
 /interface ovpn-server server set certificate=server 
 /interface ovpn-server server print 
                     enabled: yes
                        port: 1194
                        mode: ip
                     netmask: 24
                 mac-address: FE:A5:57:72:9D:EC
                     max-mtu: 1500
           keepalive-timeout: 60
             default-profile: default
                 certificate: server
  require-client-certificate: no
                        auth: sha1,md5
                      cipher: blowfish128,aes128

Warning:
It is very important that the date on the router is within the range of the installed certificate’s date of expiration. To overcome any certificate verification problems, enable NTP date synchronization on both server and client.

Настройка OpenVPN сервера на Mikrotik

Подключимся к Mikrotik с помощью программы Winbox.
Загрузим 3 файла: ca.crt, server.crt, server.key
Для этого в меню нажмём Files и перетащим их из папки C:\Program files\OpenVPN\easy-rsa\keys

13) Далее необходимо их импортировать.
Откроем System – Certificates — Import и поочерёдно выберем сертификаты в этом порядке:ca.crtserver.crtserver.key

После импорта появятся две записи:

14) Создадим пул адресов для VPN клиентов:

IP — Pool — add (+)
Введём название openvpn-pool
Диапазон 172.30.0.2-172.30.0.253

15) Создадим PPP профиль.

PPP — Profiles — add (+)
Введём название openvpn
Локальный адрес 172.30.0.1
Созданный Пул openvpn-pool
Остальные настройки оставляем по умолчанию.
Нажимаем ОК.

16) Создадим непосредственно сам OpenVPN серверPPP — Interface — OVPN Server
Включаем Enable
Указываем порт 1194
Выбираем наш профиль openvpn
Поставим галочку Require Client Certificate
Выберем наш сертификат server.crt

17) Создадим пользователя для подключения.PPP — Secrets — add (+)
Введём имя пользователя и пароль ovpn_user1
Выбираем Сервис ovpn и профиль openvpn

Создадим 2 пользователя:

ovpn_user1 для клиента на компьютере

ovpn_mikrotik1 для клиента на Mikrotik

Рекомендуется для каждого VPN клиента создавать отдельное уникальное имя пользователя.
В дальнейшем это упростит работу и позволит отслеживать всех подключенных VPN клиентов.

18) Настроим фаерволIP — Firewall — add(+)
Во вкладке General указываем:
Chain — input
Protocol — tcp
Порт 1194
Интерфейс — ether1 (Если интернет идёт через него)
Вкладка Action:Action — accept
Затем ОК

Сервер настроен, теперь приступим к настройке VPN клиентов.

Что такое VPN и где применяется

VPN сервер популярное средство для удаленного подключения одного ПК(или 100 ПК) к центральному узлу, а также для объединения офисов. Реализация такого сервиса есть масса, но на MikroTik работает быстро и без инцидентов по недоступности.

Для удаленного доступа сотрудников

Доступ к рабочему пространству с любого места, где есть интернет. Почта, сетевые папки, принтер, 1с – все это становится доступным.

Доступ к облачному серверу

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

Мы поможем настроить: маршрутизатор(роутер), точку доступа или коммутатор.

Заказать

Чем отличается PPTP от L2TP и других VPN серверов

PPTP – самый распространенный протокол VPN. Представляет собой связку протокола TCP, который используется для передачи данных, и GRE – для инкапсуляции пакетов. Чаще всего применяется для удаленного доступа пользователей к корпоративной сети. В принципе, может использоваться для многих задач VPN, однако следует учитывать его изъяны в безопасности – отсутствие шифрования. Данные передаваемые в туннеле PPTP могут быть подвержены зеркалированию в другой интернет канал, что подвергает опасности коммерческой информации.

В качестве рабочих решений по организации удаленного доступа могут выступать любые VPN сервера с поддержкой шифрования: L2TP, IpSec.

Как настроить PPTP VPN сервер в MikroTik

Для VPN клиентов создаётся отдельная подсеть, это добавит больше возможностей в ограничении доступа между VPN клиентами и локальной сетью, а также в самой маршрутизации. Другими словами эта реализация обеспечивает сетевую безопасность на уровне Firewall-а.

Настройка находится IP->Pool

/ip pool add name=LAN-Ip-Pool ranges=192.168.10.100-192.168.10.150

Настройка находится PPP->Profile

Предварительно нужно задать сетевые параметры для VPN клиентов

/ppp profile
add dns-server=192.168.10.1 local-address=\
192.168.10.1 name=VPN-Server remote-address=VPN-Ip-Pool

Настройка находится PPP->Interface->PPTP Server

/interface pptp-server server
set authentication=mschap2 default-profile=VPN-Server enabled=yes

Этой учётной записью будет пользоваться VPN клиент для удаленного подключения к VPN серверу.

Настройка находится PPP->Interface->Secrets

/ppp secret
add name=user1 password=user1 service=pptp profile=VPN-Server

Настройка находится IP->Firewall

/ip firewall filter
add action=accept chain=input comment="Port Access" dst-port=1723 \
in-interface-list=WAN-Interface-List protocol=tcp

Настройка интернета для VPN клиентов PPTP в MikroTik

Этот вопрос будет вынесен за рамки данной статьи, т.к. относится с дополнительным сервисам для VPN клиентов. Таких сервисов может быть множество и все они имеют индивидуальных характер(для тех кто ищет: нужно настроить и разрешить DNS запросы и Masquerade).

В этой настройке будут участвовать два роутера MikroTik, один в качества сервера, другой в качестве клиента

На этапе создание такого подключения стоит обратить внимание на модель MikroTik, т.к. от неё зависит количество VPN подключений, а также возможность обрабатывать такие потоки данных

Для консультации по этому вопросу обращайтесь в Настройка-Микротик.укр через контактную форму.

Для объединения двух офисов и работы маршрутизации данную настройку лучше разбить на два блока:

  1. Настройка клиент-серверной части;
  2. Добавление статических маршрутов для прохождения трафика.

Серверная часть была описана ваше, но требует корректировки в виде статических адресов для VPN клиента

Настройка находится PPP->Interface->Secrets

/ppp secret
add local-address=192.168.10.1 name=user2 password=user2 profile=VPN-Server \
remote-address=192.168.10.2

а клиентская часть состоит из настройки PPTP клиента.

Настройка находится PPP->Interface->+PPTP Client

/interface pptp-client
add connect-to=90.200.100.99 disabled=no name=\
pptp-out1 password=user2 user=user2

Это правило укажет роутеру MikroTik куда направлять трафик.

Настройка находится IP->Routes

/ip route
add distance=1 dst-address=192.168.88.0/24 gateway=192.168.10.2

где

  • 192.168.88.0/24 – сеть за 2-ым MikroTik-ом, который выступает в роли ppptp клиента;
  • 192.168.10.2 – IP адрес 2-ого MikroTik-а.

Настройка находится IP->Routes

/ip route
add distance=1 dst-address=192.168.0.0/24 gateway=192.168.10.1

где

  • 192.168.5.0/24 – сеть 1-ого MikroTik-ом, который выступает в роли ppptp сервера;
  • 192.168.10.1 – IP адрес 1-ого MikroTik-а.

Создание VPN подключения PPTP Windows

ОС семейства Windows имеют штатный VPN клиент, который отлично подходит под эту роль. Для его настройки нужно перейти

Панель управления\Сеть и Интернет\Центр управления сетями и общим доступом

OVPN Client

Sub-menu:

Properties

Property Description
add-default-route (yes | no; Default: no) Whether to add OVPN remote address as a default route.
auth (md5 | sha1; Default: sha1) Allowed authentication methods.
certificate (string | none; Default: none) Name of the client certificate imported into certificate list.
cipher (aes128 | aes192 | aes256 | blowfish128; Default: blowfish128) Allowed ciphers.
comment (string; Default: ) Descriptive name of an item
connect-to (IP; Default: ) Remote address of the OVPN server.
disabled (yes | no; Default: yes) Whether interface is disabled or not. By default it is disabled.
mac-address (MAC; Default: ) Mac address of OVPN interface. Will be auto generated if not specified.
max-mtu (integer; Default: 1500) Maximum Transmission Unit. Max packet size that OVPN interface will be able to send without packet fragmentation.
mode (ip | ethernet; Default: ip) Layer3 or layer2 tunnel mode (alternatively tun, tap)
name (string; Default: ) Descriptive name of the interface.
password (string; Default: «») Password used for authentication.
port (integer; Default: 1194) Port to connect to.
profile (name; Default: default) Used .
user (string; Default: ) User name used for authentication.

Quick example

This example demonstrates how to set up OVPN client with username «test», password «123» and server 10.1.101.1

 /interface ovpn-client> add connect-to=10.1.101.1 user=test password=123 disabled=no 
 /interface ovpn-client> print 
Flags: X - disabled, R - running 
 0    name="ovpn-out1" mac-address=FE:7B:9C:F9:59:D0 max-mtu=1500 connect-to=10.1.101.1 
      port=1194 mode=ip user="test" password="123" profile=default certificate=none auth=sha1 
      cipher=blowfish128 add-default-route=no 

Настройка SSTP клиента на Микротик

Для дальнейшей конфигурации нам нужен сертификат центра сертификации добавить в доверенные компьютера. Иначе начнется песня со списком отзывов и в этом роде. Конечно, таких проблем не будет, используя коммерческий. Но его нужно сначала выгрузить. Открываем System – Certificates, выбираем CA и жмем Export.

В Files должен появится экспорт. Передаем его любым удобным способом на клиентскую машину.

Далее вы можете вручную его добавить в доверенные ПК, но я предпочитаю это делать скриптом. Сохраняем в формате .bat

Создаем на рабочем столе папу CA, копируем туда CA.crt и запускаем из-под администратора батник.

Проверяем что все хорошо.

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

Подключение к рабочему месту.

Использовать мое подключение к Интернету.

Указываем адрес и имя будущего интерфейса.

Переходим в Изменение параметров адаптера» и открываем свойства VPN интерфейса. На вкладке «Тип VPN» переключить с автоматически на SSTP, Проверку подлинности переключить на Microsoft CHAP версии 2.

Сохраняем и пытаемся подключиться.

На момент написания статьи у меня вышла такая ошибка.

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

На этом пожалуй все, в этой статье мы показали как можно легко создать SSTP сервер на роутере Микротик и подключить к нему клиента Windows 10

Спасибо за внимание и до новых встреч

Несколько конфигурационных файлов

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

Для Windows:

В каталоге config создаем для каждого сервера свою папку и помещаем в нее рабочие файлы (файл конфигурации, сертификаты и так далее). В каждой папке называем конфигурационные файлы ovpn своими именами (даже если файлы будут находиться в разных папках, но с одинаковыми именами, клиент OpenVPN будет воспринимать их как один конфиг).

Пример каталога config:

Пример файлов в одном из каталогов:

Теперь при подключении клиентом к можно выбрать конкретный VPN-сервер:

Для Linux:

Также как для Windows, создаем для каждого сервера свой каталог, куда скопируем рабочие файлы. Для запуска, переходим в нужный каталог, например:

cd /etc/openvpn/server1

И запускаем OpenVPN:

openvpn —config /etc/openvpn/server1/client.conf

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

Если мы не используем клиентские сертификаты (в настройках сервера не отмечали галочкой пункт require-client-certificate), то настроить клиент OpenVPN будет быстрее и проще. Нам не нужно будет копировать сертификаты для клиента, только создать в меню PPP — Interfaces новую запись OVPN Client и и на вкладке Dial Out прописать:

  • адрес OpenVPN сервера (поле Connect To),
  • логин и пароль пользователя (поля User и Password),
  • порт соединения,
  • тип аутентификации и шифрования (поля Auth и Cipher).

Настройка второго роутера Микротик как клиента OpenVPN .

Так же, как и при настройке сервера, копируем из папки C:Program FilesOpenVPNeasy-rsakeys и вставляем в раздел Files файлы сертификатов и ключей OpenVPN. Только теперь это будут:

После этого поочередно импортируем их, используя меню System – Certificates — выбор сертификата — кнопка Import.

После успешного импорта в строке сертификата должны появиться буквы KT

Далее настраиваем соединение, практически так же, как и в случае без сертификатов. С оздаем в меню PPP — Interfaces новую запись OVPN Client и и на вкладке Dial Out прописываем:

  • адрес OpenVPN сервера (поле Connect To),
  • логин и пароль пользователя (поля User и Password),
  • порт соединения,
  • наименование сертификата,
  • тип аутентификации и шифрования (поля Auth и Cipher).

Все, осталось проверить, поднялось ли соединение.

Настройка клиента OpenVPN в Windows.

Копируем ранее созданные нами файлы ca.crt, client.crt, client.key из папки C:Program FilesOpenVPNeasy-rsakeys в каталог C:Program FilesOpenVPNconfig.

Создаем здесь же обычный текстовый файл, который сохраняем как auth.cfg (обратите внимание, меняем и расширение тоже). Открываем файл auth.cfg для редактирования в блокноте и вписываем в него 2 строки: первую -логин пользователя, вторую — пароль, которые мы задали на сервере

Сохраняем файл

Открываем файл auth.cfg для редактирования в блокноте и вписываем в него 2 строки: первую -логин пользователя, вторую — пароль, которые мы задали на сервере. Сохраняем файл.

Создаем еще один текстовый файл, который сохраняем как client.ovpn (включая смену расширения).

Файл client.ovpn редактируем следующим образом:

Настройка OpenVPN клиента на роутере Mikrotik

1) Необходимо добавить сертификаты (клиентские сертификат и ключ (client.crt, client.key и по желанию корневой (ca.crt)) на роутер:

Процесс создания сертификатов был рассмотрен в статье о настройке OpenVPN сервера на Mikrotik

Внимание. Не передавайте никому закрытый ключ сертификата – “ca.key”, имея его можно создавать сертификаты подписанные данным ключом

2) Заходим на Mikrotik посредством утилиты winbox, переходим в раздел Files и копируем туда наши сертификаты: client.crt, client.key и ca.crt(опционально)

3) После этого произведём импорт сертификатов, идём в раздел System – Certificates, выбираем поочередно сертификаты из списка (client.crt->client.key(-> ca.crt)) и жмём кнопку Import

4) Получится следующая картина:

5) Само соединение OpenVPN настраивается в меню PPP->Нажимаем кнопку “+” -> в выпадающем списке выбираем OVPN Client

6) На вкладке Dial Out указываем адрес сервера, логин/пароль, порт, клиентский сертификат и тип шифрования

7) После этого открываем терминал и проверяем, поднялось ли соединение:

Проблемы при настройке и работе IpSec в MikroTik

Ниже будут рассмотрены самые частые проблемы, которые не относятся к прямой настройке VPN туннеля типа IpSec, но косвенно могут повлиять на его работу: соединение может

  • Не устанавливаться;
  • Устанавливаться но не работать;
  • Роутер MikroTik не имеет статического маршрута для out пакетов. Другими словами, со стороны MikroTik нет PING-а на удалённую подсеть.

Если соединение не принимает статус ESTABLISHED, кроме корректности настроек следует обратить внимание на Firewall

/ip firewall filter
add action=accept chain=input comment="Port Access" dst-port=500,1701,4500 \
in-interface=WAN-ether1 protocol=udp

Следующей проблемой может быть нелегитимные ключи IpSec SA, срок действия которых закончился, но новый ключ не был сгенерирован и согласован

Тут стоит обратить внимание на время жизни туннеля, на обоих роутерах, IpSec Profile и IpSec Proposals должны быть идентичными. Для исправления это ситуации нужно:

после регенерации ключей он должен быть в статусе ESTABLISHED.

И последнее дополнение в сторону диагностики работы IpSec туннеля через роутер MikroTik.

/ip route
add distance=1 dst-address=192.168.0.0 gateway=Bridge-LAN

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

Имея настроенный OpenVPN сервер, можно настроить доступ на Mikrotik даже там, где нет белого IP адреса.

22) Подключимся к Mikrotik с помощью программы Winbox.
Загрузим 2 файла:  client.crt, client.key

Для этого в меню нажмём Files и перетащим их из папки C:\Program files\OpenVPN\easy-rsa\keys

23) Далее необходимо их импортировать.
Откроем System – Certificates — Import и поочерёдно выберем сертификаты в этом порядке:client.crt client.key

24) Настроим параметры сервера:PPP — add(+) — OVPN client


Во вкладке General указываем имяName — openVPN1 (любое, на ваше усмотрение)
Вкладка Dial Out:Connect To — Адрес сервера(Внешний IP адрес главного роутера Mikrotik) Port 1194
Указываем пользователя и пароль, который мы создали на VPN сервере
В нашем случае это пользователь ovpn_mikrotik1
Сертификат Client.crt

Нажимаем ОК

25) В терминале набираем /interface ovpn-client monitor openVPN1
Должно появиться сообщение со статусом connected

Теперь к этому mikrotik можно подключиться через VPN по адресу, который он получил от VPN сервера


Посмотреть адрес можно:
В Mikrotik-клиенте в IP-Adresses строка с нашим интерфейсом openVPN1

В Mikrotik-сервере PPP-Active Connections 

Чем отличается PPTP от L2TP и других VPN серверов

PPTP – самый распространенный протокол VPN. Представляет собой связку протокола TCP, который используется для передачи данных, и GRE – для инкапсуляции пакетов. Чаще всего применяется для удаленного доступа пользователей к корпоративной сети. В принципе, может использоваться для многих задач VPN, однако следует учитывать его изъяны в безопасности – отсутствие шифрования. Данные передаваемые в туннеле PPTP могут быть подвержены зеркалированию в другой интернет канал, что подвергает опасности коммерческой информации.

Поддержи автора статьи, сделай CLICK по рекламе ↓↓↓

В качестве рабочих решений по организации удаленного доступа могут выступать любые VPN сервера с поддержкой шифрования: L2TP, IpSec.

Настройка VPN IKEv2 туннеля для MikroTik сервера

Настройка части IpSec отличается от типичной конфигурации с открытым ключом только разделом Identities, который будет осуществлять обязательную проверку сертификата со стороны VPN клиента. Этот функционал не только обладает свойствами защиты соединения и трафика, но может служить в качестве инструмента по управлению разрешениями для доступа.

Настройка находится в IP→IPsec→Profile

Настройка находится в IP→IPsec→Peers

Поддержи автора статьи, сделай CLICK по рекламе ↓↓↓

Настройка находится в IP→IPsec→Identities

Настройка находится в IP→IPsec→Proposals

Настройка находится в IP→IPsec→Policies

Поддержи автора статьи, сделай CLICK по рекламе ↓↓↓

/ip ipsec profile
add dh-group=modp1024 enc-algorithm=3des hash-algorithm=md5 lifetime=8h name=\
Profile-Ipsec
/ip ipsec peer
add address=b9070aee7432.sn.mynetname.net name=b9070aee7432.sn.mynetname.net \
profile=Profile-Ipsec
/ip ipsec proposal
add auth-algorithms=md5 enc-algorithms=3des lifetime=8h name=Proposal-Ipsec
/ip ipsec identity
add auth-method=digital-signature certificate=92490a0ea575.sn.mynetname.net \
match-by=certificate peer=b9070aee7432.sn.mynetname.net \
remote-certificate=b9070aee7432.sn.mynetname.net
/ip ipsec policy
add dst-address=192.168.1.0/24 peer=b9070aee7432.sn.mynetname.net proposal=\
Proposal-Ipsec sa-dst-address=82.144.213.152 sa-src-address=0.0.0.0 \
src-address=192.168.0.0/24 tunnel=yes

Настройка OpenVPN-клиента

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

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

На сервере генерируем сертификаты для клиента. Для этого снова переходим в каталог easy-rsa:

cd /usr/share/easy-rsa/3

Запускаем еще раз vars:

. ./vars

Создаем клиентский сертификат:

./easyrsa gen-req client1 nopass

./easyrsa sign-req client client1

Мы должны увидеть запрос на подтверждение намерения выпустить сертификат — вводим yes:

  Confirm request details: yes

* в данном примере будет создан сертификат для client1.

На сервере скопируем ключи во временную директорию, выполнив последовательно 3 команды:

mkdir /tmp/keys

cp pki/issued/client1.crt pki/private/client1.key pki/dh.pem pki/ca.crt pki/ta.key /tmp/keys

chmod -R a+r /tmp/keys

* сертификаты скопированы в каталог /tmp для удобства переноса их на клиентский компьютер.

Сертификаты готовы для скачивания.

На клиенте

В качестве примере, выполним подключение к нашему серверу с компьютера Windows. Более подробно процесс настройки клиента описан в инструкции Настройка OpenVPN клиента.

Пошагово, выполняем следующие действия:

1. Заходим на официальную страницу загрузки openvpn и скачиваем клиента для Windows:

Запускаем скачанный файл и устанавливаем программу, нажимая «Далее».

2. Переходим в папку C:\Program Files\OpenVPN\config.

Копируем в нее файлы ca.crt, client1.crt, client1.key, dh.pem, ta.key из каталога /tmp/keys на сервере, например, при помощи программы WinSCP.

После переноса файлов, не забываем удалить ключи из временного каталога на сервере:

rm -R /tmp/keys

3. Возвращаемся к компьютеру с Windows, открываем блокнот от имени администратора и вставляем следующие строки:

client
resolv-retry infinite
nobind
remote 192.168.0.15 443
proto udp
dev tun
comp-lzo no
ca ca.crt
cert client1.crt
key client1.key
dh dh.pem
tls-client
tls-auth ta.key 1
float
keepalive 10 120
persist-key
persist-tun
verb 0

* где 192.168.0.15 443 — IP-адрес OpenVPN-сервера и порт, на котором он принимает запросы.

Сохраняем файл с именем config.ovpn в папке C:\Program Files\OpenVPN\config.

4. Запускаем с рабочего стола программу «OpenVPN GUI» от имени администратора.

Нажимаем правой кнопкой по появившемуся в трее значку и выбираем «Подключиться»:

Произойдет подключение и значок поменяет цвет с серого/желтого на зеленый.

5. Для автозапуска клиента, открываем службы Windows, находим и настраиваем службу OpenVPNService для автозапуска:

Замена шлюза по-умолчанию для маскировки всего трафика

Настройка на сервере для клиента, которая указывает заменять шлюз по-умолчанию, на микротике не работает. Если указать в настройках openvpn сервера галочку на параметре Add Default Route, то тоже ничего работать не будет. Просто не будет пускать в интернет. Хотя для меня это было не понятно. По идее, это как раз то, что нужно. Не могу сейччас привести скриншот маршрутов, коотрые будут прописаны, если установить эту галку. Я пишу статью, подключившись к роутеру удаленно, скрин сделать не могу, потеряю доступ.

Я могу привести только гарантированно работающий вариант. Сейчас расскажу смысл проделанного и приведу список маршрутов, которые добавил.

  1. Первым делом создаем маршрут до openvpn сервера с Distance 1.
  2. Маршуруту по-умолчанию, который обеспечивает доступ в интернет через usb модем, назначаем Distance 2.
  3. Создаем новый маршрут по-умолчанию с Distance 1, где в качестве шлюза указано openvpn подключение.

После этого вы будете иметь доступ в интернет через usb модем напрямую, если openvpn client будет отключен. После подключения vpn клиента к серверу, стандартный маршрут становится неактивным, а по-умолчанию становится новый маршрут со шлюзом в качестве vpn соединения. Весь ваш трафик будет замаскирован vpn соединением и пойдет через openvpn сервер.

Описание маршрутов
0.0.0.0/0 192.168.8.1 Стандартный маршрут по-умолчанию, когда не подключен openvpn
0.0.0.0/0 ovpn-out1 Маршрут по-умолчанию через vpn сервер
10.8.0.0/24 10.8.0.21 Автоматически создаваемый маршрут для подссети vpn тоннелей
10.8.0.21 ovpn-out1 То же самое, автоматически создаваемый маршрут
94.142.141.246 192.168.8.1 Маршрут к openvpn server через usb модем
192.168.7.0/24 bridge1 Маршурт для локальной сети, создается автоматически
192.168.8.0/24 lte1 Маршрут до usb модема, создается автоматически
  • 192.168.8.1 — адрес usb модема, 192.168.8.100 — адрес микротика на lte интерфейсе, к которому подключен модем
  • 192.168.7.1 — адрес микротика в локальной сети
  • 10.8.0.21 — адрес vpn тоннеля для данного клиента, адрес самого клиента при этом 10.8.0.22
  • 94.142.141.246 — openvpn server

Когда будете настраивать, не забудте включить NAT на openvpn интерфейсе, так же как у вас он настроен на основном.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *