• Форум обновлён на новый движок. Тема для обсуждения тут

openwrt

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
на днях решил создать тему, которая поможет пользователям сервисов использующих прошивку openwrt на роутерах поддерживающих данный софт, насладиться всеми преймуществами её работы.
предлагаю делиться опытом использования различных плюшек сего софтового чуда.
начну с себя: на данный момент активно использую сервисы openvpn openssl (развернута локальная сеть между роутерами) + multiwan (для резервации канала).
всё далее описанное проверено на роутерах: tplink wdr4300 server/dual wan, 842nd client/sdr radio, 1045 server rezerv, 1043 client/dual wan, 741nd client.
как я настроил свой openvpn server и client? спасибо юзерам написавшим инструкцию на вики проекта тыц правда там оказалась маленькая неточность, методом проб и ошибок удалось поднять tap мост между телефоном/планшетом и роутером.

настройка домашнего впн сервера:
1 устанавливаем на роутер прошивку openwrt, для роутеров с памятью 4 мб (тплинк 741 841 и др) в сети есть готовые прошивки с включёнными пакетами: ddns, openvpn, upnp, с вырезанным установщиком пакетов и оптимизацией системы для стабильной работы. ссылка на прошивки с включёнными пакетами:
подходит для роутеров:
TP Link WA701ND v1
TP Link WA701ND v2
TP Link WR740n v1
TP Link WR740n v3
TP Link WR740n v4
TP Link WR740n v5
TP Link WR740n v6
TP Link WR741ND v1
TP Link WR741ND v2
TP Link WR741ND v4
TP Link WR741ND v5
TP Link WR743ND v1
TP Link WR743ND v2
TP Link WR841 v1.5
TP Link WR841 v3
TP Link WR841 v5
TP Link WR841 v7
TP Link WR841 v8
TP Link WR841 v9
TP Link WR841 v10
TP Link WR841 v11
TP Link WR841 v12
TP Link WR841 v12
TP Link WR940n v4
TP Link WR941ND v2
TP Link WR941ND v3
TP Link WR941ND v4
TP Link WR941ND v5
TP Link WR941ND v6
качаем тут: тыц , устанавливаем на ваш роутер.
2 для роутеров которых нет в списке, и для которых вы скачивали прошивку отсюда: тыц надо установить следующие пакеты: luci-i18n-openvpn-ru, openvpn-openssl, для русификации веб интерфейса нужно установить luci-i18n-base-ru.
3 теперь для всех роутеров, в которых есть необходимые пакеты настраиваем сервер, простой способ настройки: подключиться к роутеру через ssl (программа putty тыц), и вводим команды для создания профиля сервера:
echo > /etc/config/openvpn # очистите UCI конфигурацию для OpenVPN
uci set openvpn.HOMELINK=openvpn
uci set openvpn.HOMELINK.enabled=1
uci set openvpn.HOMELINK.verb=0
uci set openvpn.HOMELINK.proto=tcp-server
uci set openvpn.HOMELINK.port=порт сервера
uci set openvpn.HOMELINK.dev=tap
uci set openvpn.HOMELINK.mode=server
uci set openvpn.HOMELINK.tls_server=1
uci add_list openvpn.HOMELINK.push='route-gateway dhcp'
uci set openvpn.HOMELINK.keepalive='10 60'
uci set openvpn.HOMELINK.ca=/etc/openvpn/ca.crt
uci set openvpn.HOMELINK.cert=/etc/openvpn/my-server.crt
uci set openvpn.HOMELINK.key=/etc/openvpn/my-server.key
uci set openvpn.HOMELINK.dh=/etc/openvpn/dh2048.pem
uci commit openvpn
/etc/init.d/openvpn enable
/etc/init.d/openvpn start
4 заходим на веб страницу роутера, вкладка сервисы openvpn, туда вставляем предварительно созданные фаилы сертификатов сервера и ключей (4 фаила: ca.crt, dh2048.pem, server.crt. server.key).
5 сохраняем и применяем изменения. ваш сервер запущен и работает.
6 в настройках интерфейсов (сеть, интерфейсы) правим настройки lan интерфейса, добавляем tap0 в список портов. сохраняем и применяем изменения.
на этом настройка сервера закончена.
далее я опишу настройку клиентов на домашний сервер.
p.s кому будет интересно поковырять функционал глубже есть пару мануалов которые так и не заработали на полную:тыц и тыц (tun тунель так и не заработал).
 

