Сети на основе оборудования MikroTik: Настройка MikroTik

В сегодняшнем нашем посте мы рассмотрим практические аспекты настройки VPN в маршрутизаторах Mikrotik, а также постараемся разобраться с PBR (Policy Base Routing), благодаря которому можно мы сможем определить необходимую нам стратегию выбора маршрута. Для чего это нужно и как все это будет работать? Что такое VPN — я думаю объяснять никому не нужно, как известно, виртуальная частная сеть — позволяет настроить сетевое соединение (логическую сеть) поверх другой сети, например Internet. Предположим что мы имеем обычное интернет подключение и хотели бы получить доступ к сайтам, которые доступны только в определенной стране. Например, нам нужно получить доступ к какому-нибудь ресурсу расположенному в Германии, но с российским IP мы этого не можем сделать, т.к. при входе на этот ресурс проверяется географическая принадлежность посетителя (примеры сервисов с географической привязкой приведены в конце поста). Выходом в этом случае может послужить использование прокси или VPN-сервера, расположенного в той же стране, в нашем случае, в Германии. При поднятии VPN подключения вашему ПК / маршрутизатору присвоится внешний IP VPN-сервера и все посещаемые вами ресурсы в интернете будут думать что вы находитесь именно в Германии. Однако, это не всегда удобно. Например, вы можете зайти на Яндекс — а он, естественно, скажет вам что вы находитесь в Мюнхене или Франкфурте 😉 Поэтому использование VPN нужно ограничить политиками (как раз здесь и имеются ввиду PBR), чтобы для одних ресурсов траффик шел именно через VPN, а для других — через обычное соединение. Т.к. у меня нет своего VPN-сервера в Германии, в этой статье я также опробую сервис HideMe.Ru, который предоставляет 74 сервера в 35 странах с возможностью подключения через OpenVPN, L2TP и PPTP, а также безлимитный траффик. Ознакомиться с их тарифами на VPN можно здесь, я же попробую приобрести VPN на 1 день за 39 руб., чтобы успеть опробовать все возможности сервиса. Ну что ж, поехали … Нажимаем кнопку «Купить», выбираем тарифный план и нажимаем кнопку «Выбрать». Процедура оплаты предельно простая, к выбору нам предлагаются карты VISA/MasterCard, QIWI, Яндекс.Деньги, WebMoney, PayPal, SMS оплата и другие варианты. Проблем не должно возникнуть ни у кого, ну а я лично решил воспользоваться Яндекс.Деньгами. После оплаты и возврата в магазин нам показывают вот такой код:hideme_01.jpg Который нужно ввести на главной странице в окне «Подключиться к VPN». После ввода полученного нами кода нам предлагается выбрать устройство с помощью которого мы будем подключаться:hideme_02.jpg Выбранный тип устройства влияет на настройки которые нам пришлют. В моем случае я выбрал вариант «роутер (для получения настроек PPTP / L2TP)», т.к. настройку мы будем производить именно на Mikrotik’е. Необходимые настройки мы видим сразу же, после нажатия кнопки «Далее»:hideme_03.jpg Список серверов доступен по ссылке и довольно обширен. Я выбрал для себя Germany, Frankfurt. Теперь можно переходить непосредственно к настройке маршрутизатора. Открываем WinBox или web-интерфейс Mikrotik и в Interfaces на вкладке Interface List добавляем новый PPTP Client, на вкладке General указываем имя (Name) интерфейса — hideme-vpn, на закладке Dial-Out параметры подключения:hideme_04.jpg Галочку Add Default Route не ставим, т.к. в этом случае VPN станет основным маршрутом для всего траффика, а мы хотим настроить доступ только к определенным ресурсам через VPN. Итак, VPN соединение у нас поднято и работает, осталось только настроить NAT для локальной сети и определить маршруты и политики их использования.

  1. /ip firewall nat add action=masquerade chain=srcnat out-interface=hideme-vpn — добавляем NAT, т.е. все что идет через VPN у нас NAT’ится.
  2. /ip route add dst-address=0.0.0.0/0 gateway=»hideme-vpn» routing-mark=through_vpn — добавляем еще один маршрут на 0.0.0.0/0 (т.е. все IP, все сети) через hideme-vpn, но дополнительно указываем routing-mark — through_vpn. Т.е. через VPN у нас будут отправляться только те пакеты, для которых у нас указано соответствующее правило маркировки. И теперь нам осталось только задать это правило.
  3. /ip firewall mangle add action=mark-routing chain=prerouting dst-address-list=through_vpn new-routing-mark=through_vpn passthrough=no — этим правилом мы говорим, что для всех IP адресов из списка through_vpn нам необходимо применять новое правило маршрутизации с именем указанным в new-routing-mark, т.е. through_vpn.
  4. /ip firewall address-list add address=178.63.151.224 list=through_vpn — и наконец добавляем адрес 178.63.151.224 в список IP адресов подлежащих маршрутизации через VPN, т.е. список с именем through_vpn.
E:>tracert 2ip.ru  Трассировка маршрута к 2ip.ru [178.63.151.224] с максимальным числом прыжков 30:    1    мс    мс    мс  router [172.17.111.1]   2    51 ms    51 ms    51 ms  10.112.192.1   3    52 ms    52 ms    52 ms  50.7.86.241   4    52 ms    52 ms    52 ms  be4434.rcr21.b023657-1.fra03.atlas.cogentco.com [149.6.42.161]   5    52 ms    52 ms    52 ms  be2589.ccr42.fra03.atlas.cogentco.com [154.54.56.113]   6    58 ms    58 ms    58 ms  be2229.ccr22.muc03.atlas.cogentco.com [154.54.38.58]   7    60 ms    60 ms    60 ms  be2270.rcr21.nue01.atlas.cogentco.com [154.54.37.217]   8    60 ms    60 ms    60 ms  te0-0-1-1.nr11.b040138-0.nue01.atlas.cogentco.com [154.25.0.14]   9    60 ms    60 ms    59 ms  149.6.158.6  10    60 ms    60 ms    60 ms  core11.hetzner.de [213.239.203.137]  11    62 ms    62 ms    62 ms  core22.hetzner.de [213.239.245.226]  12    62 ms    62 ms    62 ms  juniper2.rz10.hetzner.de [213.239.245.46]  13    64 ms    63 ms    66 ms  hos-tr4.ex3k1.rz10.hetzner.de [213.239.227.226]  14    62 ms    62 ms    62 ms  node2.barznet.de [188.40.35.142]  15    62 ms    62 ms    63 ms  static.224.151.63.178.clients.your-server.de [178.63.151.224]  Трассировка завершена.

Здесь 10.112.192.1 — это удаленный адрес нашего VPN-туннеля (не путать с внешним IP). Ну и теперь мы можем открыть в браузере 2ip.ru и посмотреть результат:hideme_05.jpg Как видно, мы находимся в Germany, т.е. так, как мы и хотели. Для измерения скорости скачивания и ping’а в данном случае использовать сервис измерения скорости, предлагаемый 2ip.ru несколько некорректно, т.к. мы прописали правило маршрутизации пакетов через VPN только для 178.63.151.224, фактически же, при измерении скорости используется другой сервер. Поэтому мы поступим проще. Возьмем какой-нибудь большой файл, например образ ISO Ubuntu 15.10 — ubuntu-15.10-beta2-desktop-amd64.iso располагающийся на серверах Яндекса и скачаем его вначале через обычное соединение, а затем через VPN. Поможет нам в этом утилита DownTester v1.30 от NirSoft. Через обычное соединение:

Speed (Bytes) Speed (Bits) Downloaded Start Time Download Duration Download Order
7664.9 KB/Sec 62.79 Mbps 153780.4 KB 10.10.2015 1:22:05 00:00:20 1

Через VPN:

Speed (Bytes) Speed (Bits) Downloaded Start Time Download Duration Download Order
5119.4 KB/Sec 41.94 Mbps 102388.4 KB 10.10.2015 1:25:57 00:00:20 1

Чтобы не было сомнений что файл качается через VPN, параллельно можно смотреть статистику интерфейса VPN в WinBox:hideme_07.jpg Т.е. скорость через VPN достаточно хорошая и для скачивания торрентов VPN от HideMe.Ru вполне подойдет. Здесь я бы хотел немного пояснить результаты полученные в двух таблицах выше. Как видите в графе Download Duration и там и там стоит 20 секунд. Но это не значит что файл целиком скачался за 20 секунд. В данном случае в настройках DownTester по-умолчанию стояла опция обрыва закачки через 20 секунд. Таким образом, в первом случае, когда файл с mirror.yandex.ru качался без использования VPN за 20 секунд 153 Mb, а через VPN — 102 Mb. В случае если бы мы качали с зарубежного, например, германского хостинга — результат возможно был бы чуть лучше. Однако полученные результаты в любом случае говорят о качестве предоставленного VPN. Т.е. канал на выбранном сервере оказался не перегруженным и вполне выдавал 41 Mbps download’а. Подводя краткие итоги по настройке. Для доступа через VPN только к определенным нами ресурсам в Mikrotik необходимо:

  • В IP -> Firewall -> Address List добавить IP тех ресурсов соединение с которыми мы хотим осуществлять через VPN, в нашем случае (см. пункт 4) мы назвали этот список through_vpn.
  • В Interfaces мы должны добавить само VPN-соединение, в нашем случае мы настраивали PPTP Client (hideme-vpn).
  • В IP -> Routes мы добавили еще один маршрут на 0.0.0.0/0 через VPN с Routing Mark — through_vpn.
  • В IP -> Firewall -> NAT мы добавили правило маскарадинга для VPN. Т.е. NAT для VPN-интерфейса.
  • И наконец в IP -> Firewall -> Mangle мы поместили правило для prerouting, которое при совпадении адреса назначения пакета с адресами перечисленными в списке through_vpn выполняло action — mark routing, проставляя mark routing в through_vpn.
  • Мы научились настраивать VPN в Mikrotik.
  • Немного познакомились с возможностями маршрутизатора в плане настройки правил маршрутизации, маркировки маршрутов и т.п.
  • Протестировали VPN, предоставляемый HideMe.Ru и убедились в его быстродействии.

К слову о баннере в начале статьи. Как известно у Yota, а также у некоторых других провайдеров при использовании P2P технологий скорость режется до 64 Kbit, либо же вообще пользоваться торрентами невозможно. С помощью VPN можно обойти данное ограничение, причем, как мы успели убедиться на примере используемого сервиса от HideMe.Ru скорость при этом получается вполне на уровне. Естественно что я никого не призываю покупать VPN’ы и качать торренты через мобильную сеть, но, как говорится, если очень хочется или очень нужно — то можно. Здесь только нужно учитывать один момент, использование VPN провайдеры как правило не ограничивают, однако, на всякий случай лучше внимательно ознакомиться с договором на подключение. У некоторых провайдеров (чаще у операторов мобильной связи) сказано что они имеют право ограничивать полосу пропускания в часы пиковой нагрузки, при чрезмерной загруженности канала и т.д. и т.п. (другими словами, при злоупотреблениях торрентами и 24/7 загруженности канала скорость вам могут порезать на вполне законных основаниях), так что использование VPN не является 100%-ной панацеей для торрентов.  Также, результаты проведенных мной тестов абсолютно реальны, но то что у вас сервисы от HideMe.Ru будут работать с такой же скоростью и довольно стабильно — я гарантировать естественно не могу. Все зависит от загруженности серверов, выбранной вами страны, вашего собственного интернет-канала и т.д. и т.п. Мое собственное впечатление — пользоваться можно, по-крайней мере попробовать.p.s. Примеры сервисов с географической привязкой:

  • ivi.ru — первый в России бесплатный видеосервис с лицензионным полнометражным контентом. Доступно только из России.
  • Last.fm — бесплатное прослушивание музыки с функцией рекомендаций и составления личных плейлистов. Доступно бесплатно из Англии, Германии и США.
  • Яндекс.Музыка — бесплатное и легальное прослушивание музыки. Дискографии и новейшие альбомы, рейтинги, плейлисты. Доступно только из России, Украины и Беларуси.
  • Spotify — музыкальный сервис, предлагающий легальное прослушивание музыки многих мэйджор и независимых лейблов. Доступно только из Европы и США.

3 мая, 20193.81815

Содержание статьи:

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

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

Задачу можно разделить на две составляющие. Первая – это совместная работа в сети одного провайдера. Такая постановка вопроса существенно облегчает ее решение.

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

Существует несколько технологий туннелирования, которые предполагают различные уровни защиты данных. Наиболее известными являются такие протоколы, как PPTP, L2TP, OpenVPN, SSTP, SafeVPN и некоторые другие. Проблема их использования заключается в том, что протокол РРТР на сегодняшний день является устаревшим, а использование OpenVPN, SSTP, SafeVPN и других требует соответствующего оборудования и платформ маршрутизации.

