Раздел помощи SpaceWeb

Настройка VPN на Mikrotik CHR

03 апр, 2024

Если вам необходим VPN с постоянным белым IP-адресом определенной страны, а также контролем над ним и полной конфиденциальностью, то создание VPN для личного использования может стать оптимальным решением. В этой статье мы рассмотрим настройку VPN-сервера на базе Cloud Hosted Router. 

Настройка Mikrotik CHR на виртуальный сервер Sweb

  1. Зарегистрируйтесь в Sweb.

  2. Перейдите на страницу виртуальных серверов.

  3. Аренда сервера CLOUD EXTRA будет лучшим вариантом для настройки VPN.  Вы можете выбрать тип операционной системы из предложенного списка, а также предустановить дополнительное ПО. 

В нашем руководстве мы используем сервер Ubuntu 22.04 LTS. 

  1. Нажмите Заказать и следуйте дальнейшим указаниям на экране. Вскоре вы получите доступ к серверу. 

Далее выполним настройку личного VPN-сервера на базе CLOUD EXTRA.  Если, помимо сервера, вы бы хотели зарегистрировать домен, то в Spaceweb доступна такая услуга. При регистрации домена у нас вы получите:

Установка Cloud Hosted Router

  1. Обновите список пакетов:

sudo apt update

  1. Установите архиватор:

sudo apt install unzip -y

  1. Скачайте CHR:

# wget https://download.mikrotik.com/routeros/7.14.2/chr-7.14.2.img.zip
--2024-04-03 16:07:20--  https://download.mikrotik.com/routeros/7.14.2/chr-7.14.2.img.zip
Resolving download.mikrotik.com (download.mikrotik.com)... 159.148.147.251, 2a02:610:7501:3000::251
Connecting to download.mikrotik.com (download.mikrotik.com)|159.148.147.251|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 40052492 (38M) [application/zip]
Saving to: ‘chr-7.14.2.img.zip’

chr-7.14.2.img.zip                     100%[============================================================================>]  38,20M  1,74MB/s    in 20s

2024-04-03 16:07:41 (1,87 MB/s) - ‘chr-7.14.2.img.zip’ saved [40052492/40052492]

  1. Распакуйте загруженный архив:

unzip chr-7.14.2.img.zip

Вывод: 

  1. Просмотрите список устройств с помощью утилиты «fdisk»:

sudo fdisk -l

Возможный вывод:

Найдите диск с именем «/dev/vda». 

  1. Запишите образ на диск:

sudo dd if=chr-7.14.2.img of=/dev/vda bs=4M oflag=sync

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

  1. Перезапустите машину:

echo 1 > /proc/sys/kernel/sysrq
echo b > /proc/sysrq-trigger

Эти команды активируют SysRq и перезапустят систему. Убедитесь, что у вас есть соответствующие права на выполнение этих команд.

Настраиваем доступ на Cloud Hosted Router

Давайте продолжим с настройкой доступа к Cloud Hosted Router (CHR) после перезапуска через VNC:

  1. Запустите VNC-клиент и подключитесь к вашей машине, используя информацию из панели управления, например, IP-адрес и порт VNC.

  1. После успешного подключения вы увидите окно авторизации в CHR. Введите следующие учетные данные:

  • Логин: admin
  • Пароль: (оставьте поле пароля пустым)

  1. После входа в систему создайте нового администратора и удалите старого:

/user add name=MikroTik password=1Q2w3e4r group=full /user remove admin

  1. Назначьте IP-адрес интерфейсу ether1 (предполагается, что интерфейс ether1 используется для подключения к сети):

/ip address add interface=ether1 address=1.1.1.2/24

Где 1.1.1.2 – IP-адрес, который указан в панели VNC. Маска /24 означает маску подсети 255.255.255.0.

  1. Добавьте маршрут по умолчанию, указав gateway (шлюз):

/ip route add gateway=1.1.1.1

Где 1.1.1.1 – IP-адрес GATEWAY, указанный в VNC-панели.

  1. Скачайте WinBox с официального сайта MikroTik

  2. Запустите WinBox и введите IP-адрес CHR, логин (MikroTik) и пароль (1Q2w3e4r), который вы установили на шаге создания пользователя.

  3. Щелкните Connect

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

