Настройка vpn на роутере keenetic omni

Устанавливаем и настраиваем личный сервер с ВПН на роутере Кинетик. Подключаемся к собственному роутеру с сервером в любой точке мира.

Настраиваем свой VPN-сервер на Keenetic

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

Вход в настройки и включение DDNS

Подключить к локальной сети Keenetic можно двумя способами:

  • Кабелем через локальный порт;
  • По Wi-Fi.

Для использования интерфейса в браузере нужно ввести IP-адрес роутера (192.168.1.1) или адрес сайта — my.keenetic.net. Остается авторизоваться в системе, используя логин и пароль (если не были изменены, то их можно найти на коробке с устройством).

Смысл сервера – в доступе к нему извне. Подключение производится через внешний адрес маршрутизатора. Однако есть нюансы. Провайдеры выдают два адреса:

  • Белый динамический;
  • Серый статический.

Обязательно, чтобы провайдер выдал внешний фиксированный (белый) адрес. Если нет – на новых прошивках KeenDNS есть возможность подключиться к статистическому IP. Создается облачный DDNS, работающую напрямую или через облако. При взаимодействии с последними сборками прошивки:

  • Перейдите в параметр «Доменное имя» и вводим любое название, нажимаем «Зарегистрировать».
  • Если имя не занято – роутер уведомит об этом и выдаст 3 поддомена (можно выбрать любой).
  • Для серого IP перейдите в «Общие настройки» и активируйте «Keenetic Cloud».
  • На экране появится диалоговое окно – дождитесь, пока оборудование загрузит SSL-сертификаты. Затем выберите «Режим работы»: через облако – для серого IP, прямой доступ – для белого адреса.

Если на роутере старая прошивка, то с серым IP ничего не сделать. Можно только подключиться к другому провайдеру или купить новую модель Keenetic. Для пользователей с белым IP – нужно аналогично настроить DDNS:

  • Зайдите в параметр «Интернет», затем в «DDNS».
  • Изучите список серверов. В стандартном варианте доступны: Dyn, No-Ip и DNS-Master.
  • Зайдите на сайт этих серверов, зарегистрируйте и сформируете DDNS.
  • Зайдите обратно в настройки и введите параметры DDNS.

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

Из-за особенностей протокола обозначения «клиент» и «сервер» становятся условными. Возможность организовать WireGuard-туннель появилась в версии ПО KeeneticOS 3.3 — функция работает только на новых устройствах. Подключение работает в формате «Site-To-Site VPN». Если у одного из интернет-центров есть белый IP — лучше настроить его как сервер. WireGuard можно использовать только для связи двух сетей (обычно роутеров) в одну локальную.

Другой важный нюанс – настройка производится на обоих устройствах сразу. К примеру, параметры сервера обозначены с компьютера, а клиента – со смартфона (лучшие VPN для телефона смотрите отдельно). При этом можно организовать туннель между роутерами в разных точках мира. Например, если подключается связь к серверу VPN-сервиса.Для настройки зайдите в компоненты и добавьте WireGuard. Затем:

  • В названии укажите имя английскими буквами. Для примера: на одном устройстве (сервере) – Sev, на другом (клиенте) – CL. Оба должны быть открыты.
  • Кликните на «Генерацию пары ключей».
  • В строке с адресом впишите IP-туннель с bitmask (допускается указание любого спектра из частного диапазона). Если проще, частные адреса – это те, что действуют внутри локальной сети и не доступны в интернете. Для примера возьмем 172.16.82.1/24, номер порта – 16632 (через него и будет оформляться подключение устройств, роутер сам его откроет). Нажмите на «Добавить».
  • В роутере CL добавьте подключение с названием Sev и кликните на «Генерация пары ключей», затем сразу на «Сохранить публичный ключ в буфер обмена».
  • Вернитесь в параметре сервера, где появится страница с настройкой пиров. Введите туда данные (при этом нельзя закрывать настройки клиента): имя пира (как в клиенте), публичный ключ – из буфера обмена; разрешенные подсети (спектр локальных адресов клиента – в данном случае 172.16.82.2), настройка маски — /32. При этом нужно не забыть указать о спектре локальных клиентских сетей (192.168.100.0/24). В периодичности проверке аёктивности подключения выберите 15 секунд.

Теперь остается настроить межсетевой экран. Откройте параметр подключение и сформулируйте правило для доступа извне. Далее:

  • Разрешайте все настройки.
  • Пропишите статический адрес для туннеля в разделе с маршрутизацией: тип маршрута – до сети, адрес – пул маршрутизатора CL, маска подсети — 255.255.255.0, в интерфейсе выберите подключение Sev.
  • Вернитесь в созданное подключение и сохраните ключ – он понадобится для клиента.
  • Перейдите в настройки CL и в параметре адреса укажите туннель 172.16.82.2 и маску /24.
  • Добавьте пир с именем как на сервере, вставьте ключ из буфера обмена, укажите внешний адрес или тот, что создан с DDNS, затем после знака «:» введите порт сервера. В разрешенных подсетях вбейте туннель 172.16.82.1/32 и укажите спектр локальных устройств. Проверка активности – аналогично на 15 секунд.
  • В межсетевом экране добавьте те же настройки, что и на сервере.
  • Создайте статистический маршрут как на сервере, но в адреса введите изначальный пул Sev, а в интерфейсе CL.

Если конфигурация проделана правильно, то в разделе «WireGuard» на роутерах в графе «Пир» будет зеленый кружек и указано название второго устройства.

Читайте также:

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

Вначале нужно установить компоненты OpenVPN (приведено в инструкции по настройки сервера PPTP/SSTP). Режим работы протокола определяется его файлом конфигурации. Рассмотрим самый простой вариант соединения двух роутеров с использованием общего секретного ключа.

  • Создайте секретный ключ (нужно скачать и установить OpenVPN с сайта). В примере используется сборка 2.4.6-I602 для Win.
  • Перезагрузите ПК. В директории, в которую установлен OpenVPN, найдите файл командной строки bin – откройте его от имени администратора и введите команду: Openvpn.exe —genkey —secret static.key.
  • Откройте файл с ключом в Блокноте и скопируйте из него текст, вставив его в места настройки файлов конфигурации обоих устройств.
  • Перейдите к параметрам первого роутера. Нажмите «Другие подключения» и добавьте соединение с протоколом «OpenVPN».
  • В графе с именем введите название подключения, а в строке конфигурации вставьте содержимое файла конфигурации и сохраните настройки.
  • Аналогично проделайте настройку второго роутера, но используйте конфигурацию клиента.

Также на стороне устройства-сервера в веб-интерфейсе нужно выполнить команду:

  • Interface OpenVPN0 no ip global
  • Interface OpenVPN0 security-level private

Для разрешения трафика между двумя роутерами с приватной безопасностью используется команда no isolate-private. Если сервер будет использован для доступа к Интернету, то понадобится использовать Ip nat 10.1.0.2 255.255.255.255. Проделанные настройки сохраняются командой system configuration save.

Остается открыть порт для соединения по протоколу: сформулируйте правило в Межсетевом экране для параметра «Провайдер» или для того, которое используется для выхода в интернет.

В правиле фильтрации, в графе «Действие» нужно выдать разрешение, а в строке «Протокол», значении «UDP» и «Номер порта назначение» выбрать 1194. На этом простейший вариант настройки соединения по OpenVPN. Для проверки сети можно провести диагностику через системный журнал.

Настройка PPTP/SSTP-сервера

Для работы сервера потребуются дополнение «PPTP VPN-сервер». Зайдите на страницу «Общие настройки» в графе «Обновление и компоненты», затем кликните на «Изменить набор компонентов». В окне «Приложения» найдите строку «VPN-сервер PPTP» и кликните по ссылке. Настройте сервер:

  • Графа «Множественный вход» позволяет организовать несколько одновременных подключения при использовании одинаковых данных. Это влияет на безопасность и усложняет мониторинг, но упрощает использование.
  • Пункт «Только с шифрованием» — оставьте галочку, иначе трафик не будет защищен;
  • «NAT для клиентов» — настройка доступа сервера в Интернет.
  • «Доступ к сети» — выбрать «Домашнюю сеть», если к ней подразумевается подключение.
  • «Начальный IP-адрес» — стандартный пул адресов для клиентов (не должны пересекаться с сервером, потому лучше изменить параметр);
  • Спектр адресов — до 10;
  • «Пользователи» — допускается создание разных учетных записей.

Подключить к серверу в качестве клиента можно через другой роутер, смартфон на базе Android (список лучших VPN для Андроид) или компьютер на базе Windows (смотрите все лучшие VPN для ПК с Windows).

Для настройки SSTP-сервера используется аналогичное дополнение — «SSTP VPN-сервер». В этом случае кроме активной службы KeenDNS, нужно выбрать имя в домене keenetic: .link, .pro или .name и выдать доступ извне при помощи протокола HTTPS:

  • Зайти в «Пользователи и доступ».
  • Открыть «Удаленный доступ» и разрешить настройку по протоколам «HTTP и HTTP» или «Только HTTPS».

В остальном настройка SSTP-сервера производится по аналогии с PPTP-сервером. Для подключения роутера к VPN-сервису:

  • Перейдите на страницу «Другие подключения».
  • Откройте раздел «VPN-подключения» и выберите «Добавить подключение».
  • В «Параметры VPN» найдите графу «Тип» и выберите значение «PPTP».
  • В «Имя подключения» впишите название соединения, а в качестве имени укажите доменное имя или IP-адрес сервера.
  • В разделе «Имя пользователя» и «Пароль» введите информацию об открытом профиле.

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