Поэтому наиболее оптимальным мы считаем применение технологии L2TP (Layer 2 Tunnel Protocol) – одного из самых популярных протоколов создания туннелей VPN. К его преимуществам можно отнести относительную простоту настройки и универсальность. С ним может работать как простое, недорогое, так и сложное оборудование. Недостатком L2TP можно считать относительную уязвимость в вопросе защиты данных в сравнении с другими протоколами, однако он исправляется применением технологии двойной инкапсуляции IPSec, которая резко повышает устойчивость туннеля к попыткам несанкционированного доступа. Обратная сторона медали такой схемы – дополнительная нагрузка на процессоры и, как следствие, падение скорости передачи данных, однако для небольших систем с невысокими требованиями это обстоятельство не будет критично. Особенно если учесть, что стоимость оборудования для использования шифрования L2TP/ IPSec доступна даже для домашнего использования.

Рассмотрим пошаговое применение указанной схемы, где в качестве сервера выступает маршрутизатор RB2011UiAS-RM, а клиента — hAP lite (RB941-2n), оба производства Mikrotik. Продукция компании широко известна во всем мире благодаря высокому качеству, оригинальному программному обеспечению и доступной цене, что как нельзя лучше отвечает условиям поставленной нами задачи.

В приведенном примере маршрутизатор RB2011UiAS-RM  Mikrotik будет выдавать IP в подсети 192.168.106.0/24, однако в реальных условиях адрес на интерфейсах, конечно же, будет отличаться.

Итак, для создания безопасного канала VPN в сетях разных провайдеров на основе протокола L2TP/IPSec с использованием в качестве провайдера маршрутизатора RB2011UiAS-RM и конечного клиента hAP lite (RB941-2n) производства Mikrotik мы должны сделать следующие шаги:

  • Настроить сервер;
  • Создать профили;
  • Создать интерфейс;
  • Настроить файервол;
  • Настроить клиента;
  • Настройки на сервере L2TP/IPSec;
  • Настроить клиента L2TP/IPSec;
  • Проверить производительность L2TP/IPSec.

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

Важно, чтобы главный сервер имел статический белый внешний IP-адрес, у нас это 192.168.106.246. Он не должен меняться, иначе придётся прибегать к лишним действиям и использовать DNS-имя.

Создание профилей

  1. В разделе PPP открываем вкладку Profiles и создаем профиль, который будет применяться к VPN-подключениям. Отмечаем опции Change TCP MSS, Use Compression, Use Encryption. По-умолчанию, будет использоваться протокол шифрования MPPE 128 bit.
  1. Переходим на вкладку Interface.
  1. Нажимаем L2TP Server, активируем его галочкой Enabled и выбираем профиль по-умолчанию, который мы создали ранее. Тип аутентификации можно оставить как есть, либо выбрать только MS-CHAP v2.
  1. Опцию IPSec пока что оставляем отключенной.
  1. Переходим в Secrets, здесь необходимо создать нового пользователя VPN. В качестве Service указываем L2TP, здесь же указываем используемый профиль.
  1. Локальный адрес устанавливаем 10.50.0.10, удаленный – 10.50.0.11. При необходимости создаём нужно количество пользователей. Локальный IP-адрес каждого пользователя будет одинаковым, удалённый IP нужно увеличить на единицу (т.е. 10.50.0.12, 10.50.0.13 и т.д.). Можно прибегнуть к использованию пула адресов, но со статикой проще писать маршруты.

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

Для каждого пользователя нужно создать свой интерфейс.

Для этого нужно открыть раздел интерфейсов и нажать знак «плюс», в выпадающем меню выбрать L2TP Server Binding, указать отображаемое название и имя пользователя. При подключении пользователя здесь будет отображаться текущая информация о нем.

Настройки файервола

Для работы VPN необходимо открыть UDP-порт 1701 (chain input, protocol 17(udp), dst-port 1701, accept). После этого следует поднять приоритет правила, переместив его выше.

Далее в NAT’е добавить  маскарадинг для VPN (chain srcnat, out interface all ppp, action masquerade), таким образом мы сделаем компьютеры за роутером видимыми друг для друга.

Добавление маршрутов

