====== VPN ====== Выбор протокола для VPN на MikroTik Для настройки соединения по VPN через MikroTik чаще всего используются следующие протоколы: PPtP, PPPoE, OpenVPN, L2TP, IPSec. ====== SSTP ====== VPN через ssh на 443 порту. Secure Socket Tunneling Protocol – PPP туннель аутентифицирует через TLS канал. Использует TCP порт 443 и фактически проходит через все фаерволы и прокси сервера. рабочая инструкция https://mikrotiklab.ru/nastrojka/artga-sstp.html для перенастройки готового vpn соединения необходимо изменить тип соединения в безопасности на sstp и указать dns адрес, если сертификат сделан на адрес. ===== VPN через PPtP на MikroTik ===== Cамый распространенный протокол 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=== Правило 1 Нам нужно открыть 1723 порт для трафика по TCP-протоколу для работы VPN-туннеля MikroTik, а также разрешить протокол GRE. Для этого идем в раздел **IP**, потом - в **Firewall**, потом на вкладку **Filter Rules**, где с помощью кнопки **"+"** добавляем новое правило. В поле **Chain** указываем входящий трафик - //input//, в поле **Protocol** выбираем протокол //tcp//, а в поле **Dst. Port** - указываем порт для VPN туннеля //1723//. Переходим здесь же на вкладку **Action** и выбираем //accept// - разрешать (трафик). Правило 2 Точно также добавляем правило для GRE. На вкладке **General** аналогично предыдущему прописываем //input//, а в поле **Protocol** выбираем gre. :!: Не забываем поднять эти правила в общем списке наверх, поставив ПЕРЕД запрещающими правилами, иначе они не будут работать. В RouterOS Mikrotik это можно сделать перетаскиванием правил в окне FireWall. === Небольшое уточнение. === В некоторых случаях, когда при подключении необходимо видеть локальную сеть за маршрутизатором, нужно включить proxy-arp в настройках локальной сети. Для этого идем в раздел интерфейсов (Interface), находим интерфейс, соответствующий локальной сети и на вкладке General в поле ARP выбираем proxy-arp. === Ошибки подключения PPTP === * Error 619 - Возможно не дает работать антивирус или фаервол. * Error 628 - В настройках подключения отключить обязательное шифрование. * Error 691 - Проверить логин - пароль, раскладку ввода. === Проблемы с VPN === - компьютер не видит сетку на другом конце - возможно стоит включить arp-proxy ===== VPN через PPPoE на MikroTik ===== Протокол предполагает возможность сжатия данных, шифрования, а также характеризуется: * Доступностью и простотой настройки. * Поддержкой большинством маршрутизаторов MikroTik. * Стабильностью. * Масштабируемостью. * Устойчивостью зашифрованного трафика к ARP-спуфингу (сетевой атаке, использующей уязвимости протокола ARP). * Меньшей ресурсоемкостью и нагрузкой на сервер, чем PPtP. * Также его преимуществом является возможность использования динамических IP-адресов: не нужно назначать определенный IP конечным узлам VPN-туннеля. * Подключение со стороны клиента осуществляется без сложных настроек, только по логину и паролю. ==== Настройка VPN-сервера PPPoE MikroTik ==== === Настраиваем профили сервера === Несколько профилей PPPoE-сервера могут понадобиться, если вы провайдер и раздаете интернет по нескольким тарифным пакетам. Соответственно, в каждом профиле можно настроить разные ограничения по скорости. Идем в раздел **PPP**, открываем пункт **Profiles** и с помощью кнопки "**+**" создаем новый профиль. Даем ему понятное нам название, прописываем локальный адрес сервера (роутера), отмечаем опцию **Change TCP MSS** (корректировку MSS), для того, чтобы все сайты нормально открывались. Кстати, в некоторых случаях, когда возникают проблемы с открытием некоторых сайтов, при том, что пинги на них проходят, можно сделать по-другому. Корректировку 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** (использовать шифрование) не отключайте. На вкладке **Limits** устанавливаем ограничения по скорости, если нужно. Первая цифра в ограничении скорости - входящий трафик на сервер (исходящий от абонента), вторая - наш исходящий трафик (входящий у абонента). Ставим ''Yes'' в пункте **Only One**, это значит, что два и более абонентов с одним и тем же набором логин/пароль не смогут подключиться к PPPoE-серверу, только один. Теперь, если необходимо, создаем остальные профили простым копированием (кнопка Copy на предыдущем скриншоте) и меняем имя и ограничение по скорости. === Создаем учетные записи пользователей. === В том же разделе **PPP** находим пункт меню **Secrets**. В нем с помощью кнопки **"+"** создаем нового пользователя, который будет подключаться к нам по VPN-туннелю. Заполняем поля **Name** и **Password** (логин и пароль, который будет вводить пользователь со своей стороны, чтобы подключиться). В поле **Service** выбираем //pppoe//, в **Profile** - соответствующий профиль, в данном случае - тарифный пакет, которым пользуется абонент. Присваиваем пользователю 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 не применяется, соединение происходит напрямую. А на вкладке **Action** прописываем, собственно, действие маскарадинга - подмены локального адреса устройства на внешний адрес роутера. Настройка 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) должны быть согласованы с сервером. ====l2tp ==== - Включаем L2TP сервер (PPP -> в главном окне кнопка l2TP) - enabled - default profile - выбираем нужный, либо предвариательно создаем профиль - Use ipsec - yes - вводим пароль - объединение сетей и маршрутизация - https://lanmarket.ua/stats/poshagovaya-instrukciya-po-obedineniyu-setey-s-pomoshchyu-L2TP-i--L2TP-IPSec-na-Mikrotik/