Как мы выбирали vpn-протокол и сервер настраивали

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

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

VPN подключение PPTP между двумя MikroTik-ами, объединение офисов

В этой настройке будут участвовать два роутера 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 клиент, который отлично подходит под эту роль. Для его настройки нужно перейти

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

Если у вас есть профессиональный интерес в расширении данной статьи – заполните форму запроса.

Part 1: What is PPTP VPN?

The free VPN PPTP was earlier introduced by Windows, but was later adopted by all the other platforms like Linux, macOS, iOS, Android, etc. Even though the layer of encryption in free PPTP VPN is not as secure as other protocols, it makes it pretty fast. Due to this, the PPTP VPN is widely used to bypass location-based restrictions.

  • The free VPN PPTP supplies data into packets and send them through a tunnel to attain a secure communication.
  • Data is encrypted and its authenticity is kept intact. Due to this, the free PPTP VPN is extensively used in public networks as well.
  • It supports the 128-bit Point to Point encryption.
  • It is quite easy to setup PPTP free VPN (only the server address, username, and password are needed).
  • Even though PPTP is secure and pretty fast, it is not as safe as other protocols (that support 256-bit encryption). It is believed that the government is now able to crack it.
  • The tunneling is of two types in PPTP – Voluntary and Compulsory. Voluntary tunneling is initiated from the client’s end while compulsory tunneling is initiated from the server’s end. Compulsory tunneling should be supported by the router.

By attaining a free VPN PPTP server, you can easily connect to it. For instance, if you wish to connect to Singapore, you would need free PPTP VPN Singapore host IP. We have provided a free PPTP VPN list in the next section.

IPsec

Internet Protocol Security (IPsec) — это набор протоколов для обеспечения защиты данных, передаваемых по IP-сети. В отличие от SSL, который работает на прикладном уровне, IPsec работает на сетевом уровне и может использоваться нативно со многими операционными системами, что позволяет использовать его без сторонних приложений (в отличие от OpenVPN).

IPsec стал очень популярным протоколом для использования в паре с L2TP или IKEv2, о чем мы поговорим ниже.

IPsec шифрует весь IP-пакет, используя:

  • Authentication Header (AH), который ставит цифровую подпись на каждом пакете;
  • Encapsulating Security Protocol (ESP), который обеспечивает конфиденциальность, целостность и аутентификацию пакета при передаче.

Обсуждение IPsec было бы неполным без упоминания утечки презентации Агентства Национальной Безопасности США, в которой обсуждаются протоколы IPsec (L2TP и IKE). Трудно прийти к однозначным выводам на основании расплывчатых ссылок в этой презентации, но если модель угроз для вашей системы включает целевое наблюдение со стороны любопытных зарубежных коллег, это повод рассмотреть другие варианты. И все же протоколы IPsec еще считаются безопасными, если они реализованы должным образом.

Теперь мы рассмотрим, как IPsec используется в паре с L2TP и IKEv2.

L2TP/IPsec

Layer 2 Tunneling Protocol (L2TP) был впервые предложен в 1999 году в качестве обновления протоколов L2F (Cisco) и PPTP (Microsoft). Поскольку L2TP сам по себе не обеспечивает шифрование или аутентификацию, часто с ним используется IPsec. L2TP в паре с IPsec поддерживается многими операционными системами, стандартизирован в RFC 3193.

L2TP/IPsec считается безопасным и не имеет серьезных выявленных проблем (гораздо безопаснее, чем PPTP). L2TP/IPsec может использовать шифрование 3DES или AES, хотя, учитывая, что 3DES в настоящее время считается слабым шифром, он используется редко.

У протокола L2TP иногда возникают проблемы из-за использования по умолчанию UDP-порта 500, который, как известно, блокируется некоторыми брандмауэрами.

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

IKEv2/IPsec

Internet Key Exchange version 2 (IKEv2) является протоколом IPsec, используемым для выполнения взаимной аутентификации, создания и обслуживания Security Associations (SA), стандартизован в RFC 7296. Так же защищен IPsec, как и L2TP, что может говорить об их одинаковом уровне безопасности. Хотя IKEv2 был разработан Microsoft совместно с Cisco, существуют реализации протокола с открытым исходным кодом (например, OpenIKEv2, Openswan и strongSwan).

Благодаря поддержке Mobility and Multi-homing Protocol (MOBIKE) IKEv2 очень устойчив к смене сетей. Это делает IKEv2 отличным выбором для пользователей смартфонов, которые регулярно переключаются между домашним Wi-Fi и мобильным соединением или перемещаются между точками доступа.