Прописываем маршрут в удалённую подсеть, в которой находится удаленный клиент. Конечная подсеть 192.168.2.0/24, в качестве шлюза выступает IP клиента внутри виртуальной сети, в нашем случае это 10.50.0.11, target scope выставляем единицу, Pref. Source – локальный IP сервера внутри виртуальной сети, 10.50.0.10.

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

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

Для настройки удаленного клиента нужно войти в раздел интерфейсов и добавить новый L2TP Client, указать IP-адрес сервера и свои учётные данные.По-умолчанию выбрать профиль с шифрованием и деактивировать дефолтный маршрут, сняв с него галочку.

Нажимаем «Применить», если мы нигде не сделали ошибку, соединение должно быть установлено.

При попытке пинговать 192.168.1.1… положительного ответа не будет. Для его получения нужно добавить новый статический маршрут – удаленную подсеть 192.168.1.0/24 в качестве шлюза IP-сервера в виртуальной сети, Pref. Source – наш IP-адрес в виртуальной сети. Таким образом, при настройке клиента все адреса проставляются наоборот.

Повторное пингование 192.168.1.1 дает положительный результат.

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

 Ping пошел, значит, всё работает.

Таким образом, создан туннель, однако в нем не была применена двойная инкапсуляция IPSec для обеспечения безопасности. Пропускная способностью созданного канала составила около 50 Мбит/сек.

На этом базовая настройка соединения L2TP завершена.

Чтобы добавить новых пользователей, необходимо прописать соответствующие маршруты на устройствах, которые должны видеть друг друга за роутером. При пробросе маршрута между Client1 и Client2 на самом сервере ничего делать не нужно. Достаточно прописать маршруты на клиентах, в качестве шлюза будет выступать IP оппонента в виртуальной сети.

Настройка L2TP/ IPSec

Иногда на практике нужно обеспечить должный уровень безопасности. При использовании L2TP целесообразно прибегать к использованию IPSec. В качестве примера используется сеть, настроенная по вышеизложенной инструкции. Обратите внимание! IPSec создаётся внутри туннеля L2TP между виртуальными адресами 10.50.0.X. Такая реализация позволяет не зависеть от IP клиента. Если же вы хотите создать IPSec-туннель между WAN сервера и WAN клиента, необходимо, чтобы у клиента был белый внешний IP. Если IP будет динамичным, вам потребуется также использовать разные скрипты для изменения политик IPSec. К тому же, в случае IPSec между внешними IP, необходимость в L2TP вовсе отпадает.

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

  1. Зайти в NAT и отключить маскарадинг для PPPдля шифрования пакетов данных.
  2. Перезагрузить маршрутизатор.
  3. Зайти в раздел IP – IPSec, открыть вкладку Proposals. Указать тип шифрования и аутентификации. В качестве алгоритма аутентификации выбрать sha1, для шифрования оптимальным будет использовать алгоритм AES 128-бит. При необходимости можно также указать 3DES (Triple DES), он является алгоритмом по-умолчанию для L2TP/IPSec в Windows 7, в то время, как для мобильных ОС целесообразным может быть применение AES 256-бит.
  4. Во вкладке Peers добавить новый пир с адресом 0.0.0.0/0, что разрешит маршрутизатору принимать все подключения. По-умолчанию используется 500-й порт. Выбрать метод аутентификации pre shared key, указав желаемый пароль. Exchange Mode следует указать main l2tp. Отметить опции Send Initial Contact и NAT Traversal. Значение Generate policy выбрать port strict. Остальные опции указаны на рисунке.
  1. Создать политику, открыв вкладку Policies. Политику, установленную по-умолчанию, отключить. Создать новую политику, где указать наши две локальные сети. Src. Adress (source) – наша локальная подсеть 192.168.1.0/24, Dst. Adress (destination) – удаленная подсеть 192.168.2.0/24. В закладке Action необходимо указать применяемое действие: action – encrypt, level – require. В качестве протокола выбрать ESP и поставить галочку Tunnel. SA Src. Adress – наш локальный адрес в виртуальной сети (10.50.0.10), SA Dst. Adress – адрес удаленного клиента в виртуальной сети.
  1.  Зайти в Firewall и добавить правила для используемых портов. Порт UDP 1701 используется для начальной инициализации и конфигурации. UDP 500 используется в L2TP/IPSec для инициализации обмена ключами. Протокол 50 – IPSec ESP, который используется для шифрования данных. Иногда необходимо также открывать порт UDP 4500 для обхода NAT.

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

