Mikrotik pptp client windows

На этой странице рассмотрено создание VPN (Virtual Private Network «виртуальная частная сеть») для удаленного доступа пользователя на ОС Windows 10 к сети организации с использованием протокола PPTP через маршрутизатор MikroTik.

Освоить MikroTik Вы можете с помощью онлайн-куса
«Настройка оборудования MikroTik». Курс содержит все темы, которые изучаются на официальном курсе MTCNA. Автор курса – официальный тренер MikroTik. Подходит и тем, кто уже давно работает с микротиками, и тем, кто еще их не держал в руках. В курс входит 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.

PPTP (Point-to-Point Tunneling Protocol) туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети wiki. PPTP обладает уязвимостью в протоколе аутентификации MS-CHAP v.2. Уязвимость была закрыта за счет протокола расширенной проверки подлинности EAP (PEAP). Разработчик протокола корпорация Microsoft рекомендует вместо PPTP использовать L2TP или SSTP. Так как PPTP встроен в каждый Windows и легко настраивается, его еще используют. Описание PPTP представлено в исторических целях и для понимания упрощенной настройки VPN. Взломостойкость зависит от сложности и длинны пароля.

Схема подключения удаленного пользователя к сети организации на рисунке ниже.

VPN создан с помощью роутера MikroTik RB750Gr3 с прошивкой 6.47.

Первоначальная настройка роутера выполнена по этой инструкции.

Быстрая настройка VPN PPTP представлена тут .

Порядок действий.

1.Подключение в роутер.

2.Активация сервера PPTP.

3.Создание пула IP адресов.

4.Создание профиля доступа.

5.Создание пользователя VPN.

6.Правила Firewall.

7.Настройка VPN соединения пользователя (клиента) в Windows 10.

8.Подключение к общей папке через VPN.

9.Подключение RDP через VPN.

1.Подключение.

Входим в меню роутера из локальной сети через WinBox (ССЫЛКА).

1.Запускаем WinBox, нажимаем на вкладку Neighbors и видим доступные в сети роутеры.

2.Кликаем на MAC или IP-адрес нужного роутера.

3.Адрес отобразится в строке Connect To:

4.Вводим логин.

5.Вводим пароль.

6.Нажимаем кнопку «Connect».

2.Активация сервера PPTP.

1.В боковом меню выбираем PPP.

2.В открывшемся окне PPP переходим на вкладку Interface.

3.В верхней панели нажимаем кнопку PPTP Server.

4.В открывшемся окне ставим галочку напротив Enable.

5.Нажимаем кнопку «ОК».

Через командную строку терминала:

/interface pptpserver server set enabled=yes

3.Создание пула IP-адресов для VPN пользователей.

1.В боковом меню выбираем IP.

2.В раскрывшемся меню выбираем Pool.

3.В открывшемся окне IP Pool переходим на вкладку Pools.

4.Нажимаем синий крест (плюс).

В открывшемся окне NEW IP Pool вводим параметры:

5.Name: VPN-PPTP (любое понятное имя латиницей)

6.Addresses: 192.168.100.10-192.168.100.254 (желаемый диапазон IP для VPN)

7.Нажимаем кнопку «ОК».

Через командную строку терминала:

/ip pool add name= VPNPPTP ranges=192.168.100.10192.168.100.254

4.Создание профиля VPN

Выполняем действия в меню PPP

1.Переходим на вкладку Profiles.

2.Нажимаем синий крест (плюс).

В окне создания нового профиля вводим:

3.Name: PC360VPN (любое понятное имя латиницей).

4.Local Adress: 192.168.100.1 (адрес роутера в VPN)

5.Remote Address: VPN-PPTP(выбираем созданный ранее пул или указываем IP-адрес который присвоится для удаленного клиента)

6.Нажимаем кнопку «ОК».

Через командную строку терминала:

/ppp profile add name=PC360VPN localaddress=192.168.100.1 remoteaddress=VPNPPTP

Если к пользователю VPN понадобится постоянное и частое удаленное подключение, то необходимо будет знать его IP-адрес. При раздаче пула IP адрес может оказаться любой из заданного диапазона. Поэтому альтернативный вариант — не использовать пул IP-адресов, а привязать пользователя к конкретному IP. Для этого при создании профиля нужно указывать IP-адрес в поле Remote Address. Затем привязывать профиль к пользователю. Это можно сделать так же при создании пользователя  (см.далее).

5.Создание пользователя.

1.В меню PPP переходим на вкладку Secrets.

2.Нажимаем синий крест (плюс).

В открывшемся окне вводим:

3.Name: WunderbareVPN1 (имя пользователя )

4.Password: 12345Password (сложный пароль из латинских букв и цифр разного регистра)

5.Service: pptp

6.Profile: PC360VPN (созданный ранее профиль, выбираем из выпадающего списка)

7.Нажимаем кнопку «ОК».

Новый пользователь появится в списке. Пользователя vpn (дефолтного) лучше отключить или удалить.

Через командную строку терминала:

/ppp secret add name=WunderbareVPN1 password=12345Password profile=PC360VPN service=pptp

Удаление пользователя vpn.

В поле Remote Adress можно указать IP-адрес, который будет всегда присвоен к этому пользователю.

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

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