IKEv2/IPsec может использовать ряд различных криптографических алгоритмов, включая AES, Blowfish и Camellia, в том числе с 256-битными ключами.

IKEv2 поддерживает Perfect Forward Secrecy.

Во многих случаях IKEv2 быстрее OpenVPN, так как он менее ресурсоемкий. С точки зрения производительности IKEv2 может быть лучшим вариантом для мобильных пользователей, потому как он хорошо переустанавливает соединения. IKEv2 нативно поддерживается на Windows 7+, Mac OS 10.11+, iOS, а также на некоторых Android-устройствах.

OpenVPN сервер

Настройка сервера

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

Устанавливаем необходимые пакеты. Пакет “Easy-RSA” нужен для управления ключами шифрования.

Создаем символическую ссылку на конфигурационный файл OpenSSL, в противном случае система выдаст ошибку при загрузке переменных.

Переходим в рабочий каталог утилиты easy-rsa, загружаем переменные и очищаем старые конфигурации.

Приступаем к созданию ключей. Генерируем ключ Диффи-Хеллмана, процесс может занять некоторое время.

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

В процессе необходимо ответить на вопросы и ввести информацию о владельце ключа. Вы можете оставить значения по умолчанию, которые указаны в квадратных скобках. Для завершения ввода нажимаем “Enter”.

Генерируем ключи для сервера, в качестве аргумента указываем произвольное название, в нашем случае это “vpn-server”

Как и на предыдущем шаге отвечаем на вопросы или оставляем значения по умолчанию. На завершающем этапе дважды нажимаем “y”.

Генерация ключей сервера завершена, все файлы находятся в папке “/usr/share/easy-rsa/keys”.

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

Копируем и распаковываем в каталог “/etc/openvpn/” шаблон конфигурационного файла.

Открываем на редактирование файл “/etc/openvpn/server.conf” и убеждаемся в наличии следующих строк, при необходимости корректируем.


Остальные параметры оставляем без изменений.
Перезапускаем службу OpenVPN для применения конфигурации.

Настройка сервера завершена!

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

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

Устанавливаем приложение, оставляя все параметры по умолчанию.


На следующем этапе необходимо подготовить на сервере и передать на компьютер клиента следующие файлы:

  • публичный и приватный ключи;
  • копия ключа центра сертификации;
  • шаблон конфигурационного файла.

Подключаемся к серверу, повышаем права,переходим в рабочий каталог утилиты “easy-rsa” и загружаем переменные.

Генерируем ключевую пару для клиента, в качестве аргумента указываем произвольное имя, в нашем случае “client1”.

Отвечая на вопросы вводим свои данные или просто нажимаем “ENTER”, оставляя значения по умолчанию. После этого дважды нажимаем “y”

Сгенерированные ключи клиента также находятся в папке “/usr/share/easy-rsa/keys/” Для удобства создадим в домашнем каталоге папку “client1” и скопируем в нее все файлы предназначенные для переноса на клиентский компьютер.

Скопируем в эту же папку шаблон клиентского конфигурационного файла. При копировании меняем расширение файла на “ovpn”.

Изменим владельца каталога “~/client1/” и всех файлов находящихся в нем, для того, чтобы получить возможность перенести их на клиентский компьютер. В нашем случае сделаем владельцем пользователя “mihail”


Переходим на клиентский компьютер и копируем с сервера содержимое папки “~/client1/” любым доступным способом, например с помощью утилиты “PSCP”, которая входит в состав клиента Putty.

Файлы ключей “ca.crt”, “client1.crt”, “client1.key” можно хранить в любом месте, в нашем случае это папка “c:\Program Files\OpenVPN\keys”, а конфигурационный файл “client.ovpn” переносим в директорию “c:\Program Files\OpenVPN\config”.

Приступаем к конфигурированию клиента. Открываем в блокноте файл “c:\Program Files\OpenVPN\config\client.ovpn” и отредактируем следующие строки

Остальные параметры оставляем без изменений.

Сохраняем файл и запускаем клиентское приложение “OpenVPN GUI”.


Для подключения к серверу щелкаем правой кнопкой мыши на иконке в трее и выбираем “Подключиться”. При успешном соединении иконка станет зеленого цвета.

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


Настраиваем VPN-сервер

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

Самый простой критерий выбора расположения сервера — это удалённость от вас, т.е. если будет выбор между размещением сервера в Германии или в США, то своё предпочтение следует отдать Германии (если вы находитель в России), т.к., в теории, ваш трафик будет проходить через меньшее кол-во магистралей и будет идти по более короткому маршруту.

Для личного использования или небольшого кол-ва пользователей подойдёт самый простой вариант сервера, к примеру на digitalocean можно взять самую базовую конфигурацию сервера с одним ядром, 1 Gb оперативной памяти и 25 Gb дискового пространства.

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

Для установки и настройки сервера будем использовать следующие инструменты:

  • Docker + docker-compose.
  • strongswan — реализацию IPSec сервера.
  • Let’s Encrypt — для генерации сертификатов.
  • Radius — для мониторинга и отправки статистических данных.

Начнём с Docker контейнера, в котором и будет запускаться vpn-сервер.

Для управления пользователями мы создаём два скрипта adduser.sh, rmuser.sh для добавления и удаления пользователя соответственно.

adduser.sh

rmuser.sh

На сервере все пользователи будут храниться в файле ipsec.secrets.

Для запуска нашего сервера подготовим следующий скрипт:

Чтобы было проще запустить весь сервер одной командой, завернём всё в docker-compose:

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

Пробрасываем порты, необходимые для подключения к серверу, а также для генерации сертификатов через Let’s Encrypt.

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

Выполняя команду , мы запускаем наш vpn-сервер, а также radius сервер (если он вам нужен).

Как работает PPTP

PPTP шифрует, аутентифицирует и согласовывает PPP, любые данные, которые проходят и инкапсулируют данные в IP-конверте. Когда данные собраны, они перемещается по «туннелю». Каждый маршрутизатор или машина, через которые проходят данные, будут восприниматься как IP-пакет. Эти туннели обеспечивают безопасное использование для локальных сетей или для WAN. Даже если вы подключились к публичной сети, информация будет безопасно передана.

PPTP туннели

Существует два типа туннелей:

  1. Самостоятельное туннелирование — инициируется клиентом.
  2. Обязательное туннелирование — инициируется сервером PPTP.

Туннели создаются, когда пользователь запускает клиент PPTP, который подключается к их интернет-провайдеру (ISP), это и есть вариант добровольного туннелирования. Когда туннелирование инициируется сервером, это называется принудительным туннелированием. Для принудительного туннелирования должен обязательно быть запущен маршрутизатор. Добровольное туннелирование не нуждается в маршрутизаторах, мостах или поддержке ISP.

Добровольное туннелирование создает соединение протокола управления передачей (TCP) между клиентом и сервером. После установления VPN туннель PPTP может поддерживать два разных типа потока информации:

  • Контролирующие сообщения для управления VPN-соединением. Эти сообщения передаются непосредственно между клиентом и сервером.
  • Пакеты данных, которые проходят через туннель к клиенту или от него.

[edit] Option 1: Activate the JFFS Partition or a Samba Share

Follow the excellent instructions found here to enable the JFFS partition on your router.

You will need to enable JFFS through nvram AND via the web interface — this was the only way we were able to reliably have the JFFS partition function as intended.

An alternative is to use a Samba Share located on an external server. This process is detailed here. Keep in mind, your paths used for the scripts below will change based on how you set up the share.

Configure Router To Run Your Startup Scripts

Ensure that SSHD is enabled on your router (AdministrationServices tab) and SSH into your router. Note that you should replace the IP address in the line below with whatever the actual IP address of your router is on the LAN side.

#ssh -u admin 192.168.1.1

First we set rc_startup to launch our ‘controller’ startup script.

nvram set rc_startup="sh /jffs/etc/config/my_startup.sh"
nvram commit

Ensure the directories needed exist:

mkdir -p /jffs/etc/config

Now we create our ‘my_startup.sh’ script:

vi /jffs/etc/config/my_startup.sh

Enter the following into the editor and save.

#!/bin/sh
for I in `/bin/ls /jffs/etc/config/*.startup`
do
   sh $I&
done

Quick vi Tutorial for Windows users: i — inserts, ESC:wq — exits editing mode, writes your changes, and quits vi

Ensure the permissions enable the script to be run:

chmod 700 /jffs/etc/config/my_startup.sh

Create the Network Scripts

Create a /jffs/etc/config/addnet#.startup script for each additional network range you require access to on the corporate network. In the example below our company has a second subnet of 10.20.30.0/24

Example /jffs/etc/config/addnet1.startup:

#!/bin/sh

#First we sleep for 2 minutes...we want to wait for ppp0 to come up.
sleep 120

#Now we can proceed with the iptables rules needed for this subnet.
REMOTESUB=10.20.30.0
REMOTENET=255.255.255.0
INT=ppp0
  /sbin/route add -net $REMOTESUB netmask $REMOTENET dev $INT
  /usr/sbin/iptables --insert OUTPUT --source 0.0.0.0/0.0.0.0 --destination $REMOTESUB/$REMOTENET --jump ACCEPT --out-interface $INT
  /usr/sbin/iptables --insert INPUT --source $REMOTESUB/$REMOTENET --destination 0.0.0.0/0.0.0.0 --jump ACCEPT --in-interface $INT
  /usr/sbin/iptables --insert FORWARD --source 0.0.0.0/0.0.0.0 --destination $REMOTESUB/$REMOTENET --jump ACCEPT --out-interface $INT
  /usr/sbin/iptables --insert FORWARD --source $REMOTESUB/$REMOTENET --destination 0.0.0.0/0.0.0.0 --jump ACCEPT --in-interface $INT
  /usr/sbin/iptables --table nat --append POSTROUTING --out-interface $INT --jump MASQUERADE
  /usr/sbin/iptables --insert FORWARD --protocol tcp --tcp-flags SYN,RST SYN --jump TCPMSS --clamp-mss-to-pmtu
exit 0

Ensure the permissions enable the script to be run:

chmod 700 /jffs/etc/config/addnet1.startup

Преимущества и недостатки PPTP

PPTP существует уже более десяти лет. Сервис имеет множество преимуществ от безопасности до скорости. Однако все же существуют некоторые недостатки, связанные с использованием PPTP. Вот преимущества и недостатки использования PPTP.

Преимущества

PPTP поддерживает все существующие операционные системы (от компьютера до телефона)

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

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

Недостатки

  • Ограничение до 128-битного шифрования делает PPTP устаревшим VPN протоколом. Это небезопасный протокол. Зашифрованную секретную информацию не рекомендуется пропускать через PPTP.
  • Правительственные организации, такие как NSA, смогли взломать протокол PPTP .
  • Стабильность соединения может изменяться в зависимости от сети, что приводит к более медленной скорости.
  • Протокол может быть легко заблокирован интернет-провайдерами, поскольку он работает исключительно через порт 1723 и использует нестандартные GRE-пакеты, которые легко идентифицировать.
  • Не подходит для онлайн-безопасности и онлайн-анонимности.

Если вы намереваетесь использовать протокол, который легко настроить и который обеспечивает высокую скорость работы, но при этом вам не обязательно наличие 100% гарантии высокотехнологичных алгоритмов шифрования, PPTP — это протокол VPN на который вам стоит обратить внимание при настройке и установке дома или в офисе

How Does VPN Passthrough Work

Typically, a VPN connection would go from your device through your router to the world wide web and connect to a VPN server. However, when a VPN protocol doesn’t give the router’s NAT anything to work with, the connection is impossible. 

That’s where the VPN passthrough works. It isn’t a single thing, but a set of workarounds that make older tunneling protocols work NAT. PPTP, IPSec, and L2TP are all older protocols. For example, a PPTP passthrough actually replaces GRE (a tunneling protocol used by PPTP) with enhanced GRE. That’s why when we’re talking about VPN passthrough, we’re actually using an umbrella term that encompasses PPTP, IPSec, and L2TP passthroughs.

Older tunneling protocols no longer provide the security that would be industry-standard, and that’s why Surfshark doesn’t use them. Newer protocols like OpenVPN and IKEv2 account for NAT’s needs.

Surfshark — лучший VPN с огромным выбором серверов, в том числе в России

Место регистрации Surfshark — Британские Виргинские островах. Местное законодательство не требует хранить пользовательские данные, поэтому сервис способен выполнять свою основную задачу — предоставление конфиденциального доступа в сеть.

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

Для предотвращения утечек на серверах используются приватные DNS. Благодаря режиму маскировки даже провайдер не в состоянии определить факт использования VPN. Surfshark работает во всех регионах мира — даже в странах, где интернет жёстко контролируют.

Плюсы:

  • Подключение неограниченного количества устройств по одной подписке.
  • Полный отказ от ведения логов. В документах сервиса подробно описано, какую информацию Surfshark не собирает. По сути, VPN-провайдер будет знать только адрес электронной почты, через который вы регистрировались.
  • Более 1700 серверов в 63 странах. Если понадобится другой IP-адрес, помимо российского, то вы легко найдёте подходящий вариант.
  • 256-битное шифрование.
  • Возможность переключения между протоколами OpenVPN и IKev2 .
  • Все необходимые инструменты безопасности: экстренный разрыв сессии, предотвращение утечек, маскировка пользователя.
  • Нормальная работа стриминговых сервисов. Потоковое видео воспроизводится без буферизации.

Минусы:

  • При подключении вы указываете только страну, а не конкретный сервер.
  • Рекомендуемый по умолчанию сервер иногда оказывается не самым производительным. Этот недостаток исправляется выбором другой локации.

Стоимость:

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

  • 1 месяц премиум-доступа стоит 11,95 доллара
  • Годовая подписка — 71,88 доллара (5,99 доллара/месяц)
  • Доступ на 2 года — 47,76 доллара (1,99 доллара/месяц)

Сервис предлагает дополнительные платные опции за 0,99 доллара/месяц. В пакет входит предупреждение об утечке адреса электронной почты и очистка поисковой выдачи от рекламных ссылок.

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

Настройка VPN-сервера

Мы рассмотрим четыре протокола для организации VPN:

  • PPTP;
  • L2TP/IPsec;
  • OpenVPN;
  • SSTP.

Каждый из протоколов обладает своими плюсами и минусами. Рассмотрим протоколы поближе.

PPTP

Начнем с самого легкого в настройке протокола Point-to-Point Tunneling Protocol (PPTP). Данный протокол не требует большого количества вычислительных ресурсов и поддерживается «из коробки» множеством операционных систем. Среди минусов — наличие серьезных уязвимостей в протоколах аутентификации.

Запустить VPN-сервер можно в одну команду:

В качестве клиента возьмем смартфон под управлением ОС Android 8.0.0.


Добавление VPN и подключение средствами ОС Android

Подключение по PPTP не требует дополнительного программного обеспечения и не доставляет проблем. Однако, если хочется чуть больше безопасности, то следует посмотреть в сторону протоколов L2TP/IPsec.

L2TP/IPSec

Как и PPTP, протоколы L2TP/IPsec поддерживаются большим количеством операционных систем. Более того, используемый в IPsec алгоритм шифрования AES на данный момент не имеет серьезных уязвимостей, что гарантирует относительную безопасность и конфиденциальность при использовании L2TP/IPsec.

Настройка L2TP/IPsec VPN-сервера похожа на настройку PPTP-сервера:

Обратите внимание на параметр ipsec-secret. Этот параметр — общий ключ IPsec

Так как мы используем аутентификацию по паре логин/пароль без сертификата, то в настройках клиента необходимо выбирать L2TP/IPsec PSK или L2TP/IPsec с общим ключом.


Выбор L2TP/IPsec PSK и ввод ipsec-secret

Хотя L2TP/IPsec является хорошим компромиссом, стоит оценить и OpenVPN.

OpenVPN

OpenVPN — современная технология с открытым исходным кодом. Данное решение предоставляет безопасность, высокую скорость работы и умение маскироваться под HTTPS-трафик. К сожалению, для использования OpenVPN необходимо устанавливать дополнительное программное обеспечение, например, официальный OpenVPN Connect, а также работать с сертификатами и конфигурационными файлами ovpn.

Включаем OpenVPN-сервер с указанием серверного сертификата, который сгенерировали ранее:

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

Генерируем сертификат для пользователя vpn-user на основе шаблона:

Экспортируем сертификат и ключ

Обратите внимание, что пароль во время экспортирования указан пароль super-secret-password, который необходимо будет ввести при импорте в VPN-клиенте

В веб-интерфейсе на вкладке Files можно найти следующие файлы:

  • cert_export_vpn-user@MikroTik.crt;
  • cert_export_vpn-user@MikroTik.key.

Скачиваем указанные файлы и составляем конфигурационный файл ovpn:

Передаем ovpn-файл на смартфон и импортируем его через OpenVPN Connector.


Импортирование профиля ovpn

В качестве Private Key Password используем пароль, указанный при экспортировании. Данные пользователя для подключения остались неизменными.

SSTP

SSTP — это проприетарный протокол от Microsoft, обладающий достоинствами OpenVPN. Данный протокол поддерживается ОС Microsoft Windows, начиная с Vista SP1, а на других ОС требует установки дополнительного ПО.

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

Так как данный протокол поддерживается Windows, то проверим работу сервера на Windows 10. В первую очередь необходимо установить центр сертификации. Скачиваем cert_export_MikroTik.crt и открываем двойным кликом.


Импорт сертификатов

Откроется окно, которое предупреждает, что нет доверия к этому центру сертификации. Это исправляется установкой сертификата. При установке выбираем хранилище «локальный компьютер» и на следующем шаге помещаем сертификат в «доверенные корневые центры сертификации». Теперь можно приступить к настройке VPN-подключения.


Настройка SSTP VPN на Windows 10

Открываем Параметры Windows — Сеть и Интернет — VPN и добавляем VPN-подключение, вводим имя или адрес сервера как было указано в сертификате сервера и вводим свои логин-пароль. VPN-подключение установлено.

Заключение

Вот так легко и быстро можно настроить роутер, маршрутизатор или шлюз в интернет. Названия разные, а суть одна. В данном случае я использовал операционную систему Debian, но схожий функционал легко организовать на Freebsd или CentOS. Для решения текущей задачи разница в работе не будет заметна. Каждый выбирает то, что больше нравится и к чему привык.

Пройдемся быстренько по этапам того, что сделали:

  1. Подготовили сервер Debian к настройке шлюза.
  2. Настроили маршрутизацию, iptables, нат. Проверили, что весь функционал восстанавливается после перезагрузки.
  3. Установили и настроили простой dhcp сервер и кэширующий dns сервер — dnsmasq. С его помощью автоматизировали поучение сетевых настроек пользователями.
  4. Установили простое средство мониторинга сетевой активности в консоли в режиме реального времени с помощью утилиты iftop.

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

Напоминаю, что данная статья является частью единого цикла статьей про сервер Debian.

Онлайн курсы по Mikrotik

Если у вас есть желание научиться работать с роутерами микротик и стать специалистом в этой области, рекомендую пройти курсы по программе, основанной на информации из официального курса MikroTik Certified Network Associate. Помимо официальной программы, в курсах будут лабораторные работы, в которых вы на практике сможете проверить и закрепить полученные знания. Все подробности на сайте .

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

  • Знания, ориентированные на практику;
  • Реальные ситуации и задачи;
  • Лучшее из международных программ.

Помогла статья? Подписывайся на telegram канал автора

Рекомендую полезные материалы по Debian:
Настройки системы
  • Установка
  • Базовая настройка
  • Настройка сети
  • Обновление 8 до 9
  • Обновление 7 до 8
  • Включение логов cron

Подробная установка Debian 9 Stratch с помощью графического инсталлятора со скриншотами и пояснениями к каждому пункту установщика.

Базовая настройка сервера Debian. Приведены практические советы по улучшению безопасности и удобства администрирования.

Подробное описание настройки сети в Debian — задать ip адрес, dhcp, отключить ipv6, dns, hostname, статические маршруты и др.

Обновление предыдущей версии Debian 8 Jessie до последней Debian 9 Stratch. Подробная инструкция с описанием по каждому этапу обновления.

Обновление версии Debian 7 wheezy до Debian 8 Jessie. Подробная инструкция с описанием по каждому этапу обновления.

Включение записи логов cron в Debian в отдельный файл и настройка ротации этого файла. Отключение логов в syslog.

Настройка программных комплексов
 
  • Proxmox
  • Шлюз в интернет
  • Установка Asterisk
  • Asterisk+Freepbx
  • PostgreSQL для 1С
  • Настройка pptp

Подробное описание установки гипервизора proxmox на raid1 mdadm на базе операционной системы Debian 8. Приведены практические советы по настройке.

Настройка интернет шлюза на Debian. Включает в себя настройку iptables, nat, dhcp, dns, iftop.

Чистая установка Asterisk 13 на сервер под управлением Debian 8. Никаких дополнений и GUI, только vanilla asterisk.

Установка Freepbx 12 и Asterisk 13 на сервер под управлением Debian/Ubuntu. Подробное описание и разбор ошибок установки.

Рассказ об установке и небольшой настройке сервера бд postgresql для работы с базами 1С. Задача не сложная, но есть небольшие нюансы как по настройке, так и по выбору дистрибутива.

Описание установки и настройки pptp сервера в Debian с передачей статических маршрутов клиенту для организации доступа к ресурсам сети.

Разное
  • Бэкап с помощью rsync
  • Тюнинг postgresl для 1C

Подробное описание настройки бэкапа с помощью rsync на примере скрипта инкрементного архива на системе Centos, Debian, Ubuntu, Windows.

Ускорение работы 1С с postgresql и диагностика проблем производительности

Оцените статью
Рейтинг автора
5
Материал подготовил
Андрей Измаилов
Наш эксперт
Написано статей
116
Добавить комментарий