Настройка L2TP/IPsec-сервера и клиентский сервис

Установите компонент «VPN-сервер L2TP/IPsec» по инструкции выше. При регистрации сервера в параметре «Общий ключ IPsec» введите ключ безопасности. Настройте параметры соединения по аналогии с PPTP/SSTP-сервером. Подключение клиентов также производится по стандартному алгоритму: единственное, в «Параметры VPN» в поле «Тип» нужно выбрать «L2TP/IPsec».

Проверка работоспособности VPN на Keenetic

Для проверки VPN зайдите в настройки маршрутизатора, откройте параметр «Пользователя» — там есть вся информация о подключениях, клиентах и обмене трафика. В случае с OpenVPN выполните пинг обоих концов туннеля. Для сервера используйте команду:

  • ping 10.1.0.1
  • ping 10.1.0.2

Для клиента:

  • ping 192.168.1.1
  • ping 192.168.2.1

Если вы подключили Keenetic в качестве клиента к серверу VPN, то проверить работоспособность соединения вы можете на сайте ExpressVPN или NordVPN — система автоматически укажет, если защита трафика отсутствует. Также встроенные технологии укажут на утечку DNS.

Как настроить OpenVPN на роутере Keenetic

Пошаговая инструкция по подключению к VPN BlancVPN на роутерах Keenetic

Обновлено больше недели назад

Вам потребуется файл конфигурации .ovpn, логин и пароль. Вы получите их в боте BlancVPN после выбора локации или в личном кабинете BlancVPN.

Настройка состоит из трех этапов – установка клиента OpenVPN, получение и редактирование файла конфигурации и загрузка его в настройки роутера Keenetic.

Для настройки OpenVPN обязательно нужно установить компонент системы «Клиент и сервер OpenVPN«.

  1. Откройте веб-интерфейс вашего роутера. По умолчанию для этого в браузере нужно перейти по адресу 192.168.1.1 или my.keenetic.net. Введите логин и пароль от веб-интерфейса роутера (они могут быть написаны на наклейке на нижней части устройства).

  2. Перейдите в раздел «Общие настройки», нажмите кнопку «Изменить набор компонентов».

  3. Найдите компонент «Клиент и сервер OpenVPN» и установите его. В процессе установки интернет-соединение может временно пропасть.

Настройка файла конфигурации

  1. Скачайте из личного кабинета или бота BlancVPN файл конфигурации .ovpn для любой нужной вам локации.

  2. Откройте файл конфигурации любым текстовым редактором. Например, Блокнотом, Text или Notepad++ (кликните на файле правой кнопкой мыши и выберите «Открыть с помощью»).

  3. Найдите в тексте строку auth-user-pass и удалите её.

  4. Вместо неё впишите блок с логином и паролем, который предоставляется вам вместе файлом конфигурации:

<auth-user-pass>
blancvpn
4815162342
</auth-user-pass>

Первая строчка – в нашем примере это blancvpn – это логин. Вторая строчка – в нашем примере это 4815162342 – это пароль.

Файл сохранять не обязательно. Но пока не закрывайте.

Настройка VPN на роутере Keenetic

  1. Откройте веб-интерфейс вашего роутера. По умолчанию для этого в браузере нужно перейти по адресу 192.168.1.1 или my.keenetic.net. Введите логин и пароль от веб-интерфейса роутера (они могут быть написаны на наклейке на нижней части устройства).

  2. Перейдите в раздел «Другие подключения», в подразделе «VPN-подключения» нажмите кнопку «Добавить подключение».

  3. В открывшемся окне «Параметры VPN-подключения» в поле «Тип (протокол)» выберите «OpenVPN».

  4. Откройте изменённый файл конфигурации подключения, в который вы вписали ваш логин и пароль, выберите весь текст (например, нажав Ctrl+A) и копируйте его (например, нажав Ctrl+C).

  5. Вернитесь в настройки «Параметры VPN-подключения», перейдите в поле ввода «Конфигурация OpenVPN» и вставьте туда скопированный текст (например, нажав Ctrl+V).

  6. По желанию вы можете изменить имя подключения, чтобы было понятнее. Например, указав регион.

  7. По желанию вы также можете настроить расписание работы или определение интерфейса. Для этого нажмите «Показать дополнительные настройки».

  8. Если больше ничего менять не нужно, сохраните подключение, нажав соответствующую кнопку.

  9. Установите этому соединению самый высокий приоритет – тогда весь трафик будет защищён VPN-соединением. Перейдите в раздел «Приоритеты подключений», переместите VPN-подключение так, чтобы оно было над подключением провайдера, и сохраните изменения.

  10. В этом же разделе нажмите кнопку «+ Добавить политику».

    Дайте ей любое название и нажмите ОК

    Включите в эту политику подключений только ваше VPN подключение и сохраните.

  11. Затем в этом же разделе перейдите к подразделу «Применение политик». Перенесите в вашу недавно созданную политику доступа ваши устройства (Домашняя сеть).

    В вашей политике доступа должна содержаться как минимум «Домашняя сеть», если вы не настраивали этот пункт отдельно.

  12. Теперь вы можете включать и выключать VPN-подключение на роутере, просто переводя переключатель в разделе «Другие подключения» → «VPN-подключения» в соответствующее положение.

После подключения проверьте, изменился ли ваш IP-адрес. Для этого откройте наш сайт blancvpn.com и посмотрите на панель наверху страницы: там будет указан ваш новый IP-адрес и локация.

Если возникли сложности или что-то пошло не так – напишите нам в Telegram-бот https://t.me/FCK_RKN_bot, поможем!

  • Совет: можно настроить раздельное туннелирование трафика через политику приоритетов подключений, если требуется направлять через VPN только трафик определённых устройств. Например, игровые приставки и смартфоны – через VPN, а остальные (компьютер или NAS, качающий торренты) — через основной провайдерский Интернет. Кроме того, это открывает возможности балансировки нагрузки при использовании 3G/4G-модемов с лимитированным трафиком. Инструкция по настройке раздельного туннелирования указана в разделе «Приоритеты подключений» на сайте Keenetic.

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

  • Совет: если после настройки VPN на роутере у вас не загружаются некоторые заблокированные сайта, поменяйте DNS подключений на 8.8.8.8. Для этого перейдите в раздел Другие подключения, Показать дополнительные настройки и нажмите на нужное VPN подключение, отредактируйте поле «DNS 1» и сохраните.

Типовые ошибки и пути решения:

  • Сильно снижается скорость при использовании VPN на роутере
    Протокол OpenVPN очень требователен к ресурсам. MIPS-процессор роутера при активном подключении к VPN «нагружается» постоянным шифрованием и дешифрованием трафика. Кроме того, в силу своей специфики OpenVPN – значительно более «тяжёлый» протокол, чем WireGuard, поэтому даже на флагманских моделях роутеров (включая Keenetic Giga и Ultra) он может ощутимо снижать скорость интернета.

    Если замедление критично, рекомендуем подключить протокол WireGuard – его также можно настроить на роутерах Keenetic (инструкция).

  • Ошибка auth-user-pass without inline credentials data is not supported
    Эта ошибка возникает, если в файле конфигурации осталась строка для ввода логина или пароля. В журнале Keenetic она отображается следующим образом:

    OpenVPN0 auth-user-pass without inline credentials data is not supported
    OpenVPN0 Exiting due to fatal error

    Для решения удалите или закомментируйте все строки вида:
    auth-user-pass


Другие статьи по теме

Как настроить OpenVPN на Android

Как настроить OpenVPN на Windows

Как настроить OpenVPN на роутере ASUS

Как настроить OpenVPN на iOS (iPhone, iPad)

Как настроить WireGuard на роутере Keenetic

Нашли ответ на свой вопрос?

Время на прочтение
23 мин

Количество просмотров 121K

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

Версия бота: 2.0 от 15.02.2023

Итак, зачем нужен этот обход блокировок:

  1. Для захода на необходимые сайты, которые блокируются в любой конкретной стране.

  2. Для «обмана» сайтов из других стран, которые не хотят работать для граждан конкретной страны.

С помощью действий, описанных в этой статье, Вы сможете подключить все устройства домашней сети (телефоны, смарт-тв, компьютеры и ноутбуки и другие «домашние» устройства) к данному обходу блокировок, а также подключаться к Вашему роутеру не из дома и пользоваться его обходом блокировок для доступа к любимым сайтам и приложениям. Кроме того, из обеих этих сетей (домашней и через подключение к роутеру), из любого браузера можно будет пользоваться onion-сайтами.

В данной статье будет описана работа телеграм-бота, написанного на python. С его помощью будет возможна установка данного обхода с небольшими предварительными настройками, а также работа со списками блокировок.

Для каждого конкретного обхода блокировок, мы будем устанавливать свой список сайтов и ip адресов для обхода. Изменять любой из этих списков будет достаточно легко (через телеграм бот, либо вручную, но тоже несложно), потому не пугайтесь. Частью функционала Вы можете и не пользоваться — Ваше право. Весь код будет в открытом доступе, информация о Ваших данных будет храниться на локальном роутере.

Статья разбита на 2 части. Первая для тех, кому «побыстрее чтоб работало», и для тех, кто хочет покопаться в настройках и понять как это всё работает. Так что не пугайтесь размеров статьи