6.Правила firewall.

Правила необходимы при настроенном firewall,  в случае если в низу всего списка размещено правило, запрещающее все прочие подключения по входу в роутер.

PPTP требует одновременного установления двух сетевых сессий – GRE(установка сессии) и соединение на TCP-порту 1723 (для инициации и управления GRE-соединением).  wiki

6.1Правило для открытия порта 1723.

1.В боковом меню выбираем пункт IP.

2.В выпадающем меню выбираем Firewall.

3.В открывшемся окне переходим на вкладку Filter Rules.

4.Нажимаем синий крест (плюс).

В открывшемся окне вводим настройки:

5.Chain: input (вход)

6.Protocol: tcp (протокол)

7.Dst. Port: 1723 (порт назначения)

8.In Interface: ether1 (внешний интерфейс)

9.Переходим на вкладку Action.

На вкладке Action вводим:

10.Action: accept

11.Нажимаем кнопку ОК для сохранения правила.

Через командную строку терминала:

/ip firewall filter add chain=input dstport=1723 ininterface=ether1 protocol=tcp action=accept comment=«VPN RULE1 accept PORT 1723»

6.2Правило для разрешения GRE.

1.В боковом меню выбираем пункт IP.

2.В выпадающем меню выбираем Firewall.

3.В открывшемся окне переходим на вкладку Filter Rules.

4.Нажимаем синий крест (плюс).

В открывшемся окне вводим настройки:

5.Chain: input (вход)

6.Protocol: gre (протокол)

7.In Interface: ether1 (внешний интерфейс)

8.Переходим на вкладку Action.

На вкладке Action вводим:

9.Action: accept

10.Нажимаем кнопку ОК.

Через командную строку терминала:

/ip firewall filter add chain=input ininterface=ether1 protocol=gre action=accept comment=«VPN RULE2 accept GRE»

В списке правил появятся два новых. Расположить их нужно в самом верху списка.

6.3Правило NAT.

NAT masquerade для VPN трафика. Правило создается на вкладке NAT аналогично предыдущим правилам.

Через командную строку терминала:

add chain=srcnat outinterface=ether1 srcaddress=192.168.100.0/24 action=masquerade comment=«VPN RULE NAT masquerade vpn traffic»

7.Настройка VPN соединения клиента в Windows 10.

Удаленный компьютер подключен в Интернет. В этом ПК переходим в управление сетями.

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

Создаем новое подключение.

Среди вариантов подключения выбираем – «Подключение к рабочему месту».  Далее.

Выбираем – «Использовать мое подключение к Интернету (VPN)».

В следующем пункте указываем внешний статический IP-адрес роутера или внешний идентификатор MikroTik(1234567891443.sn.mynetname.net у каждого роутера свой).

В поле имя пишем любое понятное имя латинскими буквами. Отмечаем галочкой «Запомнить учетные данные».

Нажимаем кнопку «Создать».

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

В свойствах переходим на вкладку безопасность. Указываем следующие параметры.

1.Тип VPN: Туннельный протокол точка-точка (PPTP).

2.Шифрование данных: обязательное (отключится если нет шифрования)

3.Разрешить следующие протоколы – отмечаем точкой.

4.Протокол Microsoft CHAP версия 2 (MS-CHAPv2).

5.Кнопка «ОК» для сохранения настроек.

В нижней правой части экрана нажимаем на значок сети, выбираем из раскрывшегося списка нужное соединение и нажимаем кнопку «Подключится».

В окне авторизации вводим учетные данные пользователя VPN.

После правильного ввода учетных данных произойдет подключение.

В случае если нужно изменить учетные данные, сделать это можно в меню параметров Windows 10 «Сеть и Интернет».

Выбираем VPN >> созданное соединение >> Дополнительные параметры.

Изменяем и сохраняем параметры.

8.Подключение к общей папке через VPN.

Пользователю VPN1 нужно получить доступ к общей папке у пользователя VPN2.

Общая папка создана, доступ к ней открыт для всех.

На компьютерах обоих пользователей выполнены все предыдущие настройки, пользователи подключены к VPN.

В настройках PPP роутера переходим на вкладку Active Connections и находим нужного нам пользователя. Переписываем его IP-адрес.

Можно задать постоянный IP-адрес при настройке пользователя в графе Remote Address.

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

Для доступа к общей папке открываем Мой Компьютер и в адресной строке вводим IP-адрес компьютера, в котором находится общая папка.

Нажимаем кнопку «Enter».

В открывшейся форме для авторизации указываем учетные данные пользователя Windows или администратора.

Для гарантированного подключения нужно вводить имя компьютера (домена) и через слэш имя пользователя, например MYPC\admin.

После правильного ввода логина и пароля откроется все, что в общем доступе у пользователя VPN2.

9.Подключение RDP через VPN.

Первоначально удаленный доступ нужно активировать в настройках системы  пользователя VPN2.

Запускаем RDP, вводим IP-адрес пользователя VPN.

При авторизации вводить нужно данные учетной записи ПК (домен/имя пользователя или уч.запись администратора).

При появлении сообщения о сертификате, нажимаем ДА. Галочкой можно отметить пункт о том, чтоб этот вопрос больше не задавался.

Наконец, видим рабочий стол пользователя VPN.

Освоить MikroTik Вы можете с помощью онлайн-куса
«Настройка оборудования MikroTik». Курс содержит все темы, которые изучаются на официальном курсе MTCNA. Автор курса – официальный тренер MikroTik. Подходит и тем, кто уже давно работает с микротиками, и тем, кто еще их не держал в руках. В курс входит 162 видеоурока, 45 лабораторных работ, вопросы для самопроверки и конспект.


Протокол PPTP

Для начала немного теории. PPTP (Point To Point Tunnel Protocol) это протокол, который позволяет создать незашифрованный туннель через публичную сеть Интернет. Для шифрования данного туннеля вместе с PPTP обычно применяется протокол Microsoft Point-to-Point Encryption (MPPE). PPTP поддерживает различные методы аутентификации, которые включены в PPP, такие как: pap, chap, mschap2, mschap1. Для использования PPTP зарезервирован порт 1723 и протокол GRE для энкапсуляции фреймов.

Основные задачи, которые решает PPTP:

  • Безопасное соединение роутеров через Интернет по защищенному туннелю
  • Подключение удаленных пользователей для доступа к ресурсам локальной сети
  • Соединение распределенных локальных сетей через Интернет

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

Для того, чтобы настроить PPTP клиент на роутерах Mikrotik при помощи приложения WinBox, нужно открыть раздел PPPInterface+ и выбрать PPTP Client, как показано ниже:

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

Откроется окно добавления нового интерфейса. На вкладке General можно оставить всё по умолчанию.

PPTP настройка Микротик

Переходим на вкладку Dial Out и выполняем следующие настройки:

  • Connect To — Сюда вписываем адрес или ddns сервера PPTP/ VPN (Например — OpenVPN).
  • User — Логин для подключения к серверу PPTP/VPN
  • Password — Пароль для подключения к серверу PPTP/VPN

Параметры подключения PPTP Mikrotik

На самом базовом уровне этих данных вполне достаточно.

Осталось только добавить несколько правил, которые разрешат использование PPTP.

Для этого открываем раздел IP> → FirewallNAT и нажимаем +. Перед нами открывается страница добавления нового правила, заполняем её следующим образом:

PPTP NAT правила для Микротик

 Point To Point Tunnel Protocol в Mikrotik

Здесь Out Interface — интерфейс для PPTP клиента, который мы создавали ранее.

Summary

Standards: RFC 2637

PPTP is a secure tunnel for transporting IP traffic using PPP. PPTP encapsulates PPP in virtual lines that run over IP. PPTP incorporates PPP and MPPE (Microsoft Point to Point Encryption) to make encrypted links. The purpose of this protocol is to make well-managed secure connections between routers as well as between routers and PPTP clients (clients are available for and/or included in almost all OSs including Windows).

Multilink PPP (MP) is supported in order to provide MRRU (the ability to transmit full-sized 1500 and larger packets) and bridging over PPP links (using Bridge Control Protocol (BCP) that allows the sending of raw Ethernet frames over PPP links). This way it is possible to setup bridging without EoIP. The bridge should either have an administratively set MAC address or an Ethernet-like interface in it, as PPP links do not have MAC addresses.

PPTP includes PPP authentication and accounting for each PPTP connection. Full authentication and accounting of each connection may be done through a RADIUS client or locally.

MPPE 128bit RC4 encryption is supported.

PPTP traffic uses TCP port 1723 and IP protocol GRE (Generic Routing Encapsulation, IP protocol ID 47), as assigned by the Internet Assigned Numbers Authority (IANA). PPTP can be used with most firewalls and routers by enabling traffic destined for TCP port 1723 and protocol 47 traffic to be routed through the firewall or router.

PPTP connections may be limited or impossible to setup though a masqueraded/NAT IP connection. Please see the Microsoft and RFC links listed below for more information.

PPTP Client

Sub-menu: /interface pptp-client

Properties

Property Description
add-default-route (yes | no; Default: no) Whether to add PPTP remote address as a default route.
allow (mschap2 | mschap1 | chap | pap; Default: mschap2, mschap1, chap, pap) Allowed authentication methods.
connect-to (IP; Default: ) Remote address of PPTP server
default-route-distance (byte [0..255]; Default: 1) sets distance value applied to auto created default route, if add-default-route is also selected
dial-on-demand (yes | no; Default: no) connects to PPTP server only when outbound traffic is generated. If selected, then route with gateway address from 10.112.112.0/24 network will be added while connection is not established.
disabled (yes | no; Default: yes) Whether interface is disabled or not. By default it is disabled
keepalive-timeout (integer; Default: 60) Sets keepalive timeout in seconds.
max-mru (integer; Default: 1460) Maximum Receive Unit. Max packet size that PPTP interface will be able to receive without packet fragmentation.
max-mtu (integer; Default: 1460) Maximum Transmission Unit. Max packet size that PPTP interface will be able to send without packet fragmentation.
mrru (disabled | integer; Default: disabled) Maximum packet size that can be received on the link. If a packet is bigger than tunnel MTU, it will be split into multiple packets, allowing full size IP or Ethernet packets to be sent over the tunnel. Read more >>
name (string; Default: ) Descriptive name of the interface.
password (string; Default: «») Password used for authentication.
profile (name; Default: default-encryption) Used PPP profile.
user (string; Default: ) User name used for authentication.

Quick example

This example demonstrates how to set up PPTP client with username «pptp-hm», password «123» and server 10.1.101.100

/interface pptp-client add name=pptp-hm user=pptp-hm password=123 connect-to=10.1.101.100 disabled=no
/interface pptp-client print detail   
Flags: X - disabled, R - running 
 0    name="pptp-hm" max-mtu=1460 max-mru=1460 mrru=disabled 
      connect-to=10.1.101.100 user="pptp-hm" password="123" 
      profile=default-encryption add-default-route=no dial-on-demand=no 
      allow=pap,chap,mschap1,mschap2 

PPTP Server

Sub-menu: /interface pptp-server

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

An interface is created for each tunnel established to the given server. There are two types of interfaces in PPTP 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 persistent rules 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: /interface pptp-server server

Properties

Property Description
authentication (pap | chap | mschap1 | mschap2; Default: mschap1,mschap2) Authentication methods that server will accept.
default-profile (name; Default: default-encryption) Default PPP Profile to use
enabled (yes | no; Default: no) Defines whether PPTP server is enabled or not.
keepalive-timeout (time; Default: 30) If server during keepalive period does not receive any packet, it will send keepalive packets every second five times. If the server does not receives response from the client, then disconnect after 5 seconds.
Logs will show 5x «LCP missed echo reply» messages and then disconnect.
max-mru (integer; Default: 1460) Maximum Receive Unit. Max packet size that PPTP interface will be able to receive without packet fragmentation.
max-mtu (integer; Default: 1460) Maximum Transmission Unit. Max packet size that PPTP interface will be able to send without packet fragmentation.
mrru (disabled | integer; Default: disabled) Maximum packet size that can be received on the link. If a packet is bigger than tunnel MTU, it will be split into multiple packets, allowing full size IP or Ethernet packets to be sent over the tunnel. Read more >>

To enable PPTP server:

/interface pptp-server server set enabled=yes
/interface pptp-server server print
            enabled: yes
            max-mtu: 1460
            max-mru: 1460
               mrru: disabled
     authentication: mschap2,mschap1
  keepalive-timeout: 30
    default-profile: default

Monitoring

Monitor command can be used to monitor status of the tunnel on both client and server.

/interface pptp-client monitor 0
     status: "connected"
     uptime: 7h24m18s
  idle-time: 6h21m4s
   encoding: "MPPE128 stateless"
        mtu: 1460
        mru: 1460

Read-only properties

Property Description
status () Current PPTP status. Value other than «connected» indicates that there are some problems establishing tunnel.
uptime (time) Elapsed time since tunnel was established.
idle-time (time) Elapsed time since last activity on the tunnel.
encoding () Used encryption method
mtu (integer) Negotiated and used MTU
mru (integer) Negotiated and used MRU

Application Examples

Connecting Remote Client

The following example shows how to connect a computer to a remote office network over a PPTP encrypted tunnel giving that computer an IP address from the same network that the remote office has (without any need of bridging over EoIP tunnels).

Consider following setup:

Office router is connected to internet through ether1. Workstations are connected to ether2.
Laptop is connected to the internet and can reach Office router’s public IP (in our example it is 192.168.80.1).

First step is to create a user

/ppp secret add name=Laptop service=pptp password=123 local-address=10.1.101.1 \
   remote-address=10.1.101.100
/ppp secret print detail
Flags: X - disabled
  0   name="Laptop" service=pptp caller-id="" password="123" profile=default
      local-address=10.1.101.1 remote-address=10.1.101.100 routes==""

Notice that the PPTP local address is the same as the router’s address on the local interface and the remote address is from the same range as the local network (10.1.101.0/24).

Next step is to enable the PPTP server and the PPTP client on the laptop.

/interface pptp-server server set enabled=yes
/interface pptp-server server print
            enabled: yes
            max-mtu: 1460
            max-mru: 1460
               mrru: disabled
     authentication: mschap2
  keepalive-timeout: 30
    default-profile: default

PPTP client from the laptop should connect to routers public IP which in our example is 192.168.80.1.
(Consult the respective manual on how to set up a PPTP client with the operating system software you are using).

At this point (when PPTP client is successfully connected) if you try to ping any workstation form the laptop, the ping will time out because the Laptop is unable to get ARPs from workstations. The solution is to set up proxy-arp on the local interface.

/interface ethernet set Office arp=proxy-arp
/interface ethernet print
Flags: X - disabled, R - running
  #    NAME                 MTU   MAC-ADDRESS         ARP
  0  R ether1              1500  00:30:4F:0B:7B:C1 enabled
  1  R ether2              1500  00:30:4F:06:62:12 proxy-arp

After proxy-arp is enabled, the remote client can successfully reach all workstations in the local network behind the router.

Site-to-Site PPTP

The following is an example of connecting two Intranets using PPTP tunnel over the Internet.

Consider following setup:

Office and Home routers are connected to the internet through ether1, workstations and laptops are connected to ether2.
Both local networks are routed through a PPTP client, thus they are not in the same broadcast domain. If both networks should be in the same broadcast domain then you need to use BCP and bridge the PPTP tunnel with the local interface.

First step is to create a user