Выполняем активацию CHR

  1. Зарегистрируйтесь в кабинете MikroTik.

  2. После регистрации добавьте DNS-сервера в CHR. Для этого перейдите в меню «WebFig». 

  1. В левой панели найдите раздел «IP». 

  2. В выпадающем списке выберите DNS.

  1. Добавьте DNS-сервер. Например, пропишите «8.8.8.8» – это Google Public DNS.

  1. Нажмите ОК

  2. Теперь перейдем к активации CHR. В WebFig перейдите в раздел «System».

  3. Затем выберите «License».

  4. Щелкните Renew License.

  1. Введите данные, которые вы использовали при регистрации в MikroTik:

  • в поле «Account» введите свой логин; 

  • в поле «Password» пропишите пароль от вашего аккаунта MikroTik.

  1. Нажмите Start, чтобы проверить активацию.

  1. Если данные верны и активация прошла успешно, вы увидите статус «Done» в нижней части окна. 

Важно! Вы получите 60-дневную лицензию Cloud Hosted Router, которая будет работать всегда, если не обновлять систему.  Однако, если вы обновите систему по истечении 60 дней, лицензия слетит, и скорость ограничится 1Мбит.

Настройка Firewall

  1. В левой панели найдите опцию New Terminal и щелкните по ней, чтобы открыть окно терминала.

  2. Создайте два интерфейса: WAN и Tunnel.

/interface list
add name=WAN
add name=Tunnel
/interface list member
add interface=ether1 list=WAN

  1. Настройте правила брандмауэра:

/ip firewall filter
# Правила для входящего трафика
add action=accept chain=input comment="accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=input comment="drop invalid" connection-state=invalid
add action=accept chain=input comment="accept ICMP" protocol=icmp
add action=accept chain=input comment=PPTP dst-port=1723 protocol=tcp
add action=accept chain=input comment=SSTP dst-port=443 protocol=tcp
add action=accept chain=input comment=LetsEncrypt dst-port=80 protocol=tcp
add action=accept chain=input comment=L2TP dst-port=1701,500,4500 protocol=udp
add action=accept chain=input comment=OpenVPN dst-port=1194 protocol=udp
add action=accept chain=input comment="accept MGMT" dst-port=22121,22122 protocol=tcp
add action=drop chain=input comment="drop all WAN" in-interface-list=WAN
# Правила для проходящего трафика
add action=accept chain=forward comment="accept established,related, untracked" connection-state=established,related,untracked
add action=drop chain=forward comment="drop invalid" connection-state=invalid
add action=drop chain=forward comment="drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new in-interface-list=WAN

  1. Настройте службы:

/ip service
set telnet disabled=yes
set ftp disabled=yes
set ssh port=22121
set api disabled=yes
set winbox port=22122
set api-ssl disabled=yes

  1. Измените имя системы:

/system identity
set name=VPN
  1. Теперь удалите DHCP-клиент:

/ip dhcp-client remove 0

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

Важно! Доступ к WinBox теперь осуществляется через порт 22122.

Настройка NAT

  1. Через левую панель перейдите в «IP».

  2. В выпадающем меню выберите Firewall, а затем – NAT

  3. В разделе «General» обратите внимание на поля:

  • «Chain» – из выпадающего списка выберите srcnat.

  • «Out, Interface List» – укажите в нем выходящий интерфейс ether1

  1. В разделе «Action» в одноименном поле выберите masquerade

Так вы создадите правило исходящего NAT для интерфейса ether1. В зависимости от вашей сетевой конфигурации, вы можете изменить значение поля «Out, Interface List» на соответствующий интерфейс вашего VPN-сервера.

  1. Сохраните изменения, нажав ОК.

Включаем DNS через HTTPS

  1. Выберите в левой панели опцию New Terminal, чтобы открыть терминал. 

  2. Затем загрузите сертификат «DigiCert Global Root CA», который используется для верификации сертификата сервера DoH:

/tool fetch url=https://cacerts.digicert.com/DigiCertGlobalRootCA.crt.pem

  1. Когда сертификат успешно загрузится, импортируйте его в систему MikroTik:

  /certificate import file-name=DigiCertGlobalRootCA.crt.pem passphrase=""

  1. Теперь настройте использование сервера DoH и верификацию сертификата:

/ip dns set use-doh-server=https://1.1.1.1/dns-query verify-doh-cert=yes

Таким образом, вы укажите, что MikroTik должен использовать Cloudflare DNS (1.1.1.1) через DoH. Часть «verify-doh-cert=yes» указывает MikroTik проверять сертификат сервера DoH.

  1. Вы также можете очистить список DNS-серверов, чтобы использовать только DoH:

/ip dns set servers=""

Настройка VPN сервера PPTP и L2TP

  1. Для начала создайте пул адресов для VPN. Пропишите в терминале:

/ip pool

  1. Создайте пул адресов для личного VPN:

add name=pool_VPN ranges=172.31.250.10-172.31.250.200

  1. Далее вернитесь в основной интерфейс, чтобы создать профиль личного VPN сервера. Для этого в левой панели щелкните по «PPP».

  1. Выберите раздел Profiles.

  1. Начнем с раздела «General». Укажите пул адресов – «Local Address»  и «Remote Address».

  1. Также задайте значение «Tunnel» в поле «Interface List».

  2. В подразделе «Change TCP MSS» поставьте флажок рядом с «yes».

  3. А в «Use UPnP» чуть ниже укажите «no».

  4. Откройте раздел «Protocols», где:

  • в «Use MPLS» установите значение «no»;

  • в «Use Compression» также задайте «no»;

  • в «Use Encryption» отметьте «required». 

  1. Перейдите в раздел «Limits». Рядом с опцией «Only one» установите флажок напротив «yes». 

Включение PPTP

  1.  Зайдите в раздел PPP.

  2.  Найдите кнопку PPTP Server и щелкните по ней.

  1. В «Authentication» отметьте mschap1

  1. Включите PPTP-сервер. Для этого отметьте «Enabled» и нажмите ОК, чтобы сохранить внесенные изменения.


 

Включение L2TP

  1. В разделе «PPP» выберите L2TP Server.

  1. Вновь отметьте «Enabled». 

  2. В поле «Default Profile» укажите «profile_VPN».

  3. В «Authentication» задате значение mschap2.

  4. Далее в «Use IPsec» задайте required.

  5. Также не забудьте указать «IPsec Secret».

Использование DoH для VPN

  1. Теперь в настройках PPP-профиля вам необходимо указать в адресе DNS-сервера сам MikroTik. То есть значения полей «Local Address» и «DNS Server» должны повторять друг друга. 

  1. Как только выполните предыдущий шаг, вернитесь в настройки DNS и включите Allow Remote Requests

Подключение Android к VPN

  1. В настройках найдите раздел «VPN». 

  2. Нажмите «Добавить сеть VPN» в нижней части экрана.

  3. Заполните следующие поля:

  • «Тип» – L2TP/IPSec PSK;

  • «Сервер» – имя вашего сервера;

  • «Общий ключ IPSec».

  1. Нажмите Сохранить.

Подключение Windows к VPN

  1. Через поиск Проводника найдите панель управления «VPN».

  2. Вы сразу увидите опцию «Подключения VPN». Справа от нее выберите Добавить VPN.

  1. Заполните следующие поля таким образом:

  1. Нажмите Сохранить.

Проверка DoH

Убедитесь, что DNS-запросы действительно отправляются через DoH. 

Важно! Проверка должна производиться на устройстве в вашей локальной сети, которое использует MikroTik CHR в качестве DNS-сервера,

Для этого откройте веб-браузер и посетите сайт для проверки DoH. Например, https://1.1.1.1/help.

Настройка и подключение к SSTP

SSTP – это закрытый протокол, разработанный Microsoft. Он поддерживается операционной системой Microsoft Windows, начиная с Vista SP1, и требует установки дополнительного программного обеспечения на других ОС.

  1. В терминале выполните следующую команду:

/interface sstp-server server set enabled=yes certificate=server@MikroTik default-profile=vpn-profile

С ее помощью вы запустите сервер SSTP.

  1. Скачайте файл  «cert_export_MikroTik.crt».

  2. Откройте его двойным кликом.

  3. Перед вами появится предупреждение о том, что у компьютера нет доверия к центру сертификации. Именно поэтому вам потребуется сертификат. 

Нажмите Установить сертификат. 

  1. В разделе «Расположение хранилища» выберите опцию Локальный компьютер.

  2. Нажмите Далее. 

  3. Добавьте этот сертификат в «Доверенные корневые центры сертификации».

  4. Через поиск Проводника перейдите к параметру «VPN».

  5. Щелкните Добавить VPN. 

  1. Укажите имя или адрес сервера (как в сертификате сервера), а также введите логин и пароль.

Теперь у вас настроено и проверено SSTP VPN-подключение к серверу MikroTik с использованием сертификата.

Заключение

Настройка VPN на MikroTik CHR предоставляет эффективный и гибкий способ обеспечения безопасного соединения для вашей сети. С помощью нашей инструкции вы сможете легко создать свой VPN-cервер и настроить его для повышения уровня безопасно