Необходимо

  • Любой Keenetic с поддержкой USB;

  • Актуальная версия KeeneticOs (на данный момент 3.8.3);

  • Flash-накопитель размером от 1Гб;

  • Не побояться прочитать инструкцию;

  • Около 30 минут времени, попивая кофе. Основная часть работы это будет время ожидания установки.

Подготовка Flash-накопителя, роутера и установка Entware

  1. Используем инструкцию на сайте Keenetic. Для корректной работы телеграм-бота нам необходим будет файл подкачки. Возможно на «старших» моделях роутера это будет и необязательно, тогда можно воспользоваться предыдущей инструкцией (без файла подкачки), но на моём Keenetic Extra 1711 файл подкачки необходим. На флешке необходимо создать два раздела, один Linux Swap, второй — Ext4. Можно вместо Ext4 использовать NTFS, но для этого необходимо будет установить соответствующий компонент. Для работы с разделами в данной статье используется  MiniTool Partition Wizard. Если что на всем известных сайтах можно найти взломанную версию, хотя, может, и бесплатная сработает.

  1. Для установки Entware воспользуемся инструкцией на официальном сайте Keenetic.

  • Скачиваем mipsel.

  • Вставляем отформатированную флешку в роутер.

  • Заходим в раздел Управление – Приложения и выбираем нашу флешку.

    В настройках роутера предварительно должно быть включено приложение «Сервер SMB» для доступа к подключаемым USB-дискам по сети.

  • Создаём папку install:

  • Ставим курсор на новую папку и импортируем туда файл mipsel с компьютера с помощью третьей иконки:

  • В настройках роутера заходим в раздел Управление – OPKG, выбираем нашу флешку и удаляем сценарий, если он есть и нажимаем кнопку Сохранить:

  • Примерно спустя минуту заходим обратно в Управление – Приложения и выбираем нашу флешку. Видим, что у нас установился entware по наличию некоторого количества папок. Можно также в Диагностике посмотреть ход установки:

  1. Установим необходимые компоненты роутера. В настройках роутера заходим в Общие настройки -> Изменить набор компоненты:

  • Поиском ищем следующие компоненты «Прокси-сервер DNS-over-TLS», «Прокси-сервер DNS-over-HTTPS», «Протокол IPv6», «SSTP VPN-сервер», «Подготовка открытых пакетов OPKG» и «Сервер SSH» затем, после обновления и перезагрузки роутера ещё следующие компоненты: «Модули ядра подсистемы Netfilter», «Пакет расширения Xtables-addons для Netfilter» и ещё раз перезагружаем роутер.

  • Заходим в «Сетевые правила» —> «Интернет-фильтр» и добавляем серверы DNS-over-TLS и DNS-over-HTTPS. У TLS адрес сервера 8.8.8.8:853, доменное имя TLS dns.google. У HTTPS сервер dns https://dns.google/dns-query. Должно получиться как на картинке:

  • UPD 02.01.2022: я рекомендую добавить все dns-over-http и *-tls, указанные в этой статье

  • Скачиваем Putty (на данный момент актуально putty-64bit-0.76-installer.msi) и запускаем её. Простенькие настроечки (если что их можно сохранить кнопкой Save):

При возможных предупреждениях соглашаемся (кнопка Accept).

  • Вводим логин «root» (без кавычек), нажимаем Enter, пароль «keenetic» (также без кавычек) (при вводе пароля курсор не двигается – это нормально), также Enter. Должно отобразиться:

P.S. здесь и далее — для копирование команды в командную строку необходимо скопировать текст на этом сайте и вставить в командную строку с помощью правой кнопкой мыши

  • Вводим команду:

passwd

и дважды вводим пароль. Курсор при вводе пароля также не двигается.

  • Обновим opkg:

opkg update

Установка необходимых компонентов

  1. Начинаем установку необходимых компонентов.

  • Вводим команду для установки необходимых компонентов Entware.

    Сначала устанавливаем необходимые пакеты opkg, затем скачиваем pip для python’a (почему-то он не устанавливается корректно через opkg) и устанавливаем с помощью скрипта. Некоторое время у Вас это займёт, дождитесь. В конце установим три пакета расширения python.

opkg install mc tor tor-geoip bind-dig cron dnsmasq-full ipset iptables wget wget-ssl obfs4 shadowsocks-libev-ss-redir shadowsocks-libev-config python3 python3-pip v2ray trojan
wget https://bootstrap.pypa.io/get-pip.py --no-check-certificate
python get-pip.py
pip install pyTelegramBotAPI
pip install telethon
  1. Устанавливаем и настраиваем бота. Он будет скачан с сайта гитхаба, это сделано для простоты обновления. Если что, там всегда будет крайняя версия скрипта. Внутри установочника некоторые файлы будут также скачиваться с сайта (по той же причине), но об этом позже.

wget https://raw.githubusercontent.com/tas-unn/bypass_keenetic/master/bot.py --no-check-certificate -O /opt/etc/bot.py
mcedit /opt/etc/bot_config.py 
  1. В редакторе нашего бота нам необходимо:

  • Установить api ключ, который даст вам бот BotFather (в поиске телеграма его можно найти), спросить его команду /newbot, выбрать свободное имя и скопировать необходимый ключ в поле token

  • Копируем Username (логин) телеграма. Он будет использоваться для администрирования. Можно добавить несколько администраторов:

  • И последние две обязательные настроечки берутся с сайта https://my.telegram.org/apps:

  • Обратите внимание, все свои настройки Вы вбиваете и сохраняете на своём роутере. В конце концов код можете посмотреть сами, если умеете это делать.

  • Все данные записываем в файл в нужные места:

  • Это были необходимые минимальные настройки. Дело в том, что бот за Вас будет запрашивать мосты для ТОРа. Вам в телеграм будут лишь приходить уведомления (отключите звук и другие оповещения, чтоб они Вас не раздражали).

  • Ключи для Shadowsocks, Vmess и Trojan необходимо устанавливать будет вручную

  • Чуть ниже этих строк есть настройки, которые можно оставить по умолчанию, но на всякий случай просмотрите их.

  1. Запускаем бота:

python /opt/etc/bot.py
  • Заходим в свой телеграм-бот, если необходимо нажимаем /start и выбираем сначала Установку и удаление, а затем Установку \ переустановку:

  • В программе Putty можете наблюдать внутренние команды, а в телеграм-боте ход установки, а также полученные ключи от двух ботов. ВНИМАНИЕ: при включенной двухфакторной авторизации телеграма, Вам необходимо будет ввести данные в Putty. Не пугайтесь, всё работает исключительно на Вашем роутере.

  • После фразы, что установка завершена нам необходимо чуть-чуть донастроить роутер.

    5. Отключение штатного DNS-сервера и перезагрузка маршрутизатора.

  • Запускаем командную строку в Windows (открываем пуск и начинаем писать «Командная строка» или «cmd»).

  • Пишем (ip роутера поменяете если другой).

    telnet 192.168.1.1
  • Логин с паролем вводим от роутера, а не entware (скорее всего admin, а пароль лично Ваш).

  • Вписываем поочерёдно 3 команды:

opkg dns-override
system configuration save
system reboot
  • Роутер перезагрузится и Вы сможете пользоваться ботом работы.

  • Внимание: если захотите переустановить флешку с нуля, то Вам необходимо в Putty ввести следующие команды и после перезагрузки роутера приступать к созданию флешки:

no opkg dns-override
system configuration save
system reboot

Описание работы телеграм-бота

  1. При старте бот имеет 3 кнопки «Установка и удаление», «Ключи и мосты «и «Списки обхода».

  2. Первой кнопкой мы частично пользовались при установке.

  3. Кнопка «Ключи и мосты» переустанавливает\устанавливает ключи Shadowsocks, Vmess, Trojan, а также мосты Tor. Для мостов Tor существует получение в автоматическом режиме с помощью телеграм.

  4. В пункте меню «Списки обхода» создаются кнопки, соответствующие названием файла и папки /opt/etc/unblock/. При изначальной установке там находятся 4 файла shadowsocks.txt, trojan.txt, vmess.txt и tor.txt, поэтому у нас будет 4 кнопки

  1. При нажатии на любую из них будет возможность показать конкретный список разблокировок, добавить сайт или ip адрес в список, либо его удалить оттуда.

  1. При добавлении существует возможность ЛИБО добавить обход блокировок соцсетей (скачивается вот отсюда и может редактироваться в случае необходимости), ЛИБО написать доменное имя сайта, либо IP-адрес боту:

  1. Для удаления просто вписываете необходимый адрес и отправляете его боту.

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

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

  • Для этого нужно воспользоваться вот этой инструкцией на сайте Keenetic.

  • А потом можно подключаться через Android, Windows, MacOS, IOs (только платный).

Установка обхода завершена! Можете пользоваться на здоровье!

  • Донаты приветствуются) куда переводить — можно найти в первых строчках бота в комментариях) но всё, естественно, по желанию.

  • Пишите в комментариях чего Вы хотите в следующих версиях.