/ppp secret add name=Home service=pptp password=123 local-address=172.16.1.1 \
  remote-address=172.16.1.2 routes="10.1.202.0/24 172.16.1.2 1"
/ppp secret print detail
Flags: X - disabled
  0   name="Home" service=pptp caller-id="" password="123" profile=default
      local-address=172.16.1.1 remote-address=172.16.1.2 routes=="10.1.202.0/24 172.16.1.2 1"

Notice that we set up PPTP server’s PPP secret where a route is added automatically whenever the client connects. If this option is not set, then you will need to add static routing on the server to route traffic between the two sites through the PPTP tunnel. (See PPP User Database for more info on routes variable).

Next step is to enable the PPTP server on the office router and configure the PPTP client on the Home router.

/interface pptp-server server set enabled=yes
/interface pptp-server server> print
            enabled: yes
            max-mtu: 1460
            max-mru: 1460
               mrru: disabled
     authentication: mschap2
  keepalive-timeout: 30
    default-profile: default
/interface pptp-client add user=Home password=123 connect-to=192.168.80.1 disabled=no
/interface pptp-client print
Flags: X - disabled, R - running
 0    name="pptp-out1" max-mtu=1460 max-mru=1460 mrru=disabled connect-to=192.168.80.1 user="Home" 
       password="123" profile=default-encryption add-default-route=no dial-on-demand=no 
       allow=pap,chap,mschap1,mschap2

Now we need to add the route to reach the local network behind the Home router

/ip route add dst-address=10.1.101.0/24 gateway=pptp-out1

Now after the tunnel is established and routes are set, you should be able to ping remote network.

Read More

  • BCP (Bridge Control Protocol)
  • http://technet.microsoft.com/en-us/library/cc768084.aspx
  • http://www.ietf.org/rfc/rfc2637.txt?number=2637
  • http://www.ietf.org/rfc/rfc3078.txt?number=3078
  • http://www.ietf.org/rfc/rfc3079.txt?number=3079

[ Top | Back to Content ]

С ростом значения интернета в нашей повседневной жизни все более востребованными становятся различные сетевые технологии. Если раньше VPN был преимущественно уделом крупных организаций, то сегодня он используется чуть ли не в каждой сети, действительно, сотрудники стали мобильными и удаленный доступ к ресурсам сети уже не блажь, а насущная необходимость. Настройка роутера Mikrotik как VPN-клиента вопрос, на первый взгляд, простой, но есть некоторые не очевидные моменты, которые мы разберем в данной статье.

Онлайн-курс по MikroTik
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

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

В рамках данной статьи мы будем рассматривать варианты настройки Mikrotik именно в качестве клиента для поддерживаемых типов VPN-серверов, оставив за кадром туннельные подключения (GRE, IP-IP, EoIP и т.д.). Для работы с этим типом соединений используется специальный раздел PPP, на закладке Interfaces которого можно добавить сетевой интерфейс для нужного типа VPN-клиента. Поддерживаются PPTP, L2TP, SSTP и OpenVPN подключения. Также в списке присутствуют устаревший PPP и PPPoE, который используется для организации доступа в интернет, в данном контексте эти протоколы интереса не представляют.

mikrotik-vpn-client-002.png

Также аналогичные действия можно выполнить и в разделе Interfaces, никакой разницы откуда вы будете добавлять сетевой интерфейс нет. Но не будем спешить и перейдем на закладку Profiles, где находятся профили используемые при коммутируемых подключениях. По умолчанию созданы два профиля: default и default-encryption, в которых содержатся некоторые настройки для подключения. Почему некоторые? Потому что большинство опций подключения задаются сервером и клиент должен применять именно их, иначе подключение будет невозможным. Поэтому если вы заглянете в эти профили, то увидите, что большинство настроек там не активно.

mikrotik-vpn-client-003.png

Единственным различием двух профилей является опция Use Encryption, которая в default-encryption установлена в положение yes и требует обязательного шифрования подключения. Данная опция игнорируется протоколами SSTP и OpenVPN, которые всегда используют шифрованные подключения.

Означает ли это, что если мы выберем профиль default, то ваше соединение не будет шифроваться? Нет, если сервер использует шифрование и не допускает небезопасных подключений, то ваше соединение также будет зашифровано. Но вот если сервер разрешает небезопасные подключения, то клиент вполне может подключиться без шифрования, таким образом можно осуществить атаку с подменой сервера, когда вы получите незашифрованное подключение и не будете знать об этом. Поэтому если вам явно требуется шифрование канала всегда выбирайте профиль default-encryption.

Мы не советуем менять настройки в стандартных профилях, если вам нужно явно задать иные настройки подключения, то создайте собственный профиль. Также учтите, что опция Use Compression игнорируется для OpenVPN соединений, которые в реализации от Mikrotik не могут использовать сжатие трафика.

PPTP-клиент

Пожалуй, это самый простой в настройке тип соединений. Несмотря на то, что используемое в PPTP шифрование не является надежным, этот протокол продолжает широко использоваться благодаря низким накладным расходам и высокой скорости работы, например, для доступа в интернет.

Для настройки PPTP клиента добавьте интерфейс типа PPTP Client и перейдите на закладку Dial Out, где расположены сетевые настройки.