В первую очередь, следует добавить правила файервола и отключить маскарадинг для созданного ранее VPN-канала.

В разделе IP – IPSec необходимо настроить Proposal аналогично тому, как это сделано на сервере. В качестве пира будет выступать 10.50.0.10, т.е. адрес сервера в виртуальной сети. Все остальные настройки должны соответствовать тем, которые были при настройке сервера.

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

Если нигде не была допущена ошибка, во вкладке Remote Peers отобразится список пиров и используемые порты. Теперь необходимо открыть вкладку Installed SAs и обратить особое внимание на значение Current Bytes – если оно равно нулю, значит, пакеты не шифруются.

В файерволе можно посмотреть движение трафика. При тестировании заметно, что применение двойной инкапсуляции  L2TP/IPSec  снизило скорость в туннеле с 50 Мбит/с до 15-17Мбит/с. В принципе, можно попытаться добиться некоторого увеличения пропускной способности, увеличив количество потоков, однако эта мера вряд ли даст заметный ее прирост. Неизбежное падение скорости при использовании  IPSec – это и есть плата за безопасность, о которой было сказано в начале статьи.

Для создания надежного и производительного VPN-канала можно рассмотреть вариант использования маршрутизатора, собранного на базе персонального компьютера с использованием программного обеспечения Mikrotik – RouterOS. Наличие аппаратного блока шифрования существенно увеличивает производительность туннеля.

Настройка VPN через MikroTik — PPtP и PPPoE

Подробности
Категория: VPN тоннели

https://lantorg.com/article/nastrojka-vpn-cherez-mikrotik-pptp-i-pppoe

VPN-nastroyka.jpg

VPN-туннели — распространенный вид связи типа «точка-точка» на основе стандартного интернет-соединения через роутеры MikroTik. Они представляют собой, по сути «канал внутри канала» — выделенную линию внутри основной.

Необходимость настройки туннельного VPN-соединения на MikroTik возникает в случаях, когда:

  • Требуется предоставить доступ к корпоративной сетисотрудникам предприятия, которые работают из дома, или находясь в командировке, в том числе с мобильных устройств.
  • Требуется предоставить доступ в интернет абонентам провайдера (в последнее время такая реализация доступа клиентов становится все более популярной).
  • Необходимо соединить два удаленных подразделения предприятия защищенным каналом связи с минимальными затратами.

В отличие от обычной сети, где данные передаются открыто и в незашифрованном виде, VPN является защищенным каналом связи. Уровень защиты зависит от типа туннельного протокола, выбранного для соединения. Так, наименее защищенным считается протокол PPtP, даже его «верхний» алгоритм аутентификации mschap2 имеет ряд проблем безопасности и легко взламывается. Наиболее безопасным считается набор протоколов IPsec.

VPN-i-shifrovanie.jpg

Несмотря на укоряющую картинку, иногда смысл в отключении шифрования и аутентификации все же есть. Многие модели MikroTik не поддерживают аппаратное шифрование, и обработка всех процессов, связанных с защитой соединения происходит на уровне CPU. Если безопасность соединения не является для вас критичным моментом, а производительность используемого роутера оставляет желать лучшего, то отключение шифрования можно использовать для разгрузки процессора.

Выбор протокола для VPN на MikroTik

Для настройки соединения по VPN через MikroTik чаще всего используются следующие протоколы:

  • PPtP,

  • PPPoE,

  • OpenVPN,

  • L2TP,

  • IPSec.

В сегодняшней статье мы рассмотрим настройку подключения VPN с помощью двух из них, как наиболее часто встречающихся в работе провайдера и системного администратора: PPtP и PPPoE. Продолжение темы — в следующих статьях.

VPN через PPtP на MikroTik

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

Прост в настройке. Для организации туннеля требуется:

  • создать на роутере MikroTik, через который пользователи будут подключаться к корпоративной сети, PPtP-сервер,

  • создать профили пользователей с логинами/паролями для идентификации на стороне сервера,

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

Включаем PPtP сервер.

Для этого идем в раздел меню PPP, заходим на вкладку Interface, вверху в перечне вкладок находим PPTP сервер и ставим галочку в пункте Enabled.

Снимаем галочки с наименее безопасных алгоритмов идентификации — pap и chap.