О чём будет следующая часть статьи:

  1. Рассказ о внутренних особенностях установленной системы. Если кто-то хочет покопаться, либо дать совет в настройке — милости просим.

  2. Данный обход блокировок сейчас настроен на 2 сервиса — один Hi!Load VPN с помощью технологии Shadowsocks, второй — Тор, но Вы можете сами настроить необходимые Вам сервисы вручную, подключив их к своему телеграм-боту и он также сможет работать!

  3. Те люди, которые не хотят тратить на это время, могут этого не делать. Остальные — welcome :)

  4. Для тех, кто до сих пор пользуется программой teamviewer, есть способ чтобы он продолжил работать.

Детальная настройка и всё что с этим связано

  1. Для установки VPN сервисов, которые поддерживаются роутером Keenetic (OpenVPN, Wireguard, IpSec, PPTP, L2TP воспользуйтесь инструкциями на официальном сайте Keenetic. Shadowsocks и Tor уже были настроены с помощью установочника телеграм-бота, здесь будет лишь отписание.

  1. Через Putty заходим по SSH (см самое начало статьи).

  2. Инициализируем ipset, создание множества IP-адресов unblock (100-ipset.sh).

  • Проверьте, что в системе вашего маршрутизатора есть поддержка множества hash:net:

ipset create test hash:net
  • Если команда никаких ошибок и сообщений не выдала, значит поддержка есть, и просто следуйте инструкции дальше. В противном случае (есть ошибка) в следующем скрипте вам нужно заменить hash:net на hash:ip. При этом вы потеряете возможность разблокировки по диапазону и CIDR.

    Скорее всего ошибок не будет у Вас.

  • Создайте пустое множество адресов с именем unblock при загрузке маршрутизатора. Для этого создайте файл /opt/etc/ndm/fs.d/100-ipset.sh:

mcedit /opt/etc/ndm/fs.d/100-ipset.sh
  • Вставляем содержимое с помощью сочетания клавиш Shift+Insert. Далее в этой инструкции мы также будем использовать это сочетания клавиш.

  • Внимание: в данном файле мы создаём ровно столько множеств для обхода блокировок, сколько нам надо. В инструкции показано 3 обхода (shadowsocks, tor и какой-то VPN, подключенный исходя из инструкций на официальном сайте), но их может быть бесконечное множество. Если Вам нужно добавить ещё один обход VPN, то Вам нужно добавить ещё одну строку в следующем файле (по аналогии с 3-5 строками). Также можно удалить 1-2 строки, если будете использовать меньшее количество обходов.

    #!/bin/sh
    [ "$1" != "start" ] && exit 0
    ipset create unblocksh hash:net -exist
    ipset create unblocktor hash:net -exist
    ipset create unblocktroj hash:net -exist
    ipset create unblockvmess hash:net -exist
    #ipset create unblockvpn hash:net -exist #если нужно раскомментируем
    exit 0
  • Ссылка на скачивание (там будет храниться всегда актуальная информация).

  • После этого нажимаем сохранить (клавиша F2), соглашаемся (Enter) и выход (клавиша F10). Эти сочетания также будут использоваться далее.

  • Дайте права на исполнение:

chmod +x /opt/etc/ndm/fs.d/100-ipset.sh
  1. Настройка Shadowsocks на примере Highload-VPN. Не является рекламой. Пока там всё бесплатно, они обещают бесплатный доступ с небольшими ограничениями, а есть также платный доступ, доступ к российскому vpn (если например Вы из-за границы и хотите воспользоваться госуслугами или подобными сервисами). Вы можете использовать любой другой сервис, либо настроить самостоятельно Shadowsocks на своём сервере, например по этой инструкции. За основу этого пункта взята эта инструкция.

  • Используем телеграм-бота для получения ключа

  • Через некоторое время Вам в телеграм придёт ключ вида:

ss:/password@serverip:port/?outline=1

Есть 2 способа создать файл настроек. Первый через python, вставив полученный ключ в переменную k. Второй «ручками»:

  • В данном ключе есть 3 позиции, которые нам интересны: первая часть до значка собачки (красная), вторая — после собачки до двоеточия (синяя), третья цифры после двоеточия (зелёная).

  • Первая часть это пароль, который закодирован в кодировке base64, поэтому нам нужно её раскодировать. Можем использовать этот сайт. В верхнее поле вставляем первую («красную») часть нашей ссылки и нажимаем кнопку Decode. Появится декодированная строка. Нас будет интересовать пароль, который находится после двоеточия.

  • Возвращаемся в Putty и выполняем команду:

mcedit /opt/etc/shadowsocks.json
  • Редактируем наш файл. Изменяем строку server (в моём случае 5.5.5.5) на ip адрес (или доменное имя) из ключа, который мы получили на сайте (см вторую картинку наверх). Это «синяя» часть нашего ключа. «Зелёную» часть нашего ключа копируем в server_port (в моём случае 666). В поле password мы копируем пароль из декодированной строки. local_port изменяем на любой свободный порт. Можно оставить этот:

{
    "server":["5.5.5.5"],
    "mode":"tcp_and_udp",
    "server_port":666,
    "password":"mypass",
    "timeout":86400,
    "method":"chacha20-ietf-poly1305",
    "local_address": "::",
    "local_port": 1082,
    "fast_open": false,
    "ipv6_first": true
}

Сохраняем и выходим (напомню F2,F10).

  • Редактируем исполняемый файл Shadowsocks:

mcedit /opt/etc/init.d/S22shadowsocks
  • Меняем ss-local на ss-redir:

Сохраняем и выходим.

  1. Настройка Tor. Эта часть инструкции взята вот отсюда, включая саму статью и комментарии.

  • Удаляем содержимое конфигурационного файла:

cat /dev/null > /opt/etc/tor/torrc
  • Ищем мосты для Тора. Их можно найти вот тут или вот тут.

  • Открываем файл конфигурации Тор. Актуальный (только без актуальных мостов) можно всегда скачать отсюда.

mcedit /opt/etc/tor/torrc
  • Вставьте (Shift+Insert) содержимое (сразу не закрывайте, дочитайте ещё один пункт):

User root
PidFile /opt/var/run/tor.pid
ExcludeExitNodes {RU},{UA},{AM},{KG},{BY}
StrictNodes 1
TransPort 0.0.0.0:9141
ExitRelay 0
ExitPolicy reject *:*
ExitPolicy reject6 *:*
GeoIPFile /opt/share/tor/geoip
GeoIPv6File /opt/share/tor/geoip6
DataDirectory /opt/tmp/tor
VirtualAddrNetwork 10.254.0.0/16
DNSPort 127.0.0.1:9053
AutomapHostsOnResolve 1
UseBridges 1
ClientTransportPlugin obfs4 exec /opt/sbin/obfs4proxy managed
  • В конец этого файла вставляем мосты, полученные через сайт или через телеграм-бот. Перед каждым мостом (строкой) нужно написать слово «Bridge» и поставить пробел. Например:

Bridge obfs4 15.18.22.16:123 C06700D83A2D cert=q34/VfQ+hrUTBto/WhJnwB+BO9jFwBZhNfA iat-mode=0
Bridge obfs4 19.9.1.9:56789 CAF61C9210E5B7638ED00092CD cert=qMUhCi4u/80ecbInGRKAUvGU0cmsiaruHbhaA iat-mode=0
  • Сохраняем и выходим.

  1. Установочником бота создана папка /opt/etc/unblock. Там располагаются файлы со списками для наших различных обходов. Если Вы устанавливаете вручную, то нужна следующая команда для создания папки:

mkdir /opt/etc/unblock
  • Создаём сами списки. Их должно быть ровно столько, сколько обходов мы собираемся создавать. Именно их названия будут использоваться в телеграм-боте для создания списков разблокировок. Напомню, в нашем случае их 3 (вводим последовательно):

mcedit /opt/etc/unblock/shadowsocks.txt
mcedit /opt/etc/unblock/tor.txt
mcedit /opt/etc/unblock/trojan.txt
mcedit /opt/etc/unblock/vmess.txt
mcedit /opt/etc/unblock/vpn1.txt
  • В разные файлы мы можем вносить разные домены и ip-адреса. Предлагаю два из них заполнить только одним сайтом, который будет отображать ip адрес, а один из них наполнить основным списком адресов. В моём случае первый файл будет основным, а тор и vpn будет «запасными». В основной вводим свои сайты примерно в таком виде:

rutracker.org
kinozal.tv
2ip.ru
chess.com

#facebooktwitterinstagram
facebook.com
twitter.com
instagram.com
cdninstagram.com
cdnfacebook.com
facebook.net
ads-twitter.com
static.ads-twitter.com

###Пример разблокировки по IP (убрать # в начале строки)
#195.82.146.214
###Пример разблокировки по CIDR (убрать # в начале строки)
#103.21.244.0/22
###Пример разблокировки по диапазону (убрать # в начале строки)
#100.100.100.200-100.100.100.210
  • В таком виде фейсубокотвиттероинстаграммы должны открываться через браузер, как и другие сайты из этого списка. Если что мой актуальный список будет тут.

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

  • В другие два для проверки добавим по одному сайту: myip.ru и whatismyipaddress.com, а для тора ещё сайт check.torproject.org. В конце концов, изменить списки вы сможете всегда по Вашему желанию либо через Putty, либо через телеграм-бот.

  • Кстати для обхода teamviewer в любой из списков обхода добавить следующие адреса (актуальные взял вот отсюда, предварительно добавив в список обхода основной сайт teamviewer.com, чтоб данный список можно было посмотреть ):

teamviewer.com
217.146.28.192/27
37.252.239.128/27
213.227.180.128/27
188.172.221.96/27
131.100.3.192/27
162.250.7.160/27
188.172.251.192/27
162.220.222.192/27
188.172.214.128/27
162.250.2.192/27
162.220.223.160/27
94.16.21.192/27
185.228.150.128/27
188.172.245.32/27
188.172.192.160/27
213.227.162.64/27
217.146.23.96/27
37.252.227.128/27
185.116.99.128/27
37.252.230.160/27
178.255.155.224/27
213.227.181.64/27
188.172.222.0/27
188.172.223.160/27
217.146.13.96/27
94.16.102.128/27
213.227.178.128/27
94.16.26.64/27
213.227.185.192/27
188.172.235.192/27
37.252.245.96/27
213.227.167.160/27
188.172.201.160/27
217.146.11.128/27
37.252.229.192/27
188.172.203.64/27
37.252.244.192/27
37.252.243.160/27

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

  1. Скрипт для заполнения множества unblock IP-адресами заданного списка доменов (unblock_ipset.sh) и дополнительного конфигурационного файла dnsmasq из заданного списка доменов (unblock_dnsmasq.sh).

  • Создадим скрипт /opt/bin/unblock_ipset.sh:

mcedit /opt/bin/unblock_ipset.sh
  • Обратите внимание, здесь код разделён на 4 части, т.к. у нас 4 обхода блокировок. Если что добавляем ещё подобные строки, заменяя названия ipset’ов и файлов со списком адресов:

#!/bin/sh

until ADDRS=$(dig +short google.com @localhost -p 40500) && [ -n "$ADDRS" ] > /dev/null 2>&1; do sleep 5; done

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  cidr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}')

  if [ ! -z "$cidr" ]; then
    ipset -exist add unblocksh $cidr
    continue
  fi

  range=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}-[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$range" ]; then
    ipset -exist add unblocksh $range
    continue
  fi

  addr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$addr" ]; then
    ipset -exist add unblocksh $addr
    continue
  fi

  dig +short $line @localhost -p 40500 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | awk '{system("ipset -exist add unblocksh "$1)}'

done < /opt/etc/unblock/shadowsocks.txt

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  cidr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}')

  if [ ! -z "$cidr" ]; then
    ipset -exist add unblocktor $cidr
    continue
  fi

  range=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}-[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$range" ]; then
    ipset -exist add unblocktor $range
    continue
  fi

  addr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$addr" ]; then
    ipset -exist add unblocktor $addr
    continue
  fi

  dig +short $line @localhost -p 40500 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | awk '{system("ipset -exist add unblocktor "$1)}'



done < /opt/etc/unblock/tor.txt

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  cidr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}')

  if [ ! -z "$cidr" ]; then
    ipset -exist add unblockvmess $cidr
    continue
  fi

  range=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}-[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$range" ]; then
    ipset -exist add unblockvmess $range
    continue
  fi

  addr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$addr" ]; then
    ipset -exist add unblockvmess $addr
    continue
  fi

  dig +short $line @localhost -p 40500 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | awk '{system("ipset -exist add unblockvmess "$1)}'



done < /opt/etc/unblock/vmess.txt

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  cidr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}')

  if [ ! -z "$cidr" ]; then
    ipset -exist add unblocktroj $cidr
    continue
  fi

  range=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}-[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$range" ]; then
    ipset -exist add unblocktroj $range
    continue
  fi

  addr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$addr" ]; then
    ipset -exist add unblocktroj $addr
    continue
  fi

  dig +short $line @localhost -p 40500 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | awk '{system("ipset -exist add unblocktroj "$1)}'



done < /opt/etc/unblock/trojan.txt
#script0
  • В конце файла я оставил место под скрипты для доп. обходов (нашего vpn1), их нужно вставлять например вместо строки #script0, #script1 итд в зависимости от количества обходов. Актуальную часть скрипта можно отсюда, а на данный момент:

# unblockvpn - множество
# vpn1.txt - название файла со списком обхода

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  cidr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/[0-9]{1,2}')

  if [ ! -z "$cidr" ]; then
    ipset -exist add unblockvpn $cidr
    continue
  fi
  
  range=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}-[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$range" ]; then
    ipset -exist add unblockvpn $range
    continue
  fi
  
  addr=$(echo $line | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')

  if [ ! -z "$addr" ]; then
    ipset -exist add unblockvpn $addr
    continue
  fi

  dig +short $line @localhost -p 40500 | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | awk '{system("ipset -exist add unblockvpn "$1)}'


done < /opt/etc/unblock/vpn1.txt
  • Даём права на использование:

chmod +x /opt/bin/unblock_ipset.sh
  • Создадим скрипт /opt/bin/unblock_dnsmasq.sh:

mcedit /opt/bin/unblock_dnsmasq.sh
#!/bin/sh
cat /dev/null > /opt/etc/unblock.dnsmasq
while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  echo $line | grep -Eq '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' && continue

  echo "ipset=/$line/unblocktor" >> /opt/etc/unblock.dnsmasq
  echo "server=/$line/127.0.0.1#40500" >> /opt/etc/unblock.dnsmasq
done < /opt/etc/unblock/tor.txt

while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  echo $line | grep -Eq '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' && continue

  echo "ipset=/$line/unblocksh" >> /opt/etc/unblock.dnsmasq
  echo "server=/$line/127.0.0.1#40500" >> /opt/etc/unblock.dnsmasq
done < /opt/etc/unblock/shadowsocks.txt
while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  echo $line | grep -Eq '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' && continue

  echo "ipset=/$line/unblockvmess" >> /opt/etc/unblock.dnsmasq
  echo "server=/$line/127.0.0.1#40500" >> /opt/etc/unblock.dnsmasq
done < /opt/etc/unblock/vmess.txt
while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  echo $line | grep -Eq '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' && continue

  echo "ipset=/$line/unblocktroj" >> /opt/etc/unblock.dnsmasq
  echo "server=/$line/127.0.0.1#40500" >> /opt/etc/unblock.dnsmasq
done < /opt/etc/unblock/trojan.txt


#script0
#script1
#script2
#script3
#script4
#script5
#script6
#script7
#script8
#script9
  • Здесь аналогичная картина — код разбит на 4 частиDYBVF. При необходимости увеличиваем за счёт #script0 и т.д пока так (актуальную знаете где взять):

#vpn1 и unblockvpn меняем
while read line || [ -n "$line" ]; do

  [ -z "$line" ] && continue
  [ "${line:0:1}" = "#" ] && continue

  echo $line | grep -Eq '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' && continue

  echo "ipset=/$line/unblockvpn" >> /opt/etc/unblock.dnsmasq
  echo "server=/$line/127.0.0.1#40500" >> /opt/etc/unblock.dnsmasq
done < /opt/etc/unblock/vpn1.txt

Сохраняем и выходим.

  • Даём права на использование:

chmod +x /opt/bin/unblock_dnsmasq.sh
  • Запускаем скрипт и затем проверяем создался ли файл. Здесь 2 команды, вводим последовательно:

unblock_dnsmasq.sh
cat /opt/etc/unblock.dnsmasq

Картина будет примерно такая:

  1. Скрипт ручного принудительного обновления системы после редактирования списка доменов (unblock_update.sh). Создаём его:

mcedit /opt/bin/unblock_update.sh
  • Записываем содержимое, сохраняем и закрываем:

#!/bin/sh
ipset flush unblocktor
ipset flush unblocksh
ipset flush unblockttroj
ipset flush unblockvmess
#ipset flush unblockvpn # добавляем столько сколько надо и раскомментируем
/opt/bin/unblock_dnsmasq.sh
/opt/etc/init.d/S56dnsmasq restart
/opt/bin/unblock_ipset.sh &
  • Даём права на использование:

chmod +x /opt/bin/unblock_update.sh
  1. Скрипт автоматического заполнения множества unblock при загрузке маршрутизатора (S99unblock). Создаём его:

mcedit /opt/etc/init.d/S99unblock
  • Записываем содержимое, сохраняем и закрываем:

#!/bin/sh
[ "$1" != "start" ] && exit 0
/opt/bin/unblock_ipset.sh 
cd /opt/etc
python /opt/etc/bot.py &
  • Даём права на использование:

chmod +x /opt/etc/init.d/S99unblock
  1. Перенаправление пакетов с адресатами.

  • ВНИМАНИЕ! Эта часть кода сейчас не работает, если есть спецы в iptables, то милости просим! Если кроме тора, trojan, vmess и shadowsocks мы используем другие VPN, то нам нужно узнать их имена. Вводим команду:

ifconfig
  • Список будет большим (может потребоваться прокрутка), но по тем параметрам, которые видны, Вы должны догадаться какой выбрать. У меня это ppp1, поэтому в следующем файле будем использовать его.

.

.
  • Здесь будут отображаться все созданные Вами vpn (кроме shadowsocks и tor).

  • Создаём ещё один файл, который будет перенаправлять пакеты с адресатами:

mcedit /opt/etc/ndm/netfilter.d/100-redirect.sh
#!/bin/sh
[ "$type" == "ip6tables" ] && exit 0
ip4t() {
    if ! iptables -C "$@" &>/dev/null; then
        iptables -A "$@"
    fi
}
if [ -z "$(iptables-save 2>/dev/null | grep unblocksh)" ]; then
    ipset create unblocksh hash:net -exist
    iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblocksh dst -j REDIRECT --to-port 1082
    iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblocksh dst -j REDIRECT --to-port 1082
    iptables -I PREROUTING -w -t nat -i sstp0 -p tcp -m set --match-set unblocksh dst -j REDIRECT --to-port 1082
    iptables -I PREROUTING -w -t nat -i sstp0 -p udp -m set --match-set unblocksh dst -j REDIRECT --to-port 1082
    iptables -t nat -A OUTPUT -p tcp -m set --match-set unblocksh dst -j REDIRECT --to-port 1082
fi


if [ -z "$(iptables-save 2>/dev/null | grep "udp \-\-dport 53 \-j DNAT")" ]; then
    iptables -w -t nat -I PREROUTING -i br0 -p udp --dport 53 -j DNAT --to 192.168.1.1
    iptables -w -t nat -I PREROUTING -i sstp0 -p udp --dport 53 -j DNAT --to 192.168.1.1
fi
if [ -z "$(iptables-save 2>/dev/null | grep "tcp \-\-dport 53 \-j DNAT")" ]; then
    iptables -w -t nat -I PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to 192.168.1.1
    iptables -w -t nat -I PREROUTING -i sstp0 -p tcp --dport 53 -j DNAT --to 192.168.1.1
fi


if [ -z "$(iptables-save 2>/dev/null | grep unblocktor)" ]; then
    ipset create unblocktor hash:net -exist
    iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141
    iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141
    iptables -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141
    iptables -t nat -A OUTPUT -p tcp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141

    iptables -I PREROUTING -w -t nat -i sstp0 -p tcp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141
    iptables -I PREROUTING -w -t nat -i sstp0 -p udp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141
    iptables -t nat -A PREROUTING -i sstp0 -p tcp -m set --match-set unblocktor dst -j REDIRECT --to-port 9141

fi


if [ -z "$(iptables-save 2>/dev/null | grep unblockvmess)" ]; then
    ipset create unblockvmess hash:net -exist
    iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810
    iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810
    iptables -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810
    iptables -t nat -A OUTPUT -p tcp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810

    iptables -I PREROUTING -w -t nat -i sstp0 -p tcp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810
    iptables -I PREROUTING -w -t nat -i sstp0 -p udp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810
    iptables -t nat -A PREROUTING -i sstp0 -p tcp -m set --match-set unblockvmess dst -j REDIRECT --to-port 10810

fi

if [ -z "$(iptables-save 2>/dev/null | grep unblocktroj)" ]; then
    ipset create unblocktroj hash:net -exist
    iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829
    iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829
    iptables -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829
    iptables -t nat -A OUTPUT -p tcp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829

    iptables -I PREROUTING -w -t nat -i sstp0 -p tcp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829
    iptables -I PREROUTING -w -t nat -i sstp0 -p udp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829
    iptables -t nat -A PREROUTING -i sstp0 -p tcp -m set --match-set unblocktroj dst -j REDIRECT --to-port 10829

fi


#script0
  • По аналогии внизу (вместо #script0 и т.д.) нам необходимо вставить дополнительный код (актуальный всегда тут). ВНИМАНИЕ! Эта часть кода сейчас не работает, если есть спецы в iptables, то милости просим! Тут аккуратненько) вместо ppp1 вставляем нужное нам название интерфейса (чуть повыше я писал):

if [ -z "$(iptables-save 2>/dev/null | grep unblockvpn)" ]; then
    ipset create unblockvpn hash:net -exist
    iptables -I PREROUTING -w -t nat -i br0 -p tcp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1
    iptables -I PREROUTING -w -t nat -i br0 -p udp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1
    iptables -t nat -A PREROUTING -i br0 -p tcp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1
    iptables -t nat -A OUTPUT -p tcp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1

    iptables -I PREROUTING -w -t nat -i sstp0 -p tcp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1
    iptables -I PREROUTING -w -t nat -i sstp0 -p udp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1
    iptables -t nat -A PREROUTING -i sstp0 -p tcp -m set --match-set unblockvpn dst -j MASQUERADE -o ppp1

fi
exit 0

Сохраняем и даём права на использование:

chmod +x /opt/etc/ndm/netfilter.d/100-redirect.sh
  1. Настройка dnsmasq и подключение дополнительного конфигурационного файла к dnsmasq.

  • Удалим содержимое конфигурационного файла dnsmasq и создадим вновь (команды вводим последовательно):

cat /dev/null > /opt/etc/dnsmasq.conf
mcedit /opt/etc/dnsmasq.conf
  • Записываем содержимое. При необходимости меняем ip роутера. Сохраняем и закрываем.

user=nobody
bogus-priv
no-negcache
clear-on-reload
bind-dynamic
listen-address=192.168.1.1
listen-address=127.0.0.1
min-port=4096
cache-size=1536
expand-hosts
log-async
conf-file=/opt/etc/unblock.dnsmasq
no-resolv
server=127.0.0.1#40500
server=127.0.0.1#40508
server=/onion/127.0.0.1#9053
ipset=/onion/unblocktor
  1. Добавление задачи в cron для периодического обновления содержимого множества unblock.

  • Откроем файл:

mcedit /opt/etc/crontab
  • В конец добавляем строку:

00 06 * * * root /opt/bin/unblock_ipset.sh
  • При желании остальные строчки можно закомментировать, поставив решётку в начале. Затем сохраняем и закрываем:

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/bin:/opt/sbin
MAILTO=""
HOME=/
# ---------- ---------- Default is Empty ---------- ---------- #
#*/1 * * * * root /opt/bin/run-parts /opt/etc/cron.1min
#*/5 * * * * root /opt/bin/run-parts /opt/etc/cron.5mins
#01 * * * * root /opt/bin/run-parts /opt/etc/cron.hourly
#02 4 * * * root /opt/bin/run-parts /opt/etc/cron.daily
#22 4 * * 0 root /opt/bin/run-parts /opt/etc/cron.weekly
#42 4 1 * * root /opt/bin/run-parts /opt/etc/cron.monthly
00 06 * * * root /opt/bin/unblock_ipset.sh
  1. После перезагрузки роутера у меня почему-то пропал доступ по 222 порту через putty по ssh. В итоге я подключаюсь по 22 порту через тот же putty, ввожу логин с паролем от роутера, пишу команду:

exec sh

а затем:

su - root

и можно использовать любые команды Entware по типу тех, которые мы вводили в данной инструкции.

Заключение

Надеюсь Вам всё понравилось) Пишите в комментариях что бы Вы хотели улучшить, Ваши замечания. «Спасибки» и прочее также приветствуются).

История версий

Версия 1.1

1) С помощью бота можно добавлять и удалять не один сайт, а несколько (каждый новый сайт с новой строки)
2) При показе списка бот выдаёт список в алфавитном порядке и в одном сообщении
3) Добавлен вывод ошибки в файл при зависании бота. Если будет ошибка — пришлите разработчику содержимое файла /opt/etc/error.log, но, возможно, ошибка исправлена
4) Исправлено создание файла /opt/etc/crontab. Раньше при повторной установки добавлялись дополнительные ненужные строки