mikrotik-vpn-client-004.png

Настроек немного, и они просты. В поле Connect To укажите FQDN или IP-адрес VPN-сервера, в поля User и Password — имя пользователя и пароль. В Profile выбирается в зависимости от необходимости шифрования нужный профиль. В самом низу рядом с опцией Allow (разрешить) указаны допустимые к использованию протоколы аутентификации, на сегодня безопасным считается только MS-CHAP v2 и следует использовать по возможности только его. Однако помните, что используемый протокол аутентификации должен поддерживаться сервером, в противном случае установить связь вы не сможете.

Опция Keepalive Timeout указывает время переподключения соединения в случае обрыва связи. Бытует мнение, что лучше делать это значение поменьше, мол быстрее будет переподключаться туннель. Но это не так, во-первых, при неполадках на сервере вы будете активно забивать канал и нагружать сервер служебным трафиком, а во-вторых, при кратковременных перебоях связи короткое время будет вызывать переподключение с обрывом всех соединений в канале, а большее значение позволит сохранить туннель. Особенно это актуально для мобильного интернета или беспроводных каналов.

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

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

L2TP-клиент

Говоря про L2TP, обычно подразумевают L2TP/IPsec, потому как без шифрования данный протокол в корпоративной среде не используется. Но есть и исключения, некоторые провайдеры, например, Билайн, используют чистый L2TP без шифрования. В этом случае настройки подключения будут выглядеть так:

mikrotik-vpn-client-005.png

Обратите внимание на используемый профиль — default, так как соединение не зашифрованное, с профилем default-encryption вы не сможете подключиться к серверу провайдера. Add Default Route ставим только если это основное соединение с интернет. Также имеет смысл использовать опцию Allow Fast Path, для разгрузки CPU, особенно на младших моделях, но учтите, что с данной опцией соединение может работать неустойчиво, в таком случае ее придется отключить.

Для работы с L2TP/IPsec настройки будут немного иные, во-первых, используем профиль default-encryption и включаем использование IPsec установкой флага Use IPsec, при этом становится активным поле IPsec Secret, куда вводим предварительный ключ.

mikrotik-vpn-client-006.png

Опция Allow Fast Path при использовании IPsec игнорируется и в ее установке нет никакого смысла, так же не забывайте про опцию Add Default Route, в большинстве корпоративных сценариев устанавливать ее не следует.

Вроде бы тоже ничего сложного в настройках L2TP/IPsec нет, но если вы попытаетесь подключиться к Windows Server, то у вас ничего не получится. В чем же дело? А дело в настройках IPsес, перейдем в IP — IPsec — Proposal и откроем настройку по умолчанию. Proposal или предложение IPsec содержит список алгоритмов защиты канала, которые устройство предлагает для установления соединения. Понятно, что для успешного установления канала поддерживаемые методы защиты должны совпадать.

mikrotik-vpn-client-007.png

В предложении IPsec по умолчанию обращаем внимание на опцию PFS Group, она отвечает за применение технологии совершенной прямой секретности (Perfect forward secrecy, PFS), которая предусматривает создание уникальных сессионных ключей по алгоритму Диффи-Хеллмана, что делает невозможным расшифровку перехваченного IPsec трафика даже при наличии долговременных ключей (в данном случае предварительного ключа).

Windows Server по умолчанию не поддерживает совершенную прямую секретность, поэтому PFS Group нужно выставить в состояние none, после чего соединение успешно установится.

Обратите внимание, что в данном случае мы изменили настройку по умолчанию, но в данном случае это оправдано. Настройки IPsec достаточно сложны и вряд-ли человек не имеющий опыта работы с данной технологией сможет все правильно настроить с первого раза. Но это изменение следует учитывать при создании других соединений, использующих IPsec и приводить настройки с обоих сторон к общему виду.

Хотя более правильным является создание своего предложения (Proposal) и политики (Police) для каждого соединения, но эта тема далеко выходит за рамки статьи.

SSTP-клиент

Мы не будем останавливаться на уже описанных нами опциях, которые общие для всех видов коммутируемых подключений, а сосредоточимся на новых, свойственных именно этому типу VPN. SSTP относится к отдельной подгруппе SSL VPN, которые используют трафик практически не отличимый от HTTPS, что серьезно затрудняет выявление и блокирование таких туннелей.

На что следует обратить внимание при настройке? Давайте сначала посмотрим на окно настроек:

mikrotik-vpn-client-008.png

Как видим, появилась опция Port, где мы можем указать порт подключения, по умолчанию это 443, но можно использовать и любой иной, если 443 порт занят, например, веб-сервером. Также SSTP может прекрасно работать через прокси, в этом случае вам потребуется указать адрес прокси-сервера и используемый им порт в опциях Proxy и Proxy Port.

Также вспоминаем, что SSTP всегда использует шифрование канала, поэтому оно будет работать вне зависимости от выбранного профиля, в данном случае default и default-encryption будут работать одинаково.

Теперь перейдем к специфичным для протокола настройкам, которые мы обвели зеленой рамкой. Поле Certificate используется для указания клиентского сертификата в том случае, если сервер использует аутентификацию по сертификатам, в этом случае его потребуется загрузить на устройство и импортировать в разделе System — Certificates. Во всех остальных случаях в поле должно стоять none.

TLS Version указывает на допустимые к использованию версии TLS, однако это определяется сервером, но следует стараться использовать только протокол TLS 1.2, что позволяет исключить атаки с понижением протокола.

Опция Verify Server Certificate не является обязательной, но позволяет проверить подлинность сервера, исключая атаки типа человек посередине, для этого потребуется импортировать на Mikrotik сертификат центра сертификации (СА) выдавшего сертификат серверу.

Опция Verify Server Address From Certificate позволяет убедиться, что IP-адрес подключения соответствует адресу для имени, указанного в сертификате. Также не является обязательной, но позволяет дополнительно убедиться, что подключаетесь вы именно к тому серверу.

Установка флага в поле PFS включает совершенную прямую секретность, но эта опция должна поддерживаться со стороны сервера.

OpenVPN-клиент

Реализация OpenVPN в Mikrotik вызывает много нареканий, так как сводит на нет все сильные стороны данной технологии и делает ощутимыми слабые. OVPN-клиент не поддерживает сжатие данных и работу по протоколу UDP, если первое не столь значимо на современных каналах, то OpenVPN поверх TCP имеет очень большие накладные расходы и вызывает как повышенную нагрузку на оборудование, так и плохую утилизацию канала. Поэтому от использования OpenVPN на Mikrotik по возможности следует отказаться.

Обычно комплект для подключения OpenVPN клиента составляют сертификат СA, сертификат и закрытый ключ клиента, конфигурационный файл. Нам понадобятся только сертификат и ключ клиента, а если мы хотим проверять подлинность сервера, то еще и сертификат CA, но он не является обязательным для настройки подключения.

Прежде всего загрузим сертификаты и ключи на Mikrotik, затем перейдем в System — Certificates и импортируем сертификат клиента. Он появится в списке сертификатов и напротив него будет буква T, что обозначает trusted, т.е. устройство доверяет этому сертификату. Затем импортируем ключ, здесь важно соблюдать именно эту последовательность, сначала сертификат, потом ключ.

mikrotik-vpn-client-009.png

После успешного импорта ключа флаги сменятся на KT, где буква K обозначает наличие закрытого ключа для сертификата. Затем аналогичным образом импортируем сертификат CA сервера, импорт ключа для данного сертификата не нужен. Закрытый ключ CA является самой большой тайной и должен хранится с соблюдением всех мер предосторожности и не при каких обстоятельствах не должен покидать узел СA (центра сертификации).

mikrotik-vpn-client-010.png

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

mikrotik-vpn-client-011.png

Но сначала коснемся опций User и Profile. Первая используется только в случае аутентификации на сервере по имени и паролю, большинство OpenVPN серверов такой тип аутентификации не используют и в этом поле вы можете написать все что угодно, просто оно должно быть заполнено. Профиль также не имеет значения, так как OpenVPN всегда шифрует канал, а опцию сжатия игнорирует.

Mode задает режим работы канала, в терминах OpenVPN ip — это tun (L3), а ethernet — это tap (L2), следует помнить, что режим работы определяется сервером. В поле Certificate укажите импортированный сертификат клиента. Опции Auth и Cipher указывают на используемые сервером криптографические алгоритмы для аутентификации и шифрования, если вы укажете отличные от указанных в конфигурации сервера — то соединение установить не удастся. Если алгоритм аутентификации явно не указан в конфигурации сервера, то по умолчанию используется SHA1.

При настройке OpenVPN клиента на Mikrotik следует помнить, что сервер должен поддерживать соединения по протоколу TCP, без сжатия и TLS-аутентификации, в противном случае подключиться к серверу не удастся.

Опция Verify Server Certificate позволяет проверить подлинность сертификата сервера, что защищает от атак типа человек посередине, но требует импорта сертификата CA сервера.

Маршрутизация

Если VPN соединение используется для доступа к корпоративной сети или предназначено для связи сетей, то вам потребуется указать маршруты для правильной пересылки пакетов. Так если мы хотим получить доступ к сети за VPN-севером, то нам потребуется создать маршрут к этой сети, указав в качестве шлюза интерфейс нашего VPN-клиента, например так:

mikrotik-vpn-client-012.png

В данном примере мы отправляем все пакеты к сети 192.168.200.0/24 через L2TP-подключение l2tp-out1. Если вы понимаете основы маршрутизации, то указание правильных маршрутов для вас не составит труда.

Отдельного внимания заслуживает опция Pref. Source, которая не является обязательной, но ее следует указывать, если роутер обслуживает несколько сетей, в ней указывается адрес, с которого роутер будет посылать пакеты по указанному маршруту. Без ее указания доступ роутера к ресурсам удаленных сетей может оказаться невозможным (как и удаленных сетей к нему), на работу клиентов в сетях это не влияет. В качестве значения следует указать адрес, принадлежащий той сети, к которой имеется маршрут с противоположной стороны (т.е. сети за сервером).

Онлайн-курс по MikroTik
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.

В сегодняшнем мануале я покажу как настроить Mikrotik PPTP клиент. Пожалуй, самая простая и быстрая настройка из всех существующих VPN протоколов на Mikrotik. Но это не та цель, которую мы преследуем. VPN это дело серьезное. Нужно понимать, что нам не нужны «желтолицые» товарищи в нашей сеточки. Не стоит упускать из внимания, что протокол признан не безопасным, поэтому будем тюнинговать нашу инфраструктуру. После стандартной настройки, я усложню задание.
Схема сети представлена ниже

Мы находимся справа внизу в офисе SPB (Office-SPB).

Вводные данные:

  • Office-SPB сервер;
  • Office-Moscow клиент;
  • NetworkCore выполняет роль провайдера, он будет заниматься обычной маршрутизацией;
  • Office-Moscow ether1 смотрит в интернет 172.16.10.2/24;
  • Office-SPB ether1 смотрит в интернет 172.16.11.2/24;
  • Office-Moscow имеет bridge “General-Bridge” в локальной сети 1 92.168.11.1/24;
  • Office-SPB имеет bridge “General-Bridge” в локальной сети 1 92.168.10.1/24;
  • IP ПК в локальной сети Office-Moscow 192.168.11.2;
  • IP ПК в локальной сети Office-SPB 192.168.10.2;
  • Адресация в VPN сети 172.16.25.0/24.

Цель №1. Подключиться к ранее настроенному роутеру с маршрутизатора Mikrotik в Москве.

Первым делом проверим доступность через интернет. Я отправлю ping запросы с обоих роутеров, дабы убедиться, что они друг друга видят. В реально жизни один из них должен иметь белый (публичный) IP, и именно тот, кто будет выполнять роль сервера.

Далее переходим на московский роутер и открываем PPP.

Создаем PPTP Client интерфейс.

В General вписываем понятное имя интерфейса. Советую называть их в зависимости на того, на кого он смотрит, в нашем случае это направление в Санкт-Петербург. Назовем to-SPB. Больше ничего не меняем и переходим далее.

Открываем вкладку Dial Out.

  • В строке Connect To заполняем IP роутера, на который хотим подключиться. В нашем случае это питерский Mikrotik сервер 172.16.11.1;
  • В поле User — логин;
  • В поле Password – пароль.

Но сначала их нужно создать! Переходим на наш питерский сервер Mikrotik, в PPP открываем Secrets.

Добавляем через + нового пользователя

  • Name – MSC (имя пользователя);
  • Password – 1234 (пароль);
  • Profile — PPTP-General-Profile (ранее созданный профайл).

Применим настройки и убедимся, что пользователь создался корректно.

Теперь тоже самое, но в командной строке:

/interface pptp-client add allow=mschap2 connect-to=172.16.11.2 disabled=no name=to-SPB password=1234 user=MSC

Возвращаемся на московский Mikrotik. Мы остановились на задании параметров PPTP Client.
Пишем IP PPTP сервера 172.16.11.2, логин и пароль, убираем старые протоколы аутентификации, оставляем только mschap2.

Применяем и смотрим что создался интерфейс

Интерфейс создался и его статус Connected. Перейдем во вкладку Status

  • Local Address указывает на адрес роутера в VPN сети;
  • Remote Address указывает на адрес роутера VPN сервера в VPN сети.

Попробуем теперь отправить ping запросы в обе стороны через VPN сеть.

Эхо-ответы есть. На этом стандартная настройка клиента закончена.

Настройка Firewall

Цель №2. Обезопасить клиентское подключение к серверу VPN.

После стандартной настройки клиента, необходимо настроить файрволл сервера который у нас тоже располагается на mikrotik. Перейдем в IP-Firewall

Ранее мы создали правило входящего соединения, теперь нам нужно его модифицировать. В данном примере я знаю с какого IP будет подключаться клиент.
Открываю правило №0 и вношу в него адрес клиента.

Открываю правило №1 и вношу в него тот же самый IP клиента

Тем самым я разрешил gre и tcp на порт 1723 глобально только с 172.16.10.2
Далее переходим PPP – Secrets.

  • На вкладке Service выставляю вместо any значение pptp. Т.е. разрешаю подключаться данной учетной записи только к сервису pptp;
  • В Caller ID задаю белый статический адрес клиента. Т.е. разрешаю подключаться этой учетной записи только с определенного адреса.

В консоли:

/ip firewall filter add action=accept chain=input comment=in_PPTP-Allow connection-state=new   protocol=gre src-address=172.16.10.2;
/ip firewall filter add action=accept chain=input connection-state=new dst-port=1723 protocol=tcp     src-address=172.16.10.2;
/ppp secret add caller-id=172.16.10.2 name=MSC password=1234 profile=PPTP-General-Profile     service=pptp.

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

Вы хорошо разбираетесь в Микротиках? Или впервые недавно столкнулись с этим оборудованием и не знаете, с какой стороны к нему подступиться? В обоих случаях вы найдете для себя полезную информацию в углубленном курсе «Администрирование сетевых устройств MikroTik». В курсе много практических лабораторных работ по результату выполнения которых вы получите обратную связь. После окончания обучения вы получите диплом гос. образца РФ. Подробности и доступ к началу курса бесплатно тут.

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Библиотека бесплатных программ для компьютера windows 10
  • Горячие клавиши для вызова калькулятора в windows 7
  • Установочный файл windows 10 microsoft
  • Как перезагрузить реестр windows
  • Как активировать windows server 2008 r2 sp1