Обход блокировки на mikrotik

Актуальные инструкции от @nzkhammatov для современных версий RouterOS








Настройка производилась на hAP ac2 с прошивкой 7.8

  1. Скачиваем архив с файлом конфигурации и ключами отдельными файлами по ссылке на главной странице https://antizapret.prostovpn.org/antizapret-tcp.zip
  2. Распаковываем. Файл конфигурации antizapret-tcp.ovpn и ca.crt нам не понадобится
  3. Закидываем antizapret-client-shared.crt и antizapret-client-shared.key в папку flash вашего устройства MikroTik
Сводка

  1. Добавляем сертификат и ключ в хранилище.
    Для этого открываем меню System => Certificates. Во вкладке Certificates кнопка Import. В поле File name выбираем сертификат flash/antizapret-client-shared.crt и нажимаем Import. Сертификат появится в списке с флагом T (Trusted). Аналогично добавляем ключ flash/antizapret-client-shared.key. У сертификата появится ещё один флаг K (private key).
Сводка

  1. Создадим профиль для подключения.
    Для этого открываем меню PPP вкладка Profiles, нажимаем плюс. Называем профиль как удобно, например profile_antizapret. Настройки оставим по-умолчанию и переходим во вкладку Scripts. В поле On Up и в On Down: копируем строку:
    /ip dns cache flush
    Это нужно для того, чтобы при отключении или включении VPN-подключения у вас очищался DNS-кеш.
Сводка


4. Сброс DNS

  1. Создаём подключение OpenVPN.
    Для этого во вкладке Interface нажимаем плюс и выбираем OVPN Client.
    Во вкладке General:
    Name: Называем как удобно, например ovpn-antizapret
    Во вкладке Dial Out:
    Connect To: vpn.antizapret.prostovpn.org
    Port: оставляем 1194
    Mode: оставляем ip
    Protocol: tcp
    User: пишем любой, например user
    Password: оставляем неактивным
    Profile: выбираем ранее созданный profile_antizapret
    Certificate: выбираем ранее добавленный antizapret-client-shared.crt_0
    TLS Version: можно оставить any
    Auth: оставляем sha1
    Cipher: меняем на blowfish (bf-cbc)
    Use Peer DNS: выставляем на exclusively, чтобы при подключении OVPN-клиента основным DNS стал полученный от Антизапрета
    Галочки на Add Default Route и Don’t Add Peshed Routes не ставим.
    Нажимаем Apply, сразу должно произойти подключение. Внизу Status поменяется на connected.
Сводка

4. Настраиваем соединение 1
4. Настраиваем соединение 2

  1. NAT настраиваем в зависимости от настроек домашнего интернета. У меня роутер получает настройки по DHCP от провайдера с реальным IP. Я у себя настроил вторым правилом IP => Firewall => NAT:
    Вкладка General:
    Chain: srcnat
    Src.Address: 192.168.100.0/24 (Это пул адресов моей локальной сети, вы указываете свой)
    Out. Interface: ovpn-antizapret
    Вкладка Action:
    Action: masquerade

Не так давно в браузерах начали по-умолчанию включать так называемый “Безопасный DNS”. При этой включенной функции в браузере все DNS запросы будут идти в зашифрованном виде мимо вашего роутера, а значит заблокированные сайты останутся заблокированными. В таком случае нужно отключать “Безопасный DNS” в браузере, которым пользуетесь. Это касается и мобильных устройств.
Проще всего найти эту галку можно введя слово “DNS” в строке поиска в параметрах вашего браузера.

1 Like

Спасибо, добавил на сайт.

Подскажите, на какой версии RouterOS проделывали эти операции. И отдельно прописывали какие-то еще маршруты?

Antizapret ovpn-client самостоятельно маршруты добавит и будет удалять, если кусок команды из этой заметки будете использовать будет еще круче.

/ip dns cache flush

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

Под MIKROTIK HAP AC² данный способ пойдёт? В отзывах пишут что у данной модели ограниченный функционал openvpn (не поддерживает сжатие и определённые типы аутентификации).

Настраивалось как раз на hap ac2

volq, большое спасибо за приведенную инструкцию.
Попробовал настроить MIKROTIK HAP AC² RouterOS 6.47.3.
Интерфейс opvn-antizapret запустился, но блокировки не снялись.
Провайдер МГТС. В чем может быть проблема?

Пробуйте добавить Маскарад для интерфейса: opvn-antizapret

Вот так: /ip firewall nat add chain=srcnat action=masquerade out-interface=opvn-antizapret

И еще позаботьтесь о DNS, чтобы обход работал - все ваши устройства в сети должны использовать DNS-ресолвер от Антизапрета.

Лично я перенаправляю весь DNS трафик на свой роутер, и таким образом любое устройство подключенное к роутеру получает обход блокировок.

Делаю так,
Очищаю список Servers в разделе IP - DNS
В результате там должно остаться только Dynamic Servers
Выглядит адрес примерно вот так 192.168.104.1
Включаю пункт Allow Remote Requets

И добавляю правила такие:
/ip firewall nat add chain=dstnat action=redirect protocol=tcp dst-port=53,5353,1253
/ip firewall nat add chain=dstnat action=redirect protocol=udp dst-port=53,5353,1253

На случай непредвиденных проблем, отключения сервера Антизапрета и чего либо еще я оставляю несколько DNS ресолверов в настройках IP - DHCP Server - Networks - Выбираем свой DHCP сервер - DNS Servers, чтобы быстро можно было отключить два правила Файрвола, которые выше, и интернет продолжил работать как раньше, но уже без обхода блокировок, и обратно так же быстро вернуть настройки. Выключил - Включил.

Большое спасибо! Ваш совет сработал!

В прошивке версии 6.44.5 нет выпадающего списка Use Peer DNS. Как быть?

А что там, галочка? Тогда её ставь.

Здравствуйте. У меня настроены 2 бриджа с разными портами в каждом. И после того как я всё добавил, антизапрет заработал на первом бридже, хотя должен на втором. Как это исправить?

Какие dns адреса используют клиенты первого и второго бриджа?

Уже разобрался, спасибо)

1 Like

Интересная проблема возникла. Когда активен обход на микротике, не могу получить доступ к домену, который обслуживается на cloudflare. Выдаёт ошибку dns_probe_finished_nxdomain. Как только вводишь другие dns серверы (например гугловский или от cloudflare), то работает. Но, естественно, тогда не работает обход блокировок. Как это исправить?

Возникла проблема. Все настроено, как написано и все работало около недели. Потом перестали работать только заблокированные ресурсы.
Подключение к VPN - есть.
DNS Антизапрета получен.
Никаких других ДНС в системе нет.
При отключении от VPN - интернет не работает совсем с ошибкой по ДНС, при подключении все сайты работают, кроме заблокированных

Спасибо, разобрался. Была проблема с файрволом на маршрутизаторе

Приветствую, после добавления этого правила у клиента l2tp (android) в обще все перестает открываться.

Проверьте какой DNS-сервер получил микротик: IP - DNS, Dynamic Servers
Проверьте IP - Firewall - Filter Rules, не закрыт ли порт 53

Укажите в вашем правиле scr-address=“пул ip вашей локальной сети”
Либо в in-interface=“интерфейс вашей локальной сети”

Я редиректы не использую. При отключении и включении ВПН прекрасно справляется скрипт на очищение ДНС. Я уже и забыл, что у меня антизапрет настроен, пока вы не написали)

Добрый день! Почему-то срубилось на п.4 - ключ К не появляется.

Теперь аналогично добавим ключ flash/antizapret.key. Заметьте, что у сертификата добавился флаг K.

Прошивка 6.48.2 stable
Можете подсказать пожалуйста где проблема?
Интерфейс ovpn не работает, соответственно. В логах - ovpn-antizapret: connecting… terminating… - TLS failed