[Entware] Поднимаем OpenVPN сервер
-
- Администратор
- Сообщения: 1912
- Зарегистрирован: 09 авг 2015, 15:33
-
- Сообщения: 2
- Зарегистрирован: 14 сен 2016, 20:27
-
- Сообщения: 445
- Зарегистрирован: 12 авг 2015, 14:14
- Откуда: Смоленск
-
- Сообщения: 10
- Зарегистрирован: 18 сен 2016, 17:46
Всё прекрасно завелось на Keenetic Giga II.
Связал две сетки в разных географических регионах.
Доволен.
Потом по не связанной проблеме решил посмотреть wireshark-ом трафик на WANовском интерфейсе... и обнаружил, что он прекрасно "видит" OpenVPN соединения.
Т.е. несложный DPI провайдера (что собственно и происходит в Китае) способен "увидеть" именно OpenVPN трафик (видимо по паттернам handshake и тп - я не спец).
С учётом того, что я искал очень долгосрочное решение, которые выстояло бы очередное "закручивание гаек" встал вопрос в обфускации OpenVPN трафика.
Поискав решения вышел на obfsproxy, хотел попросить его "упаковать" в ветке про добавление пакетов... но так и не понял его статус и где найти исходники.
В общем поскольку это относится непосредственно к теме OpenVPN, прошу подсказать и буду рад советам - чем обфусцировать трафик OpenVPN и любые адекватные сопутствующие мысли включая сборку obfsproxy, если это возможно или кто то делал.
Спасибо.
Связал две сетки в разных географических регионах.
Доволен.
Потом по не связанной проблеме решил посмотреть wireshark-ом трафик на WANовском интерфейсе... и обнаружил, что он прекрасно "видит" OpenVPN соединения.
Т.е. несложный DPI провайдера (что собственно и происходит в Китае) способен "увидеть" именно OpenVPN трафик (видимо по паттернам handshake и тп - я не спец).
С учётом того, что я искал очень долгосрочное решение, которые выстояло бы очередное "закручивание гаек" встал вопрос в обфускации OpenVPN трафика.
Поискав решения вышел на obfsproxy, хотел попросить его "упаковать" в ветке про добавление пакетов... но так и не понял его статус и где найти исходники.
В общем поскольку это относится непосредственно к теме OpenVPN, прошу подсказать и буду рад советам - чем обфусцировать трафик OpenVPN и любые адекватные сопутствующие мысли включая сборку obfsproxy, если это возможно или кто то делал.
Спасибо.
-
- Администратор
- Сообщения: 1912
- Зарегистрирован: 09 авг 2015, 15:33
obfsproxy - это программа на питоне. Боюсь тяжеловата будет для роутера.
https://pypi.python.org/pypi/obfsproxy
Если есть минимальные навыки программирования, то можете самостоятельно собрать.
Общая инструкция - https://github.com/Entware-ng/Entware-n ... on-modules
Но тут одна "закавыка" - для mipsel мы не выкладываем компилятор gcc.
Есть немного "старенький" gcc тут - http://forum.keenetic.net/topic/409-gcc ... тоятельно/
Но можем собрать и выложить новый gcc. Создайте доп. тему, если возьметесь за дело....
https://pypi.python.org/pypi/obfsproxy
Если есть минимальные навыки программирования, то можете самостоятельно собрать.
Общая инструкция - https://github.com/Entware-ng/Entware-n ... on-modules
Но тут одна "закавыка" - для mipsel мы не выкладываем компилятор gcc.
Есть немного "старенький" gcc тут - http://forum.keenetic.net/topic/409-gcc ... тоятельно/
Но можем собрать и выложить новый gcc. Создайте доп. тему, если возьметесь за дело....
-
- Сообщения: 10
- Зарегистрирован: 18 сен 2016, 17:46
To zyxmon , интересное предложение. Но если obfsproxy на пайтоне (я видел в инете несколько упоминаний, одни говорят на Go, другие C++, третьи - пайтон, сдаётся мне что и реинкарнаций у этого obfsproxy много) - то действительно тяжеловато.
Поэтому прежде чем взяться, хотелось бы варианты решения основной проблемы посмотреть - маскирование OpenVPN трафика от DPI.
Например только что прочитал про stunnel. Если пускать OpenVPN по нему, то для DPI это как https. Но это двойное (и не нужное) шифрование...
Наверняка есть и другие варианты.
Поэтому прежде чем взяться, хотелось бы варианты решения основной проблемы посмотреть - маскирование OpenVPN трафика от DPI.
Например только что прочитал про stunnel. Если пускать OpenVPN по нему, то для DPI это как https. Но это двойное (и не нужное) шифрование...
Наверняка есть и другие варианты.
-
- Сообщения: 10
- Зарегистрирован: 18 сен 2016, 17:46
Сообщаю, что проблема решена.
В пакете Entware есть утилита stunnel, её версия чуть чуть устарела (опция verify = N деприкейтед, в последних релизах используются опции requireCert\verifyChain\verifyPeer).
С её помощью создаётся SSL туннель, который внешне (для DPI) очень плохо отличим от https:443.
Поскольку утилита stunnel есть в репо огромного числа систем (например тот же pfSense), то туннель создаётся с большим разнообразием endpoints.
На mipsel встала прекрасно и заработало.
Есть некоторая морока с сертификатами (лучше использовать самоподписанные, меньше гемороя - я всё же использовал подписанные, от своего CA).
И я пустил OpenVPN через stunnel. Вероятно с OpenVPN можно снять все функции шифрования и идентификации (двойное шифрование вряд ли нужно, тем более perfomance issue), оставив функцию соединения сетей.
work like a charm
в русском инете несложно найти мануалы, тем более в английском
каких то особенностей поднятия stunnel на кинетиках не обнаружил
В пакете Entware есть утилита stunnel, её версия чуть чуть устарела (опция verify = N деприкейтед, в последних релизах используются опции requireCert\verifyChain\verifyPeer).
С её помощью создаётся SSL туннель, который внешне (для DPI) очень плохо отличим от https:443.
Поскольку утилита stunnel есть в репо огромного числа систем (например тот же pfSense), то туннель создаётся с большим разнообразием endpoints.
На mipsel встала прекрасно и заработало.
Есть некоторая морока с сертификатами (лучше использовать самоподписанные, меньше гемороя - я всё же использовал подписанные, от своего CA).
И я пустил OpenVPN через stunnel. Вероятно с OpenVPN можно снять все функции шифрования и идентификации (двойное шифрование вряд ли нужно, тем более perfomance issue), оставив функцию соединения сетей.
work like a charm
в русском инете несложно найти мануалы, тем более в английском
каких то особенностей поднятия stunnel на кинетиках не обнаружил
-
- Сообщения: 29
- Зарегистрирован: 23 авг 2015, 22:41
viktorkruglov писал(а):маскирование OpenVPN трафика от DPI
...
искал очень долгосрочное решение, которые выстояло бы очередное "закручивание гаек"
Еще один способ:
Вариант с пробросом (и с шифрованием) по отдельным портам или через SOCKS5 прокси (без заворота всего трафика) есть в вики (писАлся для zyxware !!! но отличия должны быть минимальны )
http://keenetic.zyxmon.org/wiki/doku.ph ... sh-tunelej
-
- Сообщения: 10
- Зарегистрирован: 18 сен 2016, 17:46
To laforsh , спасибо.
Несомненно SSH туннель тоже вариант. Но насколько мне известно, современные DPI решения видят-таки его именно как SSH (та же проблема что и OpenVPN). К примеру последний апдейт China GFW, судя по отзывам, видит и SSH. Ну и начинает дропать пакеты.
А вот отличить https:443 от упакованного внутрь "более плотного" трафика SSL stunnel для DPI намного сложнее и требуется глубокий machine learning и прочие "нелобовые" методы.
Вопрос в том, отключать ли шифрование в самом OpenVPN через stunnel для избежания оверхеда с двойным шифрованием...
Несомненно SSH туннель тоже вариант. Но насколько мне известно, современные DPI решения видят-таки его именно как SSH (та же проблема что и OpenVPN). К примеру последний апдейт China GFW, судя по отзывам, видит и SSH. Ну и начинает дропать пакеты.
А вот отличить https:443 от упакованного внутрь "более плотного" трафика SSL stunnel для DPI намного сложнее и требуется глубокий machine learning и прочие "нелобовые" методы.
Вопрос в том, отключать ли шифрование в самом OpenVPN через stunnel для избежания оверхеда с двойным шифрованием...
-
- Сообщения: 7
- Зарегистрирован: 04 янв 2017, 06:58
- Откуда: Казань
Добрый день.
У меня в логах, при выполнении команды через SSH:
Появляется сообщение:
На что может повлиять данная ошибка? Спасибо.
Zyxmon писал(а):Источник цитаты Для кинетиков с NDMS V2 скрипт запуска выглядит так
Код: Выделить всё
# Make sure the tunnel driver is loaded
if ( !(lsmod | grep -q "^tun") ); then
insmod /lib/modules/2.6.36/tun.ko
fi
У меня в логах, при выполнении команды через SSH:
Код: Выделить всё
/opt/etc/init.d/S20openvpn restart
Появляется сообщение:
Код: Выделить всё
insmod: can't insert '/lib/modules/2.6.36/tun.ko': No such file or directory
Shutting down openvpn... done.
Starting openvpn... done.
На что может повлиять данная ошибка? Спасибо.
<Keenetic Ultra II> <Entware-3х>
Вернуться в «Entware/Qnapware/Optware/Zyxware - обсуждаем репозитории пакетов»
Кто сейчас на конференции
Всего 3 посетителя :: 0 зарегистрированных, 0 скрытых и 3 гостя (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (162) здесь было 16 ноя 2019, 18:33
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя