Sn mynetname net пошаговая инструкция


Прочитано:
35 568

Моя задача: разобрать действия которые нужно проделать на домашнем Микротике (2011UiAS-2HnD) чтобы можно было откуда угодно иметь возможность настроить VPN подключение и получить доступ к домашним сервисам, в моем случае такие сервисы как: ZM (следим за периметром возле дома), OwnCloud (собственная база заметок), Zabbix (мониторю состояние своих сервисов: + погоду и различные датчики).

Доступ к домашней сети будет организован посредством протокола PPTP, он представляет из себя связку протокола TCP (для передачи данных) и GRE (для обертывания пакетов).

Схема организации туннеля до домашнего микротика:

  • Мне провайдер предоставляет статический IP-адрес
  • На Mikrotik создаем туннель
  • На Mikrotik создаем профили удаленного подключения (Логин и Пароль)
  • На Mikrotik создаем правила Firewall маршрутизации чтобы пройти сквозь брандмауэр

Первым делом подключаюсь через Winbox к своему Mikrotik’у и активирую PPTP сервер:

WinBOX — IP&MAC — меню PPP — вкладка Interface, после нажимаю PPTP Server

  • Enabled: отмечаю галочкой
  • MAX MTU: 1450
  • MAX MRU: 1450
  • Keepalive Timeout: 30
  • Default Profile: default
  • Authentication: должно быть отмечено только — mschap1 & mschap2

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

В разделе PPP переходим в меню Secrets и добавляем нового пользователя: Add —

  • Name: ekzorchik
  • Password: Aa1234567@@!!! (советую ставить пароль посложнее)
  • Service: pptp
  • Profile: default-encryption
  • Local Address: пишем IP-адрес Mikrotik, который будет выступать в роли Сервера VPN (192.168.1.9)
  • Remote Address: пишем IP-адрес пользователя (192.168.1.100)

Как только настройки произведены нажимаем Apply & OK для применения и сохранения.

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

  • открываю порт 1723 (для TCPпротокола):

winbox — IP&MAC — IP — Firewall — вкладка Filter Rules — Add

вкладка General:

  • Chain: input
  • Protocol: 6 (tcp)
  • Dst. Port: 1723

вкладка Action:

  • Action: accept

открываю правило для GRE.

winbox — IP&MAC — IP — Firewall — вкладка Filter Rules — Add

вкладка General:

  • Chain: input
  • Protocol: 47 (gre)
  • вкладка Action:

Action: accept

Так выглядят правила в winbox’е:

Правила FireWall на Mikrotik для VPN

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

Вот как бы и все, проверяю к примеру настройки подключения с работы из операционной системы Windows 7 Professional SP1:

Пуск — Панель управления — Центр управления сетями и общим доступом — Настройка нового подключения или сети — Подключение к рабочему месту — Использовать мое подключение к Интернету (VPN) :

  • Интернете-адрес: указываю внешний IP&DNS адрес выделяемый мне провайдером.
  • Имя местоназначения: VPN-HOME
  • Разрешить использовать это подключение другим пользователям: отмечаю галочкой

После указываю имя пользователя и пароль на удаленный доступ (данные идентификационные данные были введены выше):

  • Пользователь: ekzorchik
  • Пароль: Aa1234567@@!!!
  • Запомнить этот пароль: отмечаю галочкой

И после нажимаю «Подключить», если все сделано правильно то подключение будет установлено:

Подключение к VPN-сервису домашнего микротика успешно установлено

Также можно проверить, открыв оснастку «Центр управления сетями и общим доступом»

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

Также можно проверить, открыв консоль командной строки и отобразив IP адреса текущих сетевых адаптеров:

Win + R → cmd.exe

C:\Users\aollo>ipconfig

Настройка протокола IP для Windows

Адаптер PPP VPN-HOME:

DNS-суффикс подключения . . . . . :

IPv4-адрес. . . . . . . . . . . . : 192.168.1.100

Маска подсети . . . . . . . . . . : 255.255.255.255

Основной шлюз. . . . . . . . . : 0.0.0.0

Ethernet adapter Подключение по локальной сети:

DNS-суффикс подключения . . . . . :

IPv4-адрес. . . . . . . . . . . . : 10.9.9.47

Маска подсети . . . . . . . . . . : 255.255.255.0

Основной шлюз. . . . . . . . . : 10.9.9.1

Что теперь ну подключен я по VPN к дому, а что мне это дает, а то что теперь можно к примеру запустить браузер и подключиться к домашним ресурсам, если настроено удаленное включение компьютеров через Wake On Lan, то посредством запросов их можно включить, а после либо по VNC,RDP подключиться к ним.

Чтобы отключиться от VPN соединения, нужно возле часиков справа видите монитор с сетевой вилкой, нажимаете по нему левой кнопкой мыши, находите Ваше подключенное VPN соединение, наводите на него мышь (подключение выделяется) и через правый клик мышью выбираете меню «Отключить», а чтобы подключить все то же самое но выбираете меню «Подключить» — «Подключение»

Это все конечно же хорошо, а если Ваш провайдер не выдает Вам статический IP-адрес как у меня, как же быть. Но в этом Вам повезло, т. к. в самом Mikrotik есть служба на подобии DynDNS или No-IP которая может предоставить Вам DNS ссылку доступа к Вашему Mikrotik’у из вне, т. е.

WinBOX — IP&MAC — перехожу в раздел Quick Set, отмечаю галочкой VPN Access

В Микротике есть аналог DynDNS и он бесплатен

Указываю пароль (VPN Password) и что я вижу, у меня есть внешний адрес вот в таком вот формате: <уникальный_индентификатор>.sn.mynetname.net, дефолтное имя пользователя и пароль которые я ввел только что выше.

C:\Users\aollo>ping <уникальный_индентификатор>.sn.mynetname.net

Обмен пакетами с <уникальный_индентификатор>.sn.mynetname.net [<мой_внешний_ip_адрес] с 32 байтами да

нных:

Ответ от [<мой_внешний_ip_адрес]: число байт=32 время=7мс TTL=58

Ответ от [<мой_внешний_ip_адрес]: число байт=32 время=8мс TTL=58

Статистика Ping для [<мой_внешний_ip_адрес]:

Пакетов: отправлено = 2, получено = 2, потеряно = 0

(0% потерь)

Приблизительное время приема-передачи в мс:

Минимальное = 7мсек, Максимальное = 8 мсек, Среднее = 7 мсек

Control-C

^C

Открываем меню настройки PPP, включаем его и при создании нового пользователя указываем: Name (VPN), Password (то что указали выше), Service (pptp), Profile (default-encryption), Local Address (192.168.1.9), Remote Address (192.168.1.101) и нажимаем Apply и OK

После проверяю настройки подключения с рабочей станции только вместо статического IP адреса уже указываю DNS-ссылку: <уникальный_индентификатор>.sn.mynetname.net

и подключение также успешно проходит.

Итого, как оказалось на Микротике достаточно быстро можно поднять PPTP сервис посредством которого можно быстро начать пользоваться VPN-соединением. Такие настройки одинаково работают, как для дома так и для корпоративной сети, в этом собственно и большой плюс данного вида оборудования, купив раз с запасом получаем инструмент где можно реализовать многое, а для малой компании это будет существенным подспорьем. На этом я прощаюсь и до новых заметок, с уважением автор блога — ekzorchik.

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

Многофункциональный роутер «Микротик» подходит для частного использования и для бизнеса.

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

  • 4 lvl – 200;
  • 5 lvl – 500;
  • 6 lvl – без ограничений.

Как настроить VPN через L2tp Mikrotik для объединения офисов? - Troywell VPN

Варианты VPN сервера в “Микротике”

Существует 2 способа реализации ВПН при помощи «Микротика». Отличие их в том, что в первом случае вы настраиваете подключение NPN между абонентами и Mikrotik, а во втором – два отдельных прибора.

Самый легкий и быстрый способ объединения двух Mikrotik IpSec VPN состоит в создании туннеля «site-to-site». Такой вид объединения часто используется для передачи данных между офисами по VPN-access. Это делается с применением EOIP Tunnel. Если вы решите не шифровать передаваемые данные, то соединение будет работать максимально быстро. Для настройки вам понадобятся два «белых» IP на каждом маршрутизаторе.

Соединение «Клиент — сервер» через Mikrotik (L2tp, SSTP, PPTP) гораздо удобнее, ведь с его помощью можно подключать к удаленному серверу через VPN не только несколько офисов, но и отдельных удаленных сотрудников. При этом достаточно иметь только один «белый» IP.

Как настроить домашнюю сеть через Интернет

Сейчас одним из самых простых и популярных типов подключения VPN-access служит L2tp. Его востребованность обоснована тем, что L2tp-клиент уже встроен в ОС Windows 10.

Для того, чтобы управлять рабочей сетью, находясь в командировке, отпуске или на удаленке — ваш маршрутизатор должен иметь реальный IP. Что это значит?

Что такое реальный IP?

Когда вы подключаетесь к Интернету, ваш компьютер (маршрутизатор) автоматически получает IP-адрес, при помощи которого происходит взаимодействие с сетью. Адрес может быть назначен как локальной сетью, так и вашим провайдером. При назначении адреса сетью — ваше оборудование будет скрыто от общего доступа. Если IP назначается провайдером, то компьютер или маршрутизатор становятся доступными через Интернет.

Что делать, если нет реального IP, но нужен доступ к локальной сети?

Как настроить VPN через L2tp Mikrotik для объединения офисов? - Troywell VPN

Как произвести настройку

Эту проблему просто решить при помощи маршрутизатора. Рассмотрим несколько вариантов построения ВПН-туннеля – для тех, кто никогда не работал с RouterOS и тех, кто уже имеет базовые знания по настройке.

Вариант настройки №1: для новичков

Маршрутизатор, в данном случае – VPN-клиент, а в качестве главного сервера используем рабочий сервер, которому присвоен реальный IP.

Далее объясняем, как настраивается маршрутизация на практике:

  1. Открываем поле меню PPP – Interface нажимаем «+» (добавить) и кликаем на L2tp Client.

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_1.png

  1. Затем перед вами откроется окно, на вкладке General которого вы должны прописать название, например, «Удаленная работа». Затем кликаем на Dial Out и приступаем к настройке ключевых параметров соединения сервера:
  • Connect to: IP реальный (например, 192.168.5.1).
  • USER: ваше имя.
  • Password: пароль.

Для обеспечения надежной защиты данных возможно поднять VPN с помощью L2tp IpSec VPN. Скорость работы будет ограничена параметрами Mikrotik. Если в ходе работы не нужно передавать большие объемы информации, то возможно приобрести недорогое оборудование одной из предыдущих модификаций, без аппаратной поддержки IpSec. Без этой опции вы сможете передавать 200-300 Мб по L2tp IpSec server.

  1. Если соединение начнет «подвисать», то берите более новую модель, уже с поддержкой. В этом случае, вам подойдут модели CRR серии.

Важно! L2tp IpSec VPN корректно работает только, если вы используете оборудование Mikrotik. В противном случае, шифрование данных лучше отключить!

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_2.png

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_3.png

С настройкой VPN-клиента мы справились. Теперь приступаем к настройке VPN-сервера: его функцию будет выполнять маршрутизатор Mikrotik L2tp.

  1. Открываем вкладку PPP – Interface, затем кликаем на L2tp Server и ставим отметку в поле Enable. Добавляем шифрование, как описано ранее, нажимаем «Принять» (Yes), вводим пароль в поле IPsec Secret. Сохраняем внесенные данные.

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_4.png

  1. Мы подключили сервер. Теперь добавляем пользователя. Вписываем логин и пароль, которые мы уже прописывали со стороны клиента.
  2. Кликаем в Secrets, затем «+» (добавить) и добавляем данные, и выбираем ВПН-туннель.

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_5.png

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

Winbox – программное обеспечение, с интуитивно понятным интерфейсом, которое поможет управлять настройками Mikrotik.

Метод подключения пригодится тем, кто хочет работать удаленно, при этом имеет стабильное Интернет-соединение и реальный IP. Если получить его невозможно, то стоит воспользоваться платными сервисами, обеспечивающими DDNS. Бесплатные – нестабильные в работе и могут подвести вас в важный момент «отвалившись».

Но для этого компания, которая производит оборудование Mikrotik VPN, разработала собственный облачный сервис, который предоставляет услуги DDNS.

Вариант настройки №2: для опытных пользователей

  1. Кликаем на «Быстрые настройки» (Quick Set), в появившемся окне активизируем VPN.

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_6.png

  1. Единственное, что останется сделать – придумать пароль. Лучше воспользоваться генератором паролей, чтобы избежать взлома. Запишите пароль, чтобы не забыть его!

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_7.png

*********.sn.mynetname.net – это внешний адрес вашей рабочей сети. «*» – цифры номера вашего маршрутизатора.

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

VPN-подключение к сети при помощи встроенного клиента MS Windows

  1. Открываем «Панель управления» Windows из компонентов «Пуск». Кликаем на «Центр управления сетями и общим доступом». Кликаем «Настройка нового подключения – Подключение к рабочему месту – Подключение к VPN».

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_8.png

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_10.png

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_9.png

  1. Затем в поле «Интернет-адрес» вносим IP VPN и прописываем «Имя местоназначения».

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_11.png

  1. Вводим пароль и имя, которое мы придумали в предыдущих шагах. Нажимаем «Подключить».

https://deps.ua/images/news/company/2020/7989/Управления_домашней_сетью_через_интернет_12.png

С помощью чего выполнить шифрование

Шифровать поток данных, направленных через Mikrotik, возможно через Proton VPN. Также можно скачать бесплатную версию программы. В полной платной версии Proton VPN будут доступны такие функции, как

  • безлимитный трафик;
  • шифрование и передача ключей;
  • защита информации DNS;
  • Always-on VPN и Killswitch;
  • поддержка сетей Top, поддержка p2p и т.д.

Для передачи данных от Mikrotik, Proton VPN использует особую систему шифрования:

Так решается проблема отслеживания IP пользователя. Технология в чем-то схожа с Double или TrippleVPN.

У программы Proton VPN есть три версии: Visionary, Plus, Basic, которые различаются по стоимости, но все совместимы с Mikrotik.

Как настроить VPN через L2tp Mikrotik для объединения офисов? - Troywell VPN

Создание ВПН через командную строку

Как поднять подключение при помощи командной строки? Для кого-то способ может быть более понятным.

Создаем пул IP

Для создания вам понадобится «серая» подсеть и IP-адреса для подключения.

Применяем команду:

ip pool add name=<название> ranges=<IP-адреса>

Диапазон адресов, для ускорения процесса, можно прописать через дефис в формате:

/ip pool add name=vpn-pool ranges=172.24.0.*-172.24.0.***

Начиная от первого и заканчивая последним.

Создание PPP-профиля

PPP-профиль используется для привязки пула IP к VPN-серверу.

Применяем команду:

/ppp profile add name=vpn-profile local-address=172.24.0.254 remote-address=vpn-pool use-mpls=no use-compression=yes use-encryption=yes only-one=no

где:

  • name=vpn-profile – имя профиля;
  • local-address=***.**.*.*** – адрес сервера;
  • remote-address=vpn-pool – какой пул будет отдавать адреса для пользователей;
  • use-mpls=no – запрет на использование MPLS:
  • use-compression=yes – «поджимаем» трафик;
  • use-encryption=yes – при надобности запускаем шифрование данных;
  • only-one=no – подключение сразу нескольких пользователей к серверу (пользователь не один).

Настройка NAT

Теперь нам нужно разрешить вход клиентам в сеть. Настраиваем VPN за провайдерским NAT.

Применяем команду:

/ip firewall nat add chain=srcnat out-interface=ether1 action=masquerade

Как создать пользователя

Пользователь создается командой:

/ppp secret add name=<логин> password=<пароль> service=<тип сервера>

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

Создаем нового пользователя:

/ppp secret add name=vpn-user password=vpn-password service=any

Затем приступаем к генерации сертификатов.

Генерируем сертификаты

Нам понадобятся два сертификата: Certification authority и server.

Применяем команду:

/certificate add name=ca-template common-name=”MikroTik” days-valid=3650 key-usage=crl-sign,key-cert-sign

/certificate sign ca-template ca-crl-host=185.X.X.83 name=”MikroTik”

где параметр «ca-crl-host» – IP или домен.

Далее создаем сертификат «server»:

/certificate add name=server-template common-name=185.X.X.83 days-valid=3650 key-usage=digital-signature,key-encipherment,tls-server

/certificate sign server-template ca=”MikroTik” name=”server@MikroTik”

Подключаемся к IP, а не к домену.

Экспортируем CA:

/certificate export-certificate “MikroTik” export-passphrase=””

Настройка VPN под L2tp/IPsec Mikrotik

Алгоритм шифрования протокола сейчас практически не имеет багов. Значит шифрование при помощи AES будет безопасным.

Применяем команду:

/interface l2tp-server server set enabled=yes default-profile=vpn-profile authentication=mschap2 use-ipsec=required ipsec-secret=super-secret

Ipsec-secret – общий ключ, поэтому в настройках клиента нужно выбрать аутентификацию при помощи общего ключа.

https://selectel.ru/blog/wp-content/uploads/2020/10/2_L2TP-IPsec_1-1525×1356.jpg

Как настроить VPN через L2tp Mikrotik для объединения офисов? - Troywell VPN

Заключение

Мы надеемся, что наша инструкция поможет вам в работе и расширит возможности компании. Больше интересной и полезной информации вы можете найти в нашем блоге.

Время на прочтение
3 мин

Количество просмотров 38K

При настройке IPSec рано или поздно все сталкиваются с тем, что можно задать только IP-адреса удаленного VPN-сервера. Указание DNS-записей в настройках IPsec Policies и IPsec Peers не поддерживается.

Это может вызывать определенные неудобства в случаях, если на VPN-сервере:

  • сменили одного провайдера на другого;
  • решили изменить используемый статический IP-адрес;
  • используется динамический (серый) IP-адрес.

Взяв даже простейшую схему, становится видно, что нам придется менять настройки трех роутеров-клиентов VPN-сервера:

И в каждом из трех роутеров сменить значения:

  • IpSec/Policy/dst-address
  • IpSec/Policy/sa-dst-address
  • IpSec/Peer/address

В реальности, когда клиентов десятки и сотни, автоматизация этого процесса становится необходимостью. Рассмотрим, как это реализовать, используя стандартные возможности Microtik: DDNS, Scripts и Scheduler.

Для интереса немного усложним схему. Пусть центральными VPN-серверами у нас будут два роутера, к которым подключаются наши клиенты.

Включаем на обоих VPN-серверах DDNS, предоставляемый компанией. Mikrotik предоставляет DDNS как бесплатный сервис покупателям RouterOS.

ip cloud set ddns-enabled=yes

Другие поставщики DDNS

Я использую платный сервис DynECT от DynDNS, но схема работы от этого не меняется.

Можем увидеть результат: полученные A-записи в домене sn.mynetname.net, указывающие на наши VPN-серверы.

 > ip cloud print 
    ddns-enabled: yes
  public-address: 1.1.1.1
        dns-name: 111111111111.sn.mynetname.net
          status: updated

Переходим к роутерам, которые выступают клиентами.

В настройках IpSec/Policy и IpSec/Peer в комментарии к каждой строке подпишем DNS-имена VPN-серверов:

Далее добавляем скрипт SetIpSecDstAddrFromDns, который будет получать DNS-имена наших VPN-серверов из комментария и сравнивать их со значениями в настройках:

:if ([:len [/system script job find script=SetIpSecDstAddrFromDns]]>1) do={
  :error
}

:local DnsNameFromComment
:local ResolvedIpFromComment
:local ResolvedIpWithMaskFromComment

:local IpDstAddr
:local IpSaDstAddr


:foreach IpSecPolicyCount in=[/ip ipsec policy find] do={
  :set DnsNameFromComment [/ip ipsec policy get $IpSecPolicyCount comment]
  :if ($DnsNameFromComment!="") do={
    :do {
      :set ResolvedIpFromComment ([:resolve $DnsNameFromComment])
      :set ResolvedIpWithMaskFromComment ($ResolvedIpFromComment . "/32")
      :set IpDstAddr [/ip ipsec policy get $IpSecPolicyCount dst-address]
      :set IpSaDstAddr [/ip ipsec policy get $IpSecPolicyCount sa-dst-address]
      :if ($ResolvedIpWithMaskFromComment!=$IpDstAddr or $ResolvedIpFromComment!=$IpSaDstAddr) do={
        :log warning ("[SetIpSecDstAddrFromDns] Change IpSec policy dst-addr from " . $IpSaDstAddr . " to " . $ResolvedIpFromComment)
        /ip ipsec policy set $IpSecPolicyCount dst-address=$ResolvedIpWithMaskFromComment sa-dst-address=$ResolvedIpFromComment
      }
    } on-error={
      :set ResolvedIpFromComment "unknown"
      :log error ("[SetIpSecDstAddrFromDns] Cant resolve name " . $DnsNameFromComment)
    }
  }
}

:local IpPeerAddr
:foreach IpSecPeerCount in=[/ip ipsec peer find] do={
  :set DnsNameFromComment [/ip ipsec peer get $IpSecPeerCount comment]
  :if ($DnsNameFromComment!="") do={
    :do {
      :set ResolvedIpFromComment [:resolve $DnsNameFromComment]
      :set ResolvedIpWithMaskFromComment ($ResolvedIpFromComment . "/32")
      :set IpPeerAddr [/ip ipsec peer get $IpSecPeerCount address]
      :if ($ResolvedIpWithMaskFromComment!=$IpPeerAddr) do={
        :log warning ("[SetIpSecDstAddrFromDns] Change IpSec peer addr from " . $IpPeerAddr . " to " . $ResolvedIpFromComment)
        /ip ipsec peer set $IpSecPeerCount address=$ResolvedIpWithMaskFromComment
      }
    } on-error={
      :set ResolvedIpFromComment "unknown"
      :log error ("[SetIpSecDstAddrFromDns] Cant resolve name " . $DnsNameFromComment)
    }
  }
}

Добавляем задание в планировщик, которое будет каждые 30 секунд запускать скрипт и проверять, актуальны ли адреса наших VPN-серверов и обновлять их при необходимости.

Спасибо за внимание.

P. S. Статья не рассчитана на новичков, поэтому простейшие вещи, такие как настройка VPN-туннеля или описание скриптового языка Mikrotik, я опустил.

Because I’ve spent hours trying to understand all the details I need to get this working perfectly, I’ve decided to share the information so you don’t have to waste your time.

Most common use I can think of: access your home network using the most secure (sort of), fastest and well supported method — IPSEC/IKE2 with certificates (AKA digital signature) VPN server.

This guide based on RouterOS 6.48.3.

VPN Server setup

# Create CA certificate and sign it
/certificate add name="Home CA" common-name="Home CA" key-size=4096 days-valid=7300 key-usage=key-cert-sign,crl-sign
/certificate sign "Home CA"

# Create server certificate and sign it (Replace "XXXXXXXXXXX.sn.mynetname.net" with your DNS from "/ip cloud" otherwise some IKE2 clients would fail to connect)
/certificate add name="Home server" common-name="Home server" subject-alt-name="DNS:XXXXXXXXXXX.sn.mynetname.net" key-size=4096 days-valid=3650 key-usage=tls-server
/certificate sign "Home server" ca="Home CA"

# Create client certificate, sign it and export it as PKCS12 keystore (contains client certificate, client private key and CA)
/certificate add name="Home client1" common-name="Home client1" key-size=4096 days-valid=3650 key-usage=tls-client
/certificate sign "Home client1" ca="Home CA"
/certificate export-certificate "Home client1" file-name="Home client1" type=pkcs12 export-passphrase=1234567890

# Create IP pool for VPN users
/ip pool add name=vpn ranges=10.22.22.10-10.22.22.20

# Add firewall rules for IKE2 VPN
#
# Add this rule before action=drop rule in INPUT chain
/ip firewall filter add action=accept chain=input comment="Allow IPSEC/IKE2 connections" dst-port=500,4500 protocol=udp
#
# Add these 2 rules before "fasttrack" rule in FORWARD chain
/ip firewall filter add action=accept chain=forward comment="Accept in ipsec policy" ipsec-policy=in,ipsec
/ip firewall filter add action=accept chain=forward comment="Accept out ipsec policy" ipsec-policy=out,ipsec
#
# OPTIONAL - allow access to router from "10.22.22.10-10.22.22.20" IPs and masquerade traffic coming from VPN clients, so devices on your LAN sees that traffic is coming from the router IP rather than VPN IP
/ip firewall address-list add address=10.22.22.10-10.22.22.20 comment=VPN list=allowed_to_router
/ip firewall nat add action=masquerade chain=srcnat comment="Masquerade VPN traffic so devices see connections made from router IP" src-address=10.22.22.10-10.22.22.20

# Configure IPSEC settings (below used profile/proposal are compatible with Windows 10 IKE2 ciphers)
/ip ipsec mode-config add address-pool=vpn name=vpn
/ip ipsec policy group add name=vpn
/ip ipsec profile add dh-group=modp1024 enc-algorithm=aes-256 hash-algorithm=sha256 name=vpn
/ip ipsec peer add exchange-mode=ike2 name=vpn passive=yes profile=vpn
/ip ipsec proposal add enc-algorithms=aes-256-cbc name=vpn pfs-group=none
/ip ipsec identity add auth-method=digital-signature certificate="Home server" comment="Home client1" generate-policy=port-strict match-by=certificate mode-config=vpn peer=vpn policy-template-group=vpn remote-certificate="Home client1"
/ip ipsec policy add dst-address=0.0.0.0/0 group=vpn proposal=vpn src-address=0.0.0.0/0 template=yes

Additional VPN Client

In case you ever need it…

# Create client certificate, sign it and export it as PKCS12 keystore (contains client certificate, client private key and CA)
/certificate add name="Home client2" common-name="Home client2" key-size=4096 days-valid=3650 key-usage=tls-client
/certificate sign "Home client2" ca="Home CA"
/certificate export-certificate "Home client2" file-name="Home client2" type=pkcs12 export-passphrase=1234567890

# Create IPSEC identity
/ip ipsec identity add auth-method=digital-signature certificate="Home server" comment="Home client2" generate-policy=port-strict match-by=certificate mode-config=vpn peer=vpn policy-template-group=vpn remote-certificate="Home client2"

VPN Client setup

Windows 10/11 (Native)
1. Download .p12 certificate to your Windows PC
2. Double click, pop up opens
3. Select «Local Machine» and click «Next».
4. Nothing to change, click «Next».
5. Enter .p12 password (in above steps I used «1234567890») and (important) check «Mark this key as exportable», then click «Next».
6. Select «Place all certificates in the following store», browse and select «Personal». Then click «Next».
7. Finally click «Finish» and pop up will close.
8. In Windows search, find «Manage computer certificates» program and open it.
9. Move your «CA» certificate from «Personal/Certificates» folder to «Trusted Root Certification Authorities/Certificates» folder by simply drag & drop.
10. Right-click on your «CA» certificate (which you just moved), then «All Tasks», then «Export». Pop up will appear.
11. Click «Next».
12. First option «DER» will be selected. so just click «Next».
13. Enter location where to save this «CA» certificate. Suggestion would be «c:\vpn\home_ca.cer».
14. Click «Finish» and pop up will close.
15. Open powershell and create VPN profile using below command:

Add-VpnConnection `
	-Name Home `
	-ServerAddress XXXXXXXXXXX.sn.mynetname.net `
	-TunnelType IKEv2 `
	-AuthenticationMethod MachineCertificate `
	-EncryptionLevel maximum `
	-MachineCertificateIssuerFilter 'C:\vpn\home_ca.cer'

Linux (Strongswan plugin for NetworkManager)
Most of Linux desktop distros uses Network manager by default and Strongswan (for IKE2 functionality) plugin for Network Manager is readily available in official repositories:

  • Arch Linux: networkmanager-strongswan
  • Debian: network-manager-strongswan
  • Fedora: strongswan-charon-nm

Below guide is based on Fedora 34, Gnome DE using integrated IKE2 (Strongswan) support in Gnome:

1. Prepare certificates (Gnome/NetworkManager accepts only PEM certificates and not PKCS12)

# Become root
sudo su

# Create directory "/opt/vpn/home"
mkdir -p /opt/vpn/home

# Upload .p12 file to "/opt/vpn/home" directory...

# Change cwd to "/opt/vpn/home"
cd /opt/vpn/home/

# Extract PEM certificates (private key, certificate and CA)
openssl pkcs12 -in "Home client1.p12" -nocerts -nodes | sed -ne '/-BEGIN PRIVATE KEY-/,/-END PRIVATE KEY-/p' > "Home client1 key.pem"
openssl pkcs12 -in "Home client1.p12" -clcerts -nokeys | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > "Home client1 cert.pem"
openssl pkcs12 -in "Home client1.p12" -cacerts -nokeys -chain | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > "Home client1 CA.pem"

# Enforce permissions (to make sure strongswan/networkmanager can read these files)
chmod -R 755 /opt/vpn
chown -R root:root /opt/vpn

2. Go to Gnome settings —> Network —> VPN —> «+» button —> «IPsec/IKEv2 (strongswan)» choice.
3. Enter/Select the following details:

  • Server->Name: Home
  • Server->Address: XXXXXXXXXXX.sn.mynetname.net
  • Server->Certificate: Select «Home client1 CA.pem» file
  • Server->Identity: Empty
  • Client->Port: Empty
  • Client->Authentication: Certificate
  • Client->Certificate: Certificate/private key
  • Client->Certificate file: Select «Home client1 cert.pem» file
  • Client->Private key: Select «Home client1 key.pem» file
  • Client->Identity: Empty
  • Options->Request an inner IP address: Checked
  • Options->Enforce UDP encapsulation: Unchecked
  • Options->Use IP compression: Unchecked
  • Cipher proposals->Enable custom proposals: Checked
  • Cipher proposals->IKE: aes256-sha256-prfsha256-modp1024
  • Cipher proposals->ESP: aes256-sha1

4. Click Save.

Android (Strongswan)
Below steps were tested on Android 11, OnePlus 8 Pro device.

1. Download .p12 file to your smartphone.
2. Go to Android settings —> «Security & Lock screen» —> «Encryption & credentials» —> «Install a certificate» -> «VPN & app user certificate»
3. Select your downloaded .p12 certificate, Android will guide you through installation steps (all I had to do is to enter password and click «ok»/»next»).
4. Download «Strongswan» from Google play. Included native IKE2 VPN likely not going to work due to unknown reasons…
5. Open «Strongswan» application.
6. Select «ADD VPN PROFILE»
7. Enter the following details (what is missing should be left as it is):

  • Server: XXXXXXXXXXX.sn.mynetname.net
  • VPN Type: IKEv2 Certificate
  • User certificate: Select your recently imported VPN certificate (it will appear in the shown list)
  • Profile name: Home
  • Advanced settings: Checked
  • IKEv2 Algorithms: aes256-sha256-prfsha256-modp1024
  • IPsec/ESP Algorithms: aes256-sha1

8. Click «SAVE».

Apple devices
I do not have any Apple device, so I can’t provide any instructions. Feel free to provide someone in the comments, so I can update.

Fix for websites that are randomly not loading

If some of the websites (most notably https://speedtest.net/), then you are facing MSS/MTU issues. As per strongswan (IPSEC/IKE2 server for Linux) documentation, you should add these rules to your Mikrotik router:

/ip firewall mangle add action=change-mss chain=forward comment="Fix MSS for VPN server" new-mss=1360 passthrough=yes protocol=tcp src-address=10.22.22.10-10.22.22.20 tcp-flags=syn tcp-mss=!0-1360
/ip firewall mangle add action=change-mss chain=forward comment="Fix MSS for VPN server" dst-address=10.22.22.10-10.22.22.20 new-mss=1360 passthrough=yes protocol=tcp tcp-flags=syn tcp-mss=!0-1360

На этой странице рассмотрено создание 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 лабораторных работ, вопросы для самопроверки и конспект.

Понравилась статья? Поделить с друзьями:
  • Social engineering toolkit kali linux инструкция
  • Smt2 присадка инструкция по применению в масло
  • Sofosbuvir tablets 400 mg инструкция на русском языке
  • Smsl sd9 инструкция на русском
  • Soccer goal demix ворота детские инструкция