Вложения

Последнее редактирование:

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
настройка балансировки трафика между 2 wan портами.
ВНИМАНИЕ! если у вас гигабитный роутер, и провайдер даёт реальный гигабит, эта инструкция не для вас (nat срезает скорость до 200 мбит сумарно с 2 каналов)
1 в веб интерфейсе обновить пакеты, после установить: luci-i18n-mwan3-ru
2 далее в настройках коммутатора (сеть, коммутатор) создаём новый интерфейс wlan, у вас должно быть 3 влан интерфейса: lan, wan_1, wan_2.
3 в созданном интерфейсе настраиваем опции: цп - с тегом, нужный порт - без тега, остальные отключить. должна получиться схема как показано на скрине 2.
4 с помощью программы winscp тыц подключаемся к роутеру по протоколу scp, ищем фаил mwan3 по пути /etc/config, заменяем содержимое фаила на это:
config policy 'balanced'
list use_member 'wan_1_m1_w3'
list use_member 'wan_2_m1_w2'
list use_member 'wan_1_6_m1_w3'
list use_member 'wan_2_6_m1_w2'
option last_resort 'unreachable'

config policy 'wan_1_wan_2'
list use_member 'wan_1_m1_w3'
list use_member 'wan_2_m2_w2'
list use_member 'wan_1_6_m1_w3'
list use_member 'wan_2_6_m2_w2'

config policy 'wan_2_wan_1'
list use_member 'wan_1_m2_w3'
list use_member 'wan_2_m1_w2'
list use_member 'wan_1_6_m2_w3'
list use_member 'wan_2_6_m1_w2'

config policy 'wan_1_only'
list use_member 'wan_1_m1_w3'
list use_member 'wan_1_6_m1_w3'

config policy 'wan_2_only'
list use_member 'wan_2_m1_w2'
list use_member 'wan_2_6_m1_w2'

config globals 'globals'
option mmx_mask '0x3F00'
option local_source 'lan'

config interface 'wan_1'
option enabled '1'
list track_ip '8.8.4.4'
list track_ip '8.8.8.8'
list track_ip '208.67.222.222'
list track_ip '208.67.220.220'
option family 'ipv4'
option reliability '2'
option count '1'
option timeout '2'
option failure_latency '1000'
option recovery_latency '500'
option failure_loss '20'
option recovery_loss '5'
option interval '5'
option down '3'
option up '8'

config interface 'wan_1_6'
option enabled '0'
list track_ip '2001:4860:4860::8844'
list track_ip '2001:4860:4860::8888'
list track_ip '2620:0:ccd::2'
list track_ip '2620:0:ccc::2'
option family 'ipv6'
option reliability '2'
option count '1'
option timeout '2'
option interval '5'
option down '3'
option up '8'

config interface 'wan_2'
option enabled '1'
list track_ip '8.8.8.8'
list track_ip '208.67.220.220'
option family 'ipv4'
option reliability '1'
option count '1'
option timeout '2'
option interval '5'
option down '3'
option up '8'

config interface 'wan_2_6'
option enabled '0'
list track_ip '2001:4860:4860::8888'
list track_ip '2620:0:ccc::2'
option family 'ipv6'
option reliability '1'
option count '1'
option timeout '2'
option interval '5'
option down '3'
option up '8'

config member 'wan_1_m1_w3'
option interface 'wan_1'
option metric '1'
option weight '3'

config member 'wan_1_m2_w3'
option interface 'wan_1'
option metric '2'
option weight '3'

config member 'wan_2_m1_w2'
option interface 'wan_2'
option metric '1'
option weight '2'

config member 'wan_2_m2_w2'
option interface 'wan_2'
option metric '2'
option weight '2'

config member 'wan_1_6_m1_w3'
option interface 'wan_1_6'
option metric '1'
option weight '3'

config member 'wan_1_6_m2_w3'
option interface 'wan_1_6'
option metric '2'
option weight '3'

config member 'wan_2_6_m1_w2'
option interface 'wan_2_6'
option metric '1'
option weight '2'

config member 'wan_2_6_m2_w2'
option interface 'wan_2_6'
option metric '2'
option weight '2'

config rule 'default_rule'
option dest_ip '0.0.0.0/0'
option use_policy 'balanced'
после сохраняем изменения.
5 в веб интерфейсе заходим в: сеть, межсетевой экран, и создаём новый интерфейс с параметрами показанными на скрине 3. привязываем к нему 2 ван порт, сохраняем и применяем.
6 в настройках интерфейсов выставляем для ван 1 - статический ип и метрику 10, для ван 2 динамический с метрикой 20.
7 применяем и перезагружаем роутер.
ВАЖНО! ПРИ РАБОТЕ С ИНТЕРФЕЙСАМИ И КОММУТАТОРОМ НА ВСЯКИЙ СЛУЧАЙ ВКЛЮЧИТЕ И НАСТРОЙТЕ WIFI, В СЛУЧАИ ДОПУСКА ОШИБОК ВХОД НА ВЕБ ЧЕРЕЗ ЛАН БУДЕТ НЕВОЗМОЖЕН.
 

Вложения

Последнее редактирование:

Себастьян Перейро

торговец чёрным деревом
Регистрация
9/8/09
Адрес
Вольнянск
Телефон
Lenovo VIBE P2
{6 в настройках интерфейсов выставляем для ван 1 - статический ип и метрику 10, для ван 2 динамический с метрикой 20.} если оба операторы работают через динамику, то всеоавно для ван ставим статику?
 

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
пробуйте, но тогда могут быть глюки. у меня 2 прова со статикой, но нормально настроить не получалось, настраивал по мануалам с официального сайта разработчика. там было указано что должно быть на 1 статика а на 2 динамика.

Добавлено через 12 минут
настройка openvpn клиента на роутере с openwrt.
1 устанавливаем на роутер прошивку openwrt, для роутеров с памятью 4 мб (тплинк 741 841 и др) в сети есть готовые прошивки с включёнными пакетами: ddns, openvpn, upnp, с вырезанным установщиком пакетов и оптимизацией системы для стабильной работы. ссылка на прошивки с включёнными пакетами:
подходит для роутеров:
TP Link WA701ND v1
TP Link WA701ND v2
TP Link WR740n v1
TP Link WR740n v3
TP Link WR740n v4
TP Link WR740n v5
TP Link WR740n v6
TP Link WR741ND v1
TP Link WR741ND v2
TP Link WR741ND v4
TP Link WR741ND v5
TP Link WR743ND v1
TP Link WR743ND v2
TP Link WR841 v1.5
TP Link WR841 v3
TP Link WR841 v5
TP Link WR841 v7
TP Link WR841 v8
TP Link WR841 v9
TP Link WR841 v10
TP Link WR841 v11
TP Link WR841 v12
TP Link WR841 v12
TP Link WR940n v4
TP Link WR941ND v2
TP Link WR941ND v3
TP Link WR941ND v4
TP Link WR941ND v5
TP Link WR941ND v6
качаем тут: тыц , устанавливаем на ваш роутер.
2 для роутеров которых нет в списке, и для которых вы скачивали прошивку отсюда: тыц надо установить следующие пакеты: luci-i18n-openvpn-ru, openvpn-openssl, для русификации веб интерфейса нужно установить luci-i18n-base-ru.
3 теперь для всех роутеров, в которых есть необходимые пакеты настраиваем клиент, простой способ настройки: подключиться к роутеру через ssl (программа putty тыц), и вводим команды для создания профиля клиента:
echo > /etc/config/openvpn # очистите UCI конфигурацию для OpenVPN
uci set openvpn.HOMELINK=openvpn
uci set openvpn.HOMELINK.enabled=1
uci set openvpn.HOMELINK.dev=tap
uci set openvpn.HOMELINK.proto=tcp-client
uci set openvpn.HOMELINK.verb=0
uci set openvpn.HOMELINK.ca=/etc/openvpn/ca.crt
uci set openvpn.HOMELINK.cert=/etc/openvpn/my-client.crt
uci set openvpn.HOMELINK.key=/etc/openvpn/my-client.key
uci set openvpn.HOMELINK.client=1
uci set openvpn.HOMELINK.remote_cert_tls=server
uci set openvpn.HOMELINK.remote="адрес сервера порт"
uci commit openvpn
/etc/init.d/openvpn enable
/etc/init.d/openvpn start
Замечание - строчка "uci set openvpn.HOMELINK.remote="адрес сервера порт"" - может копироваться несколько раз в зависимости от количества резервных ип адресов вашего сервера, коннект будет происходить по порядку к каждому адресу.
4 заходим на веб страницу роутера, вкладка сервисы openvpn, туда вставляем предварительно созданные фаилы сертификатов сервера и ключей (3 фаила: ca.crt, client.crt. client.key).
5 сохраняем и применяем изменения. ваш клиент запущен и работает.
6 в настройках интерфейсов (сеть, интерфейсы) правим настройки интерфейсов, добавляем tap0 в список портов, нужной подсети, подключаем линк домой или к 2 wifi сети, или к отдельному lan порту (например ип телефон на впн порту зарубежом). сохраняем и применяем изменения.
на этом настройка сервера закончена.
p.s если вы будете создавать отдельный интерфейс, вам необходимо отвязать в коммутаторе 1 или несколько лан портов для впн (по необходимости), так-же при сохдании интерфейса указать опцию - неуправляемый и не назначать интерфейсу сетевую зону.
 
Последнее редактирование:

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
ещё хочется рассказать о других возможностях прошивки, вкратце коснусь функций: создания нескольких wifi интерфейсов (для разделения сетей), резервации адресов, записи в роутер имён хостов для домашних устройств: например, если у вас в домашней сети есть сервер с медиа фаилами, или вы хотите организовать доступ к ноутбуку/компьютеру/ресиверу через локальную сеть не заморачиваясь на вписывании адресов устройств можно легко настроить эту функцию в роутере, зафиксировав за мак адресом определённого устройства его доменное имя, и тогда вбивая в адресную строку к примеру http://medialink - попадать на фаиловый сервер, или по адресу ftp://vuduo - скачивать запись телепередачи с вашего ресивера.
всё это настраивается в веб интерфейсе: меню, сеть, имена хостов, добавить, сохраняете и применяете (см. скрин 1).
для сервисов, которым нужен статический адрес - есть функция статических адресов, настраивается в меню, сеть, dhcp и dns (скрин 2).
теперь касательно wifi - тут всё предельно просто, в меню сеть, wifi, создаём новый интерфейс (скрин 3), настраиваем как обычный роутер, прописываем зону приёма данных (лан, ван, или впн зависит от того что вы от него хотите), сохраняете и применяете (скрин 4).
 

Вложения

Себастьян Перейро

торговец чёрным деревом
Регистрация
9/8/09
Адрес
Вольнянск
Телефон
Lenovo VIBE P2
Если есть опыт как настроить статику при динамическом айпи, желательно для сервиса no-ip, то поделись, ну и доступ из вне к своим устройствам за роутером
 

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
Если есть опыт как настроить статику при динамическом айпи, желательно для сервиса no-ip, то поделись, ну и доступ из вне к своим устройствам за роутером
опыт открытия ресурсов локалки есть, напишу как только подумаю как описать это попроще, так-же будет разумно напистаь мануал по настройке контроля интернета для детей (тоже полезная штука).
к дднс привязан, апкеты хорошо работают, опишу как только доберусь до списка поддержки сервисов.

для реализации доступа к локальным ресурсам из интернета, необходимо соблюсти некоторые условия:
устройство должно иметь постоянный локальный адрес, иметь стабильное соединение с роутером, быть активным.
для настройки заходим в меню, сеть, межсетевой экран, Port Forwards - внизу страницы вносим необходимую информацию:
имя сервиса, протокол, внешняя сеть, внешний порт, внутренняя сеть, адрес устройства, внутренний порт, сохраняем нажав кнопку сохранить на строке которую вы заполняете. если у вас 2 ван порта то заполнять необходимо поля для каждоко интерфейса отдельно (см. скрин). для изменения настроек, зайдите в нужный пункт нажав кнопку изменить и заполните необходимые поля. если вам нужно открыть доступ к группе портов (порты подряд), заполняйте поле порт через знак "-" 8000-8005, 1024-1952. так-же можно заполнить перенаправление портов к примеру внешний порт для впн 1199, а внутренний 1194, тогда заполняем необходимые поля согласно инетрукции выше.
 

Вложения

  • 120.4 KB Просмотры: 18
Последнее редактирование:

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
по мере наполнения буду совершенствовать шапку темы.
а вообще надо создать тему в правильном месте и открыть голосование о целесообразности данной темы.
жалко что скринов больше 5 нельзя лить в одно сообщение.
А як перейти на неї з ddwrt, бо десь читав, що ця легше буде для роутера...Дякую
и функционал побагаче, перейти легко, лейте в роут прошивку сисапгрейд, не сохраняя настройки.

вот ещё небольшая "плюшка", превращаем ваш роутер в sdr радиоприёмник:
заходим в веб интерфейс, далее скачиваем и устанавливаем пакет rtl-sdr, подключаем в usb вашего роутера sdr свисток (см скрин и фото), запускаем putty, авторизуемся в консоли, вводим команду rtl_tcp -a 192.168.1.1 где 192.168.1.1 - адрес вашего роутера.
запускаем на пк sdrsharp или др программу для прослушивание sdr, настраиваем софт - адрес ип адрес вашего роутера, порт 1234, протокол rtl tcp, запускаем и слушаем наслаждаясь радиоэфиром
если кто знает как автоматизировать автозапуск донгла без консоли и ввода команды, поделитесь информацией, будет интересно всем!
 

Вложения

Последнее редактирование:

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
теперь я расскажу как генерировать ключи для openvpn сервера и клиента средствами windows.
Для генерации сертификатов и ключей шифрования на ОС Windows необходимо установить само приложение OpenVPN
Скачать версию для Windows можно по ссылке: тыц
После скачивания и установки в указанную Вами папку в ней будет список файлов. у меня это папка C:\Program Files\OpenVPN\ - ВНИМАНИЕ! путь зависит от вашей ос и её разрядности. Нам необходимо перейти в папку easy-rsa. Нужно открыть консоль Windows (для Windows Vista/7/8/8.1/10 нужно запускать от имени Администратора)
Переходим в папку easy-rsa по пути установки командой cd
Например: cd C:\Program Files\OpenVPN\easy-rsa
1 Запускаем файл init-config.bat
в командной строке вы увидите:
C:\Program Files\OpenVPN\easy-rsa>init-config.bat
C:\Program Files\OpenVPN\easy-rsa>copy vars.bat.sample vars.bat
Скопировано файлов:
В папке появится файл vars.bat, открываем его текстовым редактором, нас интересуют строчки в самом конце, их нужно заполнить
в эти строчки выставляете свои параметры:
set KEY_COUNTRY=UA
set KEY_PROVINCE=kyiv
set KEY_CITY=Kyiv
set KEY_ORG=HOME
set [email protected]
set KEY_CN=server
set KEY_NAME=server
set KEY_OU=server
set PKCS11_MODULE_PATH=server
set PKCS11_PIN=12345
ВНИМАНИЕ! надписи server, не трогаем. Сохраняем файл.

2 Далее открываете редактором файл openssl-1.0.0.cnf
Находите строчку default_days 365 и заменяете число 365 на 3650. Тем самым мы увеличим время жизни наших сертификатов на 10 лет.
Сохраняем и закрываем.

3 Генерируем ключи
Пишем в консоль команды
vars
clean-all
В ответ должно прийти
Скопировано файлов: 1.
Скопировано файлов: 1.
Если, вы это видите, значит все хорошо, продолжаем...
Создаем ключ Диффи-Хеллмана
build-dh
Создаем основной сертификат
build-ca
При генерации основного сертификата в консоли будут отображаться вопросы. Просто нажимаем Enter, т.к. все эти параметры мы заполнили в файле vars.bat
Нажимаем Enter до тех пор, пока не отобразиться строка приглашения
C:\Program Files\OpenVPN\easy-rsa (может отличаться в зависимости от ос)
Далее создаем сертификат и ключ сервера:
build-key-server server
На вопросы так же нажимаем Enter, но не торопимся, в самом конце будет задано два вопроса
Sign the certificate?
1 out of 1 certificate requests certified, commit?
На оба эти вопроса отвечаем Y
Теперь создаем сертификат и ключ клиента:
build-key client
Также не торопимся с ответами, как только увидим строку "Common Name (eg, your name or your server's hostname)" нужно ответить client
В самом конце также будут два вопроса, отвечаем также Y
ВАЖНОЕ ЗАМЕЧАНИЕ: для каждого клиента, нужно будет создать отдельные ключи и называть их client1, client2 или как-то иначе, все зависит от Вашего воображения, и количества потенциальных клиентов. Также не забывайте вводить эти имена при запросе Common Name
Например:
build-key client1
build-key office1
На этом создание файлов сертификатов и ключей завершено.
Все файлы будут лежать в папке C:\Program Files\OpenVPN\easy-rsa\keys\ (может отличаться, зависит от версии ос)
Из этой папки забираем:
ca.crt
dh1024.pem (или dh2048.pem)
server.crt
server.key
продолжение следует!
 

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
небольшая фича, которая избавит вас от напоминания о передёргивании роутера для его перезагрузки.

1 открываем веб интерфейс вашего роутера,
2 заходим в меню, система, запланированные задания,
3 в пустом поле вписываем такую команду:
0 6 * * * reboot
где 0 - минуты, 6 часы, время выбираете на своё усмотрение,
4 нажимаете применить.
если вам нужно удалить расписание перезагрузки - удаляете всю строку и пишете пробел после применяете изменения.
на скрине 1 заполнено время перезагурзки каждые сутки в 6:00
ВНИМАНИЕ! для корректной работы данной функции вам необходимо настроить правильный часовой пояс, для этого заходите в меню, система, система и включаете ntp клиент, далее выбираете из списка часовой пояс europe/kiev, сохраняете и производите синхронизацию с браузером (на устройстве должно быть выставлено точное время) на скрине 2 показано меню настройки. после применяете изменения.
 

Вложения

  • 93.3 KB Просмотры: 24
  • 88.5 KB Просмотры: 20

c0rax

Абонент KS с 2002 года
Регистрация
2/12/17
Адрес
Киев
Телефон
HTC U11 Dual SIM / ThinkPad T580 + WWAN LTE / HTC One M9 / HTC One Dual SIM (M7) / Nokia N900
anaconda, Что за тема? Или это уже стандартная такая идет в 18.06 ?
Я свои девайсы в последний раз обновлял до 17.01, и такого там еще не было.
 

earl

Пользователь
Регистрация
21/12/07
Адрес
Кривой Рог
небольшая фича, которая избавит вас от напоминания о передёргивании роутера для его перезагрузки.
В пакетах watchcat есть, умеет ребутать как по расписанию, так и при пропадании пинга на заданный хост , полезная штука
 

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
тема доступна в релизе 18.06.1.
ставится или с веба, вводите название пакета: luci-theme-material
или с консоли, вводите команды:
opkg update
opkg install luci-theme-material
 
Последнее редактирование:

c0rax

Абонент KS с 2002 года
Регистрация
2/12/17
Адрес
Киев
Телефон
HTC U11 Dual SIM / ThinkPad T580 + WWAN LTE / HTC One M9 / HTC One Dual SIM (M7) / Nokia N900

anaconda

мирный житель
Регистрация
28/6/11
Адрес
Киев, Одесса
Телефон
в подписи
опишу позже, т.к это первые посты после возвращения домой с больницы.
 
Сверху