Версия 1.2

Добавлена возможность вручную устанавливать ключи для Shadowsocks и мосты для Тора

Версия 1.3

1) Обновлена немного работа с ботом Highload’a (shadowsocks) из-за изменений их бота

2) Добавлена возможность получать ключи через бот с помощью сайта https://hi-l.im/. Для этого пункта необходимо однократно ещё ввести команду «pip install beautifulsoup4» перед запуском бота.

3) Немного доработан скрипт S99unblock

4) Доработан бот в части установочника. Теперь при установке запускается скрипт, создающий пустые множества. Иначе иногда переставал работать интернет полностью

5) В статье есть описание добавления DNS-over-HTTPS и DNS-over-TLS. Там есть небольшой апдейт от 02.10.2022. Рекомендую проделать действия из этого раздела

6) В боте есть обработка ошибок. Ошибки, связанные с работой, можно посмотреть в файле /opt/etc/error.log

Версия 2.0

1) Добавлена поддержка trojan и vmess

2) Удалён способ получение ключей Shadowsocks через телеграм. Это связано с тем, что я не успеваю следить за изменением их бота. Проще вручную получить ключ. Получение мостов Tor осталось на месте

3) Удалён способ получение ключа с помощью сайта H!Load-VPN так как на сайте больше нет это поддержки

4) Исправлен баг

Правило обновления до версии 2.0 с версий 1.*:

1) Скопировать весь код бота, который идёт после строки

# следующие настройки могут быть оставлены по умолчанию, но можно будет что-то поменять

2) Нажать запустить установку заново. ИЛИ!!!!!! с помощью Putty сделать следующие действия:

  • Установить два пакета

    opkg install v2ray trojan
  • Создать 2 файла в папке unblock, например командами. Их содержимое можно оставить пустым

mcedit /opt/etc/unblock/trojan.txt
mcedit /opt/etc/unblock/vmess.txt
  • Обновить файлы unblock.dnsmasq, unblock_ipset.sh, 100-redirect.sh, 100-ipset.sh, unblock_update.sh с гита

Настраиваем L2TP VPN сервер Keenetic

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

Для организации защищенных каналов я предпочитаю использовать OpenVPN, о настройке которого уже не раз рассказывал на страницах блога. Но что делать, если у вас нет возможности, желания или навыков поднимать OpenVPN-сервер? Для небольшого офиса, а уж тем более домашнего использования, подобное решение не всегда оправдано. Гораздо проще организовать безопасное подключение к ресурсам вашей сети используя готовый L2TP VPN-сервер на базе роутера Keenetic и сегодня я наглядно покажу как это делается.

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

Настройка L2TP-сервера на роутерах Keenetic

Со времени появления первых «кинетиков», проделана большая работа и теперь эти роутеры обладают весьма не плохим функционалом, оставаясь простыми в настройке (тут засылаю огромный булыжник в огород MikroTik). Для примера, взял роутер Keenetic Extra II с прошивкой версии 2.14.C.0.0-4.

Итак, расширение функциональности Keenetic OS, на которой работает роутер, достигается за счёт установки дополнительных компонентов. Как вы уже поняли, нам потребуется установить компонент L2TP/IPsec VPN-сервера:

  1. Заходим в панель управления и в боковом меню переходим Управление -> Общие настройки, где кликаем по кнопке «Изменить набор компонентов».
  2. Keenetic. Изменение набора компонентов

  3. В появившемся окне в разделе «Сетевые функции» отмечаем «L2TP/IPsec VPN-сервер» для установки.
  4. Keenetic. Установка L2TP/IPsec VPN-сервера

  5. Далее создаём пользователей, которым будет предоставлен удалённый доступ к сети. Делается это в соответствующем разделе Управление -> Пользователи.
  6. Осталось настроить сам L2TP-сервер. Переходим в Управление -> Приложения -> VPN-сервер L2TP/IPsec.
  7. Настройки шифрования L2TP/IPsec VPN-сервера Keenetic

    В поле Общий ключ IPsec пишем любой набор символов или секретную фразу, которая будет использоваться в качестве ключа шифрования (чем сложнее, тем лучше).

    Ставим галочку, напротив поля Множественный вход, если планируется использовать одну учётную запись пользователя для нескольких соединений одновременно. Здесь же можно указать количество выдаваемых IP-адресов клиентам и задать начальный IP-адрес, с которого роутер будет их отсчитывать.

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

    Остаётся только отметить галочками пользователей (мы их создали в третьем пункте) и активировать L2TP VPN-сервер.

    Активация L2TP/IPsec VPN-сервера на роутере Keenetic

Настройка соединения L2TP/IPsec на Windows и маке

Настройка VPN L2TP соединений под macOS или Windows делается штатными средствами. Если требуется подробная инструкция по их настройке, пишите в комментариях. А не сегодня это всё. Не забывайте ставить лайки и подписываться.

Настройка соединения L2TP/IPsec на macOS

Подписывайтесь на канал

Яндекс.Дзен

и узнавайте первыми о новых материалах, опубликованных на сайте.

Для начала дадим определение, что такое VPN.

VPN (англ. Virtual Private Network — виртуальная частная сеть) — это безопасное зашифрованное подключение пользователя к сети, с которым он может обходить локальные ограничения и сохранять конфиденциальность. Разберем название «виртуальная частная сеть». Виртуальная сеть — значит, что на ее работу не влияет то, по каким и скольким каналам связи она проложена.

Если у вас нет роутера отечественной фирмы Keenetic, Вы можете приобрести его здесь.

Далее перейдём непосредственно к самой настройке роутера.

  1. Заходим в настройки роутера через веб-интерфейс. В адресной строке вбиваем 192.168.1.1 и вводим логин и пароль.

    Подробнее

  2. Переходим в вкладку СЕТЕВЫЕ ПРАВИЛА->Интернет-фильтр и отключаем Фильтр

    Подробнее

  3. Переходим в вкладку УПРАВЛЕНИЕ->Общие настройки и нажимаем кнопку Изменить набор компонентов

    Подробнее

  4. Откроется модальное окно Компоненты операционной системы.

    Подробнее

  5. Далее переходим в вкладку ИНТЕРНЕТ->Проводной нас интересует Параметры IP и DNS.

    Подробнее

    • У некоторых провайдеров нужно менять Аутентификация у провайдера (PPPoE / PPTP / L2TP)

      Подробнее

  6. Формируем конфигурацию OpenVPN.

    Подробнее

    ##############################################
    # ProstoVPN.AntiZapret                       #
    # http://antizapret.prostovpn.org            #
    ##############################################
    
    ##### NOTE TO LINUX USERS #####
    # OpenVPN does not handle DNS on Linux.
    # This also applies to ROUTERS.
    #
    # You have two workarounds:
    # 1. Configure OpenVPN connection using NetworkManager.
    #    This is preferrable method.
    # 2. Uncomment the lines below
    #    For Debian, Ubuntu and derivatives:
    #
    # script-security 2
    # up /etc/openvpn/update-resolv-conf
    # down /etc/openvpn/update-resolv-conf
    #
    #    For Fedora:
    #
    # script-security 2
    # up /usr/share/doc/openvpn/contrib/pull-resolv-conf/client.up
    # down /usr/share/doc/openvpn/contrib/pull-resolv-conf/client.down
    #
    #
    # For routers, contact your router manufacturer, or visit
    # https://ntc.party/c/antizapret-prostovpn-org/5
    #
    ###############################
    
    nobind
    client
    
    remote vpn.antizapret.prostovpn.org
    
    remote-cert-tls server
    
    dev tun
    proto tcp
    cipher AES-128-CBC
    
    # Allow weak (MD5) hash in certificate signature.
    # COMMENT OR REMOVE this line if you have error such as:
    #
    # Failed to set restricted TLS cipher list: DEFAULT:@SECLEVEL=0
    #
    setenv opt tls-cipher "DEFAULT:@SECLEVEL=0"
    
    resolv-retry infinite
    persist-key
    persist-tun
    
    pull-filter ignore block-outside-dns
    route 77.88.8.8 255.255.255.255 vpn_gateway
    route 77.88.8.1 255.255.255.255 vpn_gateway
    
    setenv FRIENDLY_NAME "AntiZapret VPN TCP"
    
    # Keys
    <ca>
    -----BEGIN CERTIFICATE-----
    MIIEKzCCA5SgAwIBAgIJAJuJfmHjR7wuMA0GCSqGSIb3DQEBBQUAMIHAMQswCQYD
    VQQGEwJSVTELMAkGA1UECBMCUlUxETAPBgNVBAcTCEludGVybmV0MRUwEwYDVQQK
    EwxQcm9zdG9WUE4ucnUxEzARBgNVBAsTCkFudGlaYXByZXQxIDAeBgNVBAMTF1By
    b3N0b1ZQTi5BbnRpWmFwcmV0IENBMSAwHgYDVQQpExdQcm9zdG9WUE4uQW50aVph
    cHJldCBDQTEhMB8GCSqGSIb3DQEJARYSYWRtaW5AcHJvc3RvdnBuLnJ1MB4XDTEz
    MDMyMjEzNDYzMFoXDTIzMDMyMDEzNDYzMFowgcAxCzAJBgNVBAYTAlJVMQswCQYD
    VQQIEwJSVTERMA8GA1UEBxMISW50ZXJuZXQxFTATBgNVBAoTDFByb3N0b1ZQTi5y
    dTETMBEGA1UECxMKQW50aVphcHJldDEgMB4GA1UEAxMXUHJvc3RvVlBOLkFudGla
    YXByZXQgQ0ExIDAeBgNVBCkTF1Byb3N0b1ZQTi5BbnRpWmFwcmV0IENBMSEwHwYJ
    KoZIhvcNAQkBFhJhZG1pbkBwcm9zdG92cG4ucnUwgZ8wDQYJKoZIhvcNAQEBBQAD
    gY0AMIGJAoGBALD87/nnrvAvOv3GDSpmYUgdDy34rVjFtlKmigu24qyFKp4dGlfx
    x+JWurQcxzMZSBUajNgIqwb0ltJgK2fYtnIMZwRFX3aOdm7n6U0ec0rEotWx09ZY
    15dGLwy3KYIRlom+CKjc9I8h95peI9CRBeKnIPLk76figBos8qU/jk9bAgMBAAGj
    ggEpMIIBJTAdBgNVHQ4EFgQUa1zT3sc+JvPmjh9Cq3pVA0m++GwwgfUGA1UdIwSB
    7TCB6oAUa1zT3sc+JvPmjh9Cq3pVA0m++GyhgcakgcMwgcAxCzAJBgNVBAYTAlJV
    MQswCQYDVQQIEwJSVTERMA8GA1UEBxMISW50ZXJuZXQxFTATBgNVBAoTDFByb3N0
    b1ZQTi5ydTETMBEGA1UECxMKQW50aVphcHJldDEgMB4GA1UEAxMXUHJvc3RvVlBO
    LkFudGlaYXByZXQgQ0ExIDAeBgNVBCkTF1Byb3N0b1ZQTi5BbnRpWmFwcmV0IENB
    MSEwHwYJKoZIhvcNAQkBFhJhZG1pbkBwcm9zdG92cG4ucnWCCQCbiX5h40e8LjAM
    BgNVHRMEBTADAQH/MA0GCSqGSIb3DQEBBQUAA4GBAKMzBQ9qWk+eAFz4WrcIsVqA
    Mgh9Vu1BTvDLH0vKJkFdL23yH7DHnXPs8UqkLHQtzAswaFAMNrINJAYP10MpQx8K
    M0orrNKF/Jv+jnuu0yq16UoBFxJCKsdmetoCZz1HuK+5Sop140BRBu1bNOdQ9uNK
    Ou4wOSFpotTP2gVFxctw
    -----END CERTIFICATE-----
    </ca>
    
    <cert>
    -----BEGIN CERTIFICATE-----
    MIIE7DCCBFWgAwIBAgIBBjANBgkqhkiG9w0BAQUFADCBwDELMAkGA1UEBhMCUlUx
    CzAJBgNVBAgTAlJVMREwDwYDVQQHEwhJbnRlcm5ldDEVMBMGA1UEChMMUHJvc3Rv
    VlBOLnJ1MRMwEQYDVQQLEwpBbnRpWmFwcmV0MSAwHgYDVQQDExdQcm9zdG9WUE4u
    QW50aVphcHJldCBDQTEgMB4GA1UEKRMXUHJvc3RvVlBOLkFudGlaYXByZXQgQ0Ex
    ITAfBgkqhkiG9w0BCQEWEmFkbWluQHByb3N0b3Zwbi5ydTAeFw0xNzA2MzAxMTM5
    NDVaFw0yNzA2MjgxMTM5NDVaMIG3MQswCQYDVQQGEwJSVTELMAkGA1UECBMCUlUx
    ETAPBgNVBAcTCEludGVybmV0MRYwFAYDVQQKEw1Qcm9zdG9WUE4ub3JnMRMwEQYD
    VQQLEwpBbnRpWmFwcmV0MR8wHQYDVQQDExZhbnRpemFwcmV0LXVzZXJhY2Nlc3My
    MREwDwYDVQQpEwhjaGFuZ2VtZTEnMCUGCSqGSIb3DQEJARYYYW50aXphcHJldEBw
    cm9zdG92cG4ub3JnMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA9fHj
    vzoLAqXL8N+xWUKcHPdIdi/OOr/lkFXfPG4lkcDiFupFwB81c8aM1H0IQaWD/P50
    wjsDOCAJOgdZFf8rqlxIMMxgL0lwdBJDUAmUWE3fUm3Zk6Ele23w48rZuygWs6LS
    TUueYw+Zk0o202C5z+RLYURFxaS+B7CvYH+Y2nnLVU8TxFiAh86j8GyHiRNrO34H
    6cl1IWWHxnLJXB4zZmPuW9Ff5tPjjLdpcBPSsmC4e/VNjaZe3nqvxkaU6ygIKhTP
    tKjZf3w6wO4kKPnwAhzUC+h3PCRack7YVBBGn5yO/bRX1y/kbgdV+tzhg0HDspq1
    EL6m4By4R3qNog7okwIDAQABo4IBdzCCAXMwCQYDVR0TBAIwADAtBglghkgBhvhC
    AQ0EIBYeRWFzeS1SU0EgR2VuZXJhdGVkIENlcnRpZmljYXRlMB0GA1UdDgQWBBRx
    zBuNpVmdllM2ZhILCIkoZFvcVjCB9QYDVR0jBIHtMIHqgBRrXNPexz4m8+aOH0Kr
    elUDSb74bKGBxqSBwzCBwDELMAkGA1UEBhMCUlUxCzAJBgNVBAgTAlJVMREwDwYD
    VQQHEwhJbnRlcm5ldDEVMBMGA1UEChMMUHJvc3RvVlBOLnJ1MRMwEQYDVQQLEwpB
    bnRpWmFwcmV0MSAwHgYDVQQDExdQcm9zdG9WUE4uQW50aVphcHJldCBDQTEgMB4G
    A1UEKRMXUHJvc3RvVlBOLkFudGlaYXByZXQgQ0ExITAfBgkqhkiG9w0BCQEWEmFk
    bWluQHByb3N0b3Zwbi5ydYIJAJuJfmHjR7wuMBMGA1UdJQQMMAoGCCsGAQUFBwMC
    MAsGA1UdDwQEAwIHgDANBgkqhkiG9w0BAQUFAAOBgQCtvr8gtRUCMruJGTpwazE/
    4fp/kzbavg2UzTxHFyrBA1fRSAPLnNyQELxAdGB9Y0BR4A3soRKBtfPICtdkEgjf
    lGGSnrEH/QRoiDJVSuig5F/C2GP5Yl0Z6CUEm6ZJsu6HTxahBkowJ7YIoXVcf8cs
    LIQi0TktJeL7LvexVYHVYg==
    -----END CERTIFICATE-----
    </cert>
    
    <key>
    -----BEGIN PRIVATE KEY-----
    MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQD18eO/OgsCpcvw
    37FZQpwc90h2L846v+WQVd88biWRwOIW6kXAHzVzxozUfQhBpYP8/nTCOwM4IAk6
    B1kV/yuqXEgwzGAvSXB0EkNQCZRYTd9SbdmToSV7bfDjytm7KBazotJNS55jD5mT
    SjbTYLnP5EthREXFpL4HsK9gf5jaectVTxPEWICHzqPwbIeJE2s7fgfpyXUhZYfG
    cslcHjNmY+5b0V/m0+OMt2lwE9KyYLh79U2Npl7eeq/GRpTrKAgqFM+0qNl/fDrA
    7iQo+fACHNQL6Hc8JFpyTthUEEafnI79tFfXL+RuB1X63OGDQcOymrUQvqbgHLhH
    eo2iDuiTAgMBAAECggEAdMsjziGwLNezG3X+8FZzcEX2ATn+g2OxjnNZCYd9C9Q/
    CYbDDNNFPO+i3R1rGFGTdkcYB0yi4LpF52qp4YpFoCcmmRXU71++qUAq+w0xhyWj
    0a8czcCO3ih9Zo9kCj6lWTUPDWnFk2FLGuj5VDPwyUquiUg0ogDzxQ8gmYC+g7C4
    jjlrNJhk4/F1EDle89iXEhYcR0FqEnAt031QwvdQRDJ1f1qKZNOP2Ld798yMx69E
    v7lW2mOkN/0MzKLOR6wn+3irykVWazjKyb22LWmmFNXO89GwaE20XWuyKzGPyj0K
    wA8RrEVtgUXBg4aar8YzhCm2bX+xHU/Lt+7lFxD70QKBgQD8WtnKQNjcbWQNJoqF
    Bku087GKpDQjp8xw0Wac4pCebQgs9M7IZGlWMUJhuPaZkdIRFs46DxnDTvXZlnHD
    PmafWjqjzSuXToInedkoEI3JVEyr8CrWTnlLhi8lTWuVIUhIu8NxPeidOJVuZmsJ
    j4vTr7Fc+G1sGCHkUnS/MCM+vwKBgQD5f1YRLxs1pVQ5KpjTCeH1/bmVbXr8MTW4
    nHr4xAtXto9RDrLjDzUhBcip0RH3NF1DZTvyvep5aRxllGbiI4Oz/3DSqgi6TFvD
    d7VJp4jUe94b9C+zXtYbJyag9Hu0cJ5MK8hRQiz9na/e2Z8ujIlo080TZoa1QOPW
    Pv/gIWxfLQKBgEMUr2IZHMxzc64fOaEkzEkcomw1O/riZvDyaPF5NHI4j3zL0o/o
    SSv1Si0J6ttlrM6IHmfGjdWiDq45VKJO2x6u8HmMV3MQFn8B39zLkbUb6Imn/Osc
    zxdpYuzqiJeK0lkrOEfI6iWo3egL55YSB1xNDruk+glK3O+Bj7EmzaenAoGAFQDI
    MQgjJT/2uB1C4jkpwXiLf+3IdaR63kCmBX0Ta13d8LfpDT5Bfbcr7kfAWGwbEcpa
    4pNkQrY7gr2cb5sHwkZVrBZOR8iXzPut0jZ9SU3oI7hJr7LjGUQRd2k9ZLI6UTU6
    VsTYXr1AieUOBnAkPSPfVqvB2U5OH8IL7kVCBz0CgYAOb8+YMdAVTkEOJYa6+3TK
    saoB48cu1wDz+LIh17rknv9jsyFunwt6+AvlHQv9mOcTttd7nuT8HK2QylYdVBZd
    eOemFLtDrquRzUrRYSmFvNA0eSPEQC/3SBiz/55srqtk8qbJEJ4i4aYgAHgmH396
    Zg/tuKUxCrU9CyML3Fmfiw==
    -----END PRIVATE KEY-----
    </key>
    

    Нас интересуют строки

    route 77.88.8.8 255.255.255.255 vpn_gateway
    route 77.88.8.1 255.255.255.255 vpn_gateway
    

    Если вы используете другие DNS сервера, в этом случаи IP 77.88.8.8 и 77.88.8.1 меняете на свои. Если хотите использовать Яндекс DNS, оставляете код без изменений.

  7. Переходим в вкладку ИНТЕРНЕТ->Другие подключения, нас интересует раздел VPN-подключения, жмём кнопку Добавить подключение.

    Подробнее

  8. Делаем всё как указано на скрине приведённом ниже.
    • Даём название соединению.
    • Выбираем тип протокола OpenVPN.
    • Ставим галочку Получать маршруты от удаленной стороны.
    • В пункте Конфигурация OpenVPN вставляем код приведенный в пункте 6
    • Нажимаем кнопку Сохранить.
  9. Подробнее

  10. Включаем VPN-подключение.

    Подробнее

  11. На всякий случай перезагружаем компьютер.

  • Настройка wake on lan на роутере tp link
  • Настройка vpn подключение на роутере tp link
  • Настройка wi fi роутер huawei wifi ax3 dual core ws7100
  • Настройка vpn для роутера mikrotik
  • Настройка vpn на роутере keenetic extra