Создаем пользователей.

В разделе PPP переходим в меню Secrets и с помощью кнопки «+» добавляем нового пользователя.

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

В поле Service выбираем тип нашего протокола — pptp, в поле Local Address пишем IP-адрес роутера MikroTik, который будет выступать в роли VPN-сервера, а в поле Remote Address — IP-адрес пользователя

Прописываем правила для Firewall.

Нам нужно открыть 1723 порт для трафика по TCP-протоколу для работы VPN-туннеля MikroTik, а также разрешить протокол GRE. Для этого идем в раздел IP, потом — в Firewall, потом на вкладку Filter Rules, где с помощью кнопки «+» добавляем новое правило. В поле Chain указываем входящий трафик — input, в поле Protocol выбираем протокол tcp, а в поле Dst. Port — указываем порт для VPN туннеля 1723.

VPN-Firewall-rules.jpg

Переходим здесь же на вкладку Action и выбираем accept — разрешать (трафик).

VPN_Firewall_action.jpg

Точно также добавляем правило для GRE. На вкладке General аналогично предыдущему прописываем input, а в поле Protocol выбираем gre.

VPN_Firewall_GRE_2.jpg

На вкладке Action как и в предыдущем правиле выбираем accept.

Не забываем поднять эти правила в общем списке наверх, поставив ПЕРЕД запрещающими правилами, иначе они не будут работать. В RouterOS Mikrotik это можно сделать перетаскиванием правил в окне FireWall.

Все, PPtP сервер для VPN на MikroTik поднят.

Небольшое уточнение.

В некоторых случаях, когда при подключении необходимо видеть локальную сеть за маршрутизатором, нужно включить proxy-arp в настройках локальной сети. Для этого идем в раздел интерфейсов (Interface), находим интерфейс, соответствующий локальной сети и на вкладке General в поле ARP выбираем proxy-arp.

pptp-proxy-arp.jpg

Если вы подняли VPN между двумя роутерами MikroTik и вам необходимо разрешить передачу broadcast, можно попробовать добавить существующий профиль подключения (PPP — Profiles) удаленного роутера в бридж главного:

ppp.jpg

UPD из комментария: Если вам дополнительно нужно получить доступ к расшаренным папкам на компьютерах локальной сети, понадобится также открыть порт 445 для проходящего трафика SMB-протокола, который отвечает за Windows Shared. (Правило forward в брандмауере).

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

На стороне VPN-клиента настройки состоят только в том, чтобы создать подключение по VPN, указать IP-адрес VPN (PPtP) сервера, логин и пароль пользователя.

VPN через PPPoE на MikroTik

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

  • Доступностью и простотой настройки.

  • Поддержкой большинством маршрутизаторов MikroTik.

  • Стабильностью.

  • Масштабируемостью.

  • Устойчивостью зашифрованного трафика к ARP-спуфингу (сетевой атаке, использующей уязвимости протокола ARP).

  • Меньшей ресурсоемкостью и нагрузкой на сервер, чем PPtP.

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

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

Настраиваем профили сервера.

Несколько профилей PPPoE-сервера могут понадобиться, если вы провайдер и раздаете интернет по нескольким тарифным пакетам. Соответственно, в каждом профиле можно настроить разные ограничения по скорости.

Идем в раздел PPP, открываем пункт Profiles и с помощью кнопки «+» создаем новый профиль. Даем ему понятное нам название, прописываем локальный адрес сервера (роутера), отмечаем опцию Change TCP MSS (корректировку MSS), для того, чтобы все сайты нормально открывались.

mikrotik-VPN-pppoe-profile.png

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

«ip firewall mangle add chain=forward protocol=tcp tcp-flags=syn tcp-mss=1453-65535 action=change-mss new-mss=1360 disabled=no». В большинстве случаев это решает проблему.

Далее на вкладке Protocols все отключаем, для улучшения производительности. Если защищенность соединения для вас важна и производительность маршрутизатора позволяет, то опцию Use Encryption (использовать шифрование) не отключайте.

mikrotik-ppp-protocols.png

На вкладке Limits устанавливаем ограничения по скорости, если нужно. Первая цифра в ограничении скорости — входящий трафик на сервер (исходящий от абонента), вторая — наш исходящий трафик (входящий у абонента).

Ставим Yes в пункте Only One, это значит, что два и более абонентов с одним и тем же набором логин/пароль не смогут подключиться к PPPoE-серверу, только один.

mikrotik-VPN-PPPoE-limits.png

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

Создаем учетные записи пользователей.

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

Заполняем поля Name и Password (логин и пароль, который будет вводить пользователь со своей стороны, чтобы подключиться).

В поле Service выбираем pppoe, в Profile — соответствующий профиль, в данном случае — тарифный пакет, которым пользуется абонент. Присваиваем пользователю IP-адрес, который при подключении сервер раздаст абоненту.

mikrotik-VPN-PPPoE-secret.png

Если подключаем несколько пользователей, создаем для каждого из них отдельную учетную запись, меняя имя/пароль и IP-адрес.

Привязываем PPPoE сервер к определенному интерфейсу MikroTik.

Теперь нам необходимо сообщить маршрутизатору, на каком интерфейсе он должен «слушать» входящие подключения от VPN PPPoE клиентов. Для этого в разделе PPP мы выбираем пункт PPPoE Servers. Здесь мы меняем:

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

  • Keepalive Timeout — 30 секунд (время ожидания ответа от клиента до разрыва соединения)
  • Default Profile — профиль, который будет присваиваться подключаемым абонентам по умолчанию,
  • Ставим галку в One Session Per Host, тем самым разрешая подключение только одного туннеля с маршрутизатора клиента или компьютера.
  • Галочки в разделе аутентификации оставляем/снимаем по усмотрению.

Настраиваем NAT для доступа клиентов в интернет.

Мы подняли PPPoE сервер и теперь к нему могут подключаться авторизованные пользователи. Если нам нужно, чтобы подсоединившиеся по VPN туннелю пользователи имели доступ в интернет, нужно настроить NAT (маскарадинг), или преобразование локальных сетевых адресов.

В разделе IP выбираем пункт Firewall и с помощью кнопки «+» добавляем новое правило.

В поле Chain должно стоять srcnat, что означает, что маршрутизатор будет применять это правило к трафику, направленному «изнутри наружу».

В поле Src. Address (исходный адрес) прописываем диапазон адресов 10.1.0.0/16. Это означает, что все клиенты с адресами 10.1. (0.0-255.255) будут выходить в сеть через NAT, т. е. мы перечисляем здесь всех возможных абонентов.

В поле Dst. Address (адрес назначения) указываем !10.0.0.0/8 — диапазон адресов, означающий собственное адресное пространство для частных сетей, с восклицательным знаком впереди. Это указывает роутеру на исключение — если кто-то из локальной сети обращается на адрес в нашей же сети, то NAT не применяется, соединение происходит напрямую.

mikrotik-nat.png

А на вкладке Action прописываем, собственно, действие маскарадинга — подмены локального адреса устройства на внешний адрес роутера.

mikrotik-masquerade.png

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

Если на той стороне VPN туннеля подключение будет происходить с компьютера или ноутбука, то просто нужно будет создать высокоскоростное подключение через PPPoE в Центре управления сетями и общим доступом (для Win 7, Win 8). Если на второй стороне — тоже роутер Mikrotik, то подключаем следующим образом.

Добавляем PPPoE интерфейс.

На вкладке Interface выбираем PPPoE Client и с помощью кнопки «+» добавляем новый интерфейс.

Здесь в поле Interface мы выбираем тот интерфейс роутера Mikrotik, на котором мы организуем VPN-туннель.

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

Далее переходим на вкладку Dial Out и вписываем логин и пароль для подключения к VPN туннелю PPPoE.

Ставим галочку в поле Use Peer DNS — для того, чтобы адрес DNS сервера мы получали с сервера VPN (от провайдера), а не прописывали вручную.

Настройки аутентификации (галочки в pap, chap, mschap1, mschap2) должны быть согласованы с сервером.

pppoe-klient-2.jpg

Используемые источники:

  • https://www.decker.su/2015/10/vpn-mikrotik-pbr-setup.html
  • https://setevuha.ua/posts/wifi-routery/posagovaa-instrukcia-po-obedineniu-setej-s-pomosu-l2tp-i-l2tpipsec-na-mikrotik/
  • http://www.alllan.ru/index.php/stati/instruktsii-po-nastrojke/mikrotik/vpn-tonneli/72-nastrojka-vpn-cherez-mikrotik-pptp-i-pppoe

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации