Page 1 of 5 123 ... LastLast
Results 1 to 15 of 109

Thread: OpenVPN в составе прошивки от энтузиастов

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    Lightbulb OpenVPN в составе прошивки от энтузиастов

    Коллеги, а есть ли смысл собрать openvpn тулчейном энтузиастов? Это позволит:
    • в будущем (потенциально!) включить openvpn в состав прошивки, как в ряде других *wrt прошивок,
    • значительно уменьшить объём пакета, что позволит его запихнуть даже в куцый флеш DIR-320.

    В частности, если действовать по инструкции из первого поста, openvpn потянет за собой зависимые lzo, openssl и uclibc-opt (2,2Mb). От последнего можно будет отказаться. Если собрать со статической линковкой зависимостей, вообще получится единственный бинарник без каких-либо библиотек. Нажористый, правда, около ~1Мб.
    Quote Originally Posted by Slym View Post
    Хотелось бы пустить сетку за длинком в сетку главного офиса при помощи OpenVPN
    делал по ветке http://wl500g.info/showthread.php?t=8880,
    но после
    flashfs save
    flashfs commit <- файл на 2мб больше 65кб и не сохраняет во флеш

    смотрел другие прошивки dd-wrt, но и там чтоб vpn+3g нужна мега версия которая не входит в 320
    1. помогите...
    Last edited by ryzhov_al; 11-02-2011 at 12:27. Reason: spell check

  2. #2
    Quote Originally Posted by ryzhov_al View Post
    в будущем (потенциально!) включить openvpn в состав прошивки, как в ряде других *wrt прошивок,
    Зачем кому-то OpenVPN внутри прошивки? Провайдеры этот функционал не используют. В общем-то, его никто не использует кроме категории людей с ограниченными возможностями\ресурсами. В офисах VPN на базе OpenVPN не подымают, между высоконагруженными серверами OpenVPN не очень хорошо себя показывает, с виндой он вообще не сильно сдружился, коммуникаторы его не поддерживают почти, бла, бла...

    Quote Originally Posted by ryzhov_al View Post
    значительно уменьшить объём пакета, что позволит его запихнуть даже в куцый флеш DIR-320.
    Возвращаясь к 1му вопросу: тем кому действительно нужен OpenVPN, могут купить себе флешку.
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  3. #3
    Quote Originally Posted by FilimoniC View Post
    Зачем кому-то OpenVPN внутри прошивки? Провайдеры этот функционал не используют. В общем-то, его никто не использует кроме категории людей с ограниченными возможностями\ресурсами.
    Согласно твоей логики, к этой категории надо отнести всех, кто прошивается Tomato и DD-WRT-mega. И все товарищи, ставящие openvpn в основную память.
    Давай хотя бы подождём мнения тех, кому это нужно.

    Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.
    Last edited by ryzhov_al; 11-02-2011 at 12:47.

  4. #4
    Quote Originally Posted by ryzhov_al View Post
    Согласно твоей логики, к этой категории надо отнести всех, кто прошивается Tomato и DD-WRT-mega. И все товарищи, ставящие openvpn в основную память.
    Давай хотя бы подождём мнения тех, кому это нужно.
    Поясняю. OpenVPN это "взрослая игрушка" набодобии hamachi и ardunio. Профессионально она нигде не используется за редким исключением. Никто не предоставляет сервисов под нее (почти).

    Ubuntu - африканское слово, означающее "Я не смог установить Slackware"
    OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"

    Quote Originally Posted by ryzhov_al View Post
    Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.
    Он опубликован. ipkg install openvpn. Howto для него в 3 строки. А люди ежедневно вопят "пАмАгиТи наСтойТь ВПН" и не хотят что либо читать. Значит им это на "поиграть" и не представляет собой какое-то решение, способное сильно улучшить их комфорт\бизнес.
    Last edited by FilimoniC; 11-02-2011 at 13:17.
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  5. #5
    Quote Originally Posted by FilimoniC View Post
    Поясняю. OpenVPN это "взрослая игрушка" набодобии hamachi и ardunio. Профессионально она нигде не используется за редким исключением.
    Совсем неправда. Openvpn широко используется для связи территориально разнесённых офисов в одну локальную сеть в небольших конторах. Причём для этого используются как раз наши роутеры. Настроил и забыл. На своём опыте знаю случай, когда о подобной связке не вспоминали годами.
    Что будет плохого в том, что роутеры с нашей прошивкой будут уметь это делать "из коробки"?

  6. #6
    Quote Originally Posted by ryzhov_al View Post
    Совсем неправда. Openvpn широко используется для связи территориально разнесённых офисов в одну локальную сеть в небольших конторах. Причём для этого используются как раз наши роутеры. Настроил и забыл. На своём опыте знаю случай, когда о подобной связке не вспоминали годами.
    Что будет плохого в том, что роутеры с нашей прошивкой будут уметь это делать "из коробки"?
    Еще раз. 99% юзерей это не нужно. И для "совместимости" это не нужно. Это "Фича".

    Любой системный администратор компании с 2мя офисами осилит настройку OpenVPN "и так", и покукпу 2 флешек (на крайняк, потому что в основную память все влезает). В противном случае он нафиг не нужен.

    Что плохого будет: ничего не будет плохого, просто вместо очередного stability-патча будет feature pack, потраченные человекочасы, и в итоге у получится история с MeeGo
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  7. #7
    Quote Originally Posted by FilimoniC View Post
    Ubuntu - африканское слово, означающее "Я не смог установить Slackware"
    OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"
    Улыбнуло.
    Хотя такая категоричность далеко не к месту. В менее цивилизованных, чем Африка странах более актуально другое определение
    OpenVPN - русское слово, означающее "Провайдеры любят блокировать GRE, L2TP-сервер на роутере поднимать я не умею, а еще я люблю тишину. "

    И вообще, OpenVPN вполне себе используется профессионально... Скажу даже больше, именно профессионально она в основном и используется
    Last edited by ded; 11-02-2011 at 14:10.

  8. #8
    Quote Originally Posted by ded View Post
    Улыбнуло.
    Хотя такая категоричность далеко не к месту. В менее цивилизованных, чем Африка странах более актуально другое определение
    OpenVPN - русское слово, означающее "Провайдеры любят блокировать GRE, L2TP-сервер на роутере поднимать я не умею, а еще я люблю тишину. "

    И вообще, OpenVPN вполне себе используется профессионально... Скажу даже больше, именно профессионально она в основном и используется
    В ту же степь.. OpenVPN есть, профессионалы его с легкостью настроят.
    Для домашних юзеров он не нужен чуть более чем полностью. То есть раз он им не нужен, то нет смысла в рюшечках, web-интерфейсах и прочей мишуре.
    Sorry for my bad English.
    Покупайте Отечественных Слонов!!!

  9. #9
    Quote Originally Posted by FilimoniC View Post
    OpenVPN - африканское слово, означающее "Я не смог настроить PPTP\L2TP, а еще я бедный и не могу позволить себе нормальный домашний сервер"
    лично мне непонятно, нафига пускать внутрь периметра кого-либо, пусть даже для авторизации.

  10. #10
    Join Date
    Mar 2009
    Location
    Russia, Moscow
    Posts
    2,119
    Blog Entries
    33
    Quote Originally Posted by ryzhov_al
    Давай хотя бы подождём мнения тех, кому это нужно.

    Мне кажется, что можно поступить проще: опубликовать скомпилированный пакет и посмотреть будет ли его кто-нибудь скачивать.
    +1 Но это имеет смысл только при включении в прошивку -rtn ветки для роутеров с большим флешем ...

    З.Ы. Если звезды зажигают, значит, это кому-то нужно ... (c)

  11. #11
    Quote Originally Posted by ryzhov_al View Post
    Коллеги, а есть ли смысл собрать openvpn тулчейном энтузиастов? Это позволит
    ...[*]значительно уменьшить объём пакета, что позволит его запихнуть даже в маленький флеш.
    Статически собранный, не зависящий от доп. библиотек за пределами прошивки openvpn после strip'а и сжатия UPX получился 912Кб:
    Code:
    $ ldd ./openvpn
            libdl.so.0 => /lib/libdl.so.0 (0x2aabe000)
            libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x2aad1000)
            libc.so.0 => /lib/libc.so.0 (0x2aaf0000)
            ld-uClibc.so.0 => /lib/ld-uClibc.so.0 (0x2aaa8000)
    $ upx --brute ./openvpn
    $ du -h ./openvpn
    912K    ./openvpn
    Размер flashfs на куцей флешке DIR-320 составляет:
    Code:
    $ cat /proc/mtd
    dev:    size   erasesize  name
    mtd0: 00040000 00010000 "boot"
    mtd1: 003b0000 00010000 "linux"
    mtd2: 002fe26c 00010000 "rootfs"
    mtd3: 00010000 00002000 "nvram"
    mtd4: 00010000 00010000 "flashfs"
    64КБ. Wait, oh shi...

    Вопрос снят.

    В любом случае, одного бинарного файла, приложенного к этому посту, с конфигом из первого поста
    темы http://wl500g.info/showthread.php?t=8880 достаточно для запуска openvpn на роутере.
    Last edited by Omega; 17-03-2012 at 14:29. Reason: fixed

  12. #12
    Quote Originally Posted by ryzhov_al View Post
    Статически собранный, не зависящий от доп. библиотек за пределами прошивки openvpn после strip'а и сжатия UPX получился 912Кб:
    Cпасибо за отличную идею!

    Как раз стоит необходимость таскать с собой openvpn, и, раз уж я всё равно порезал в своём билде прошивки лишнее, глупо хранить openvpn с внешними либами (которые не нужны для других приложений) в flashfs, вместо добавления статического openvpn в саму прошивку.

    С последним тулчейном для rt-n собрал полностью статический openvpn 2.2.2 с openssl 1.0.0c. Работает, и размер вроде небольшой - 900 кб после сжатия, но гложет небольшой червяк. Хочется, чтобы openvpn был динамически слинкован с системными либами прошивки, и статически - с openssl, lzo2.
    Насколько я вижу из приведенного вами вывода ldd, вам это удалось. В результате моих плясок на выходе получаются или полностью статические бинарники, или нечто неработоспособное

    Есть какие-то тонкости в модификации линковки openvpn, которые я упустил? Был бы признателен за консультацию.
    Last edited by oblikoamorale; 15-05-2012 at 07:05.

  13. #13
    Собирал более года назад, буду отвечать по памяти.
    Quote Originally Posted by oblikoamorale View Post
    С последним тулчейном для rt-n собрал полностью статический openvpn 2.2.2 с openssl 1.0.0c. Работает, и размер вроде небольшой - 900 кб после сжатия, но гложет небольшой червяк. Хочется, чтобы openvpn был динамически слинкован с системными либами прошивки, и статически - с openvpn, lzo2.
    Насколько я вижу из приведенного вами вывода ldd, вам это удалось. В результате моих плясок на выходе получаются или полностью статические бинарники, или нечто неработоспособное
    Насколько помню, я специально собирал зависимые библиотеки исключительно в статическом виде, поэтому во время линковки openvpn всё получилось automagically.

    Могу предложить идею пересобрать openvpn с более легковесной реализацией SSL, например libpolarssl или libmatrixssl как это сделано для VPN-сервера в новой прошивке RT-N66u. Но это в случае, если не тяжко допиливать код.

  14. #14
    Quote Originally Posted by ryzhov_al View Post
    Собирал более года назад, буду отвечать по памяти.
    Насколько помню, я специально собирал зависимые библиотеки исключительно в статическом виде, поэтому во время линковки openvpn всё получилось automagically.
    Да, логично. Кажется, openssl и так по дефолту собирается в статике, а вот lzo2 была в двух вариантах, и, видимо, configure openvpn подхватывал динамический экземпляр.
    Ещё вопрос, возможно, глупый: для динамической линковки с либами тулчейна/прошивки нужно предпринимать какие-то дополнительные телодвижения?

    Quote Originally Posted by ryzhov_al View Post
    Могу предложить идею пересобрать openvpn с более легковесной реализацией SSL, например libpolarssl или libmatrixssl как это сделано для VPN-сервера в новой прошивке RT-N66u. Но это в случае, если не тяжко допиливать код.
    Тоже вариант. Можно подумать, но не очень хочется экспериментировать со стабильностью. Openssl тяжеловата, но не смертельно.

  15. #15
    Quote Originally Posted by oblikoamorale View Post
    Ещё вопрос, возможно, глупый: для динамической линковки с либами тулчейна/прошивки нужно предпринимать какие-то дополнительные телодвижения?
    Для openvpn не помню, но процесс можно контролировать самому. На примере libusb:

    • Статическая линковка:
    Code:
    $ gcc -o 25volt main.o -L/staging_dir/opt/lib libusb.a
    • Динамическая линковка:
    Code:
    $ gcc -o 25volt main.o -L/staging_dir/opt/lib -lusb
    Да, забыл сказать. С библиотеками тулчейна (gcc+uclibc) софт будет слинкован динамически, библиотеки будут искаться в папке тулчейна, если только вы не указали ключ -nostdlibs.
    Last edited by ryzhov_al; 15-05-2012 at 09:36.

Page 1 of 5 123 ... LastLast

Similar Threads

  1. Настройка клиента и сервера OpenVPN на роутере
    By OlegSV in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 211
    Last Post: 05-05-2017, 08:17
  2. Проблемы с OpenVPN. Прошу помощи!
    By idtelecom in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 296
    Last Post: 02-05-2016, 18:10
  3. Replies: 83
    Last Post: 11-12-2012, 18:31
  4. HowTo install OpenVPN server
    By Tamadite in forum WL-500g/WL-500gx Tutorials
    Replies: 41
    Last Post: 31-05-2012, 20:41

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •