The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз свободного безопасного VPN-демона GoVPN 3.0

03.05.2015 19:24

Состоялся релиз свободного VPN-демона GoVPN 3.0, предназначенного для создания шифрованных аутентифицированных каналов связи поверх UDP. Реализация ориентирована на высокую безопасность и простоту реализации. Программа полностью написана на языке Go и распространяется под лицензией GPLv3. Поддерживается работа в GNU/Linux и FreeBSD.

Для аутентификации участников соединения используется аутентифицируемый по парольным фразам протокол обмена ключами DH-A-EKE (Diffie-Hellman Augmented Encrypted Key Exchange), устойчивый к атакам по подбору паролей по словарю. При компрометации БД сервера DH-A-EKE всё-равно не позволит представиться клиентом, не зная целого пароля. Также имеется защита от атак повторного воспроизведения, дешифровки сохранённого трафика даже при компрометации парольной фразы. Кроме обеспечения конфиденциальности есть возможность скрывать как размер сообщений, так и время их возникновения, путём генерирования постоянного шумового трафика.

Среди новшеств третьей версии, по-сравнению со второй, можно отметить:

  • Сообщения согласования канала связи стали неотличимы от шума (так же как и транспортные);
  • Злоумышленник имеет меньше шансов заставлять сервер потреблять энтропию; появилась real-time статистика соединений;
  • Конфигурация задаётся для каждого клиента отдельно, а не глобально;
  • Возможность скрытия размера сообщений, за счёт добавления шума;
  • Возможность скрытия времени возникновения пакетов, за счёт константного по-скорости трафика;
  • EKE-протокол заменён на Augmented-EKE, который предотвращает возможность представиться клиентом даже при компрометации базы данных сервера, так как он хранит не общий ключ, а только verifier (проверяльщик) от него.


  1. Главная ссылка к новости (https://lists.cypherpunks.ru/p...)
  2. OpenNews: Релиз свободного безопасного VPN-демона GoVPN 2.0
  3. OpenNews: Увидел свет OpenVPN 2.3.0
  4. OpenNews: VPN-сервер SoftEther VPN открыт под лицензией GPLv2
Автор новости: Sergey
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/42155-govpn
Ключевые слова: govpn, vpn
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (47) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Рудвульф (?), 20:49, 03/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Кто то трогал это уже ручками?
     
     
  • 2.2, Аноним (-), 21:17, 03/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Лучше палочкой.
     
  • 2.12, Аноним (-), 18:15, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По идее, оно вообще не должно работать - написано, что безопасный же.
     
  • 2.47, Alex (??), 10:23, 13/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Я собрал, запустил между двумя виртуалками, поигрался, полет нормальный. Единственное что, не удобно все собирать руками, по причине отсутствия вменяемой документации, в остальном все норм.
     
     
  • 3.48, Sergey (??), 10:43, 13/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А можете сказать что не хватает, чего стоит доработать в документации?
     

  • 1.3, Аноним (-), 21:55, 03/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –14 +/
    Вот было бы оно на каком то другом языке, можно было бы посмотреть, а так оно само себя назвало безопасным
     
     
  • 2.8, Вадик (??), 00:31, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Шикарно, в циаты суну!
     
     
  • 3.10, Аноним (-), 17:18, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    А с девками не пробовал?
     
     
  • 4.13, Аноним (-), 18:17, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Здесь таких нет.
     
  • 2.11, Аноним (-), 17:18, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Вот было бы оно на каком то другом языке, можно было бы
    > посмотреть, а так оно само себя назвало безопасным

    Оно написано на лучшем языГе для такого . Так что инна.

     

  • 1.4, YetAnotherOnanym (ok), 22:08, 03/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Звучит интересно, но самому пощупать времени нет, а обзоров тоже пока не вышло. Я так понимаю, демон работает по своему протоколу, в котором реализованы алгоритмы, которые автор счёл "годными". Например, в качестве алгоритма шифрования данных прибит гвоздями Salsa20. Имхо - не очень верно с точки зрения перспективы, нет гарантии, что через год-два-три какой-нибудь Куртуа не найдёт в алгоритме уязвимость (пусть даже и умозрительную).
     
     
  • 2.26, Sergey (??), 11:14, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > прибит гвоздями Salsa20. Имхо - не очень верно с точки
    > зрения перспективы, нет гарантии, что через год-два-три какой-нибудь Куртуа не найдёт
    > в алгоритме уязвимость (пусть даже и умозрительную).

    Salsa20 уже более 10 лет существует и имеет множество криптоанализов. А заменить его на что-то другое: в общем-то поменять строчек пять кода наверное. До сих пор нет доказательств что ECC безопасность полностью зависит от проблемы на которой основана, но ECC используют даже спецслужбы уже.

     

  • 1.5, Аноним (-), 22:13, 03/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Решение проблемы сервера за провайдерским NAT-от, вот что заставит оторваться от OpenVPN.
     
     
  • 2.6, Штатив (?), 22:22, 03/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И как к нему обращаться? По какому адресу?
     
     
  • 3.28, Аноним (-), 16:05, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    STUN, NAT-PMP
    DDNS или передача проброшенного порта (внешних IP:порт), например, через публичный сервер XMPP.
     
     
  • 4.29, Sergey (??), 16:11, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    PMP это только, грубо говоря, для домашних условий. Если дома NAT мешает жить, то надо исправлять именно эту проблему, а не пытаться её обходить костылями. Надо активнее начинать использовать и подталкивать провайдеров к IPv6, а не мириться с неработающим Интернетом (NAT фактически ломает его архитектуру) и пытаться жить в этих условиях. STUN это зависимость всё-равно от какого-то третьего лица. Уж лучше поднимать туннели до IPv6-брокеров или Teredo.
     

  • 1.7, Ivan_83 (?), 22:41, 03/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    На хубре уже было.
    Оно до 100 мегабит на одном ядре хеона вытягивает.
    И я так понял не особо параллелится.

    Ядерная реализация или реализация на сях, без SSE/AVX оптимизации сальсы дала бы по полтора гигабита с ядра того же хеона.

     
     
  • 2.17, Аноним (-), 22:59, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Такие мелочи авторов не интересуют. Главное, что на гоу.
     
     
  • 3.25, Sergey (??), 11:10, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Такие мелочи авторов не интересуют. Главное, что на гоу.

    В целом вы правы. Главное: простота кода, возможность чтения кода, соответственно малый размер кода. Если код портируемый, то один и тот же кусок кода работает под разными ОС, а не под каждую писать совершенно разный. Человечество продемонстрировало что сложность и C означают невозможность в течении уж 15 лет написать грамотную реализацию TLS. Либо N-месяцев разработки на Go, либо NN лет на C под разные ОС и это будет нечитабельно (много кода) и соответственно недоверяемо.

     
     
  • 4.32, Ivan_83 (?), 22:54, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    BSD, Linux как раз писали на сях много лет.
    Видимо им нельзя доверять, ведь их долго писали и они не на Go.
    Перепишите их на GO, покажите всем класс! :)

    Мы уже общались на эту тему на хубре.
    Повторю: си это универсальный язык для всех ОС, с отличной портируемостью и производительностью.
    Если хочется максимального распространения кода в разных ОС - то только си.

    Ваше мнение о том что си долго кодить и дыры получаются зачтено.

    Моё личное мнение: GO это тормозно, громоздко (в памяти), нифига не переносимо (нельзя взять кусок кода и утащить в ядерный модуль любимой ОС).
    В остальном, я бы написал на сях и не парился, кода там совсем мало, фобии к сям у меня нет.
    Go, php, java, perl, python - они все хороши, но не для таких вот применений. Максимум на них обкатать протокол и переписать на си.

     
     
  • 5.33, Sergey (??), 23:07, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    И вам я уже отвечал: вы не представляете трудозатрат. Никто не спорит что в идеале на C лучше, в теории, а ещё лучше по производительности будет на ассемблере. Либо оно будет пусть помедленнее (хотя лично мне 100 Mbps на современном процессоре -- за глаза) но написано и рабочее, либо это так и будут мечты и росскозни о том как бы было здорово написать подобное на C, но без результата и, даже если и написав, то долгое время требующего отладки и анализа, которые не дают результат годный для уверенного применения.

    И я уже говорил что вы до сих пор так и не поняли суть: цель это получить код который можно прочитать, проанализировать. Тонны кода на C никто читать не будет. Либо производительность, либо безопасность/гарантии/надёжность/спокойствее/неспешное, либо на порядки большие трудозатраты... ради того чтобы ускорить в несколько раз? На порядки большее время разработки для ускорения в разы? С экономической точки зрения опять же выходит проще купить железо, о чём вам и втолковываю. Стоимость разработки ПО в разы выше стоимости железа. Это просто факт. Если вы считаете что на C подобное надёжно переписать это всего ничего, то я уверен что у вас крайне мало опыта написания качественного надёжного *криптографического* ПО и поэтому вы даёте такие оценки. Если вы считаете что оно того стоит... ну бывают такие ситуации когда например на космическом аппарате стоимость железа всё же выше софта, бывает.

     
     
  • 6.37, Ivan_83 (?), 00:46, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это вы меня тролите чтобы я взял и переписал это в CVPN Си переносим, ассемблер... большой текст свёрнут, показать
     
     
  • 7.41, Sergey (??), 06:11, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Я -- троллю Особенно когда API разные C очень переносим То есть OpenSSL не нуж... большой текст свёрнут, показать
     
     
  • 8.42, Ivan_83 (?), 08:07, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    У меня вот прекрасно работают программы под фрёй и чуть хуже в линухе Там слишк... большой текст свёрнут, показать
     
     
  • 9.43, Sergey (??), 08:37, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Одни и те же, ядерные Ну это же враньё А компилируя GCC C-шный код вы знаете ч... большой текст свёрнут, показать
     
     
  • 10.44, Ivan_83 (?), 14:26, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Программы а не модули драйвера С гцц шлангом можно получить ассемблерный листин... большой текст свёрнут, показать
     
  • 5.34, Sergey (??), 23:18, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Вы не так интерпретируете На C можно кодить качественно Вопрос трудозатрат На... большой текст свёрнут, показать
     
     
  • 6.38, Ivan_83 (?), 00:52, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    >> си.
    > Чем это обосновано? Особенно удивляет мешанина из динамически типизированных языков и интерпретируемых,
    > с компиляторами и статической типизацией. Ваш мир делится на C и
    > не C (ну ok, ассемблер ещё)? Задумайтесь для чего изобрели множество
    > других языков. Не от нечего делать, поверьте, а от того что
    > кода стали писать в тысячи раз больше чем когда появился язык
    > C и люди начали делать какие-то выводы из своего опыта. Железо
    > становится доступнее людям: когда-то компьютер это была роскошь как и автомобиль.
    > Сейчас многие легко могут взять и докупить ПК/ноутбук/сервер. И хотят получить
    > качественный результат, да поменьше тратя своё время разработчика.

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

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

    Про время-деньги - см пост выше.

     
  • 5.35, Sergey (??), 23:26, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Моё личное мнение: GO это тормозно, громоздко (в памяти), нифига не переносимо
    > (нельзя взять кусок кода и утащить в ядерный модуль любимой ОС).

    Более того. Зачем??? перетаскивать что-то в ядро? Очевидно я думаю что опять же хочется столь критичной (для вас) скорости из-за того что меньше дорогих (реально дорогих) переключений контекста программ в процессоре. Но если смотреть с точки зрения безопасности, то как-раз из ядра хочется вытаскивать как можно больше всего в userspace потому-что надёжнее, спокойнее, более изолировано, в случае краха не потянет за собой всё, в случае недобротного модуля/части ядра не будет скомпрометировано всё. Если вам надо решить проблему производительности, а мне безопасности -- то надо удешевить переключение контекста. Опять же вы готовы затратить кучу времени на написание сложной под-вопросом качества ядерной части, которая сильно ставит под вопрос безопасность системы, вместо того чтобы вынести в userspace, продвигать микроядерные ОС. В чём проблема? Наверное в том что Intel имеет крайне убогую архитектуру в которой контекст это очень дорого. В отличии от RISC систем где например тот же QNX не проседал на 50% из-за переключений контекста. Вам нужна скорость. Мне, моим целям -- безопасность. Userspace это бОльшая гарантия того что в случае краха оно не потянет за собой остальное. Плюс userpace это опять же портируемо: работаем с TAP как с файлом и радуемся, а не пишем с совершенно разным API куски кода ради экономии переключения контекста. Кстати любопытны абсолютные величины чего мы сэкономим. Результат я априори знаю будет такой что овчинка выделки не стоит чтобы даже задумываться о том чтобы тратить время на ядерную реализацию. Я много работал и с 10Gbps сетями в которых крутятся виртуальные машины через TAP-интерфейсы. Overhead есть, но такой что можно закрыть глаза.

     
     
  • 6.39, Ivan_83 (?), 01:13, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Если вы не в курсе - там ещё и копирование данных есть, если всякие хаки не испо... большой текст свёрнут, показать
     
  • 2.36, Sergey (??), 23:49, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, ну просто для справки. С 3.1 версии оно стало почти в три раза быстрее. Треть процессорного времени отъедается для 100Mbps.
     

  • 1.9, iZEN (ok), 15:27, 04/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Чего-то в портах FreeBSD этого не вижу. Как оно распространяется? Блобом что ли?
     
     
  • 2.16, Аноним (-), 22:34, 04/05/2015 [^] [^^] [^^^] [ответить]  
  • –3 +/
    > Чего-то в портах FreeBSD этого не вижу. Как оно распространяется? Блобом что ли?

    Авторов, ожидаемо, не интересуют маргинальные ОС.

     
     
  • 3.18, Аноним (-), 00:01, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Первый абзац новости говорит об обратном.
     
  • 2.20, Аноним (-), 09:51, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Если в портах чего-то нет, значит, это вы поленились сделать порт.
     
     
  • 3.22, Sergey (??), 11:05, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    В чём проблема поставить ПО: wget, gpg -v, tar xf, make? Написание софта не подразумевает в обязательном порядке создание портов. Это требует время, много, проверок на качество. Времени может быть недостаточно у авторов.
     
     
  • 4.30, iZEN (ok), 19:18, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > В чём проблема поставить ПО: wget, gpg -v, tar xf, make? Написание
    > софта не подразумевает в обязательном порядке создание портов. Это требует время,
    > много, проверок на качество. Времени может быть недостаточно у авторов.

    Необязательно.

    Мантейнеров FreeBSD, значит, пока не заинтересовал сей концепт на Go.


     
     
  • 5.31, Sergey (??), 19:22, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Хм, то есть если интересное то обязательно будет в портах? Забавно.
     
  • 2.24, Sergey (??), 11:07, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Чего-то в портах FreeBSD этого не вижу. Как оно распространяется? Блобом что
    > ли?

    А перейти по ссылке на официальный сайт и увидеть самые обычные тарболлы?

     

  • 1.19, Аноним (-), 05:44, 05/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Пока версталась новость вышла версия 3.1
     
  • 1.21, Ононим (?), 10:22, 05/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Так оно что, покая я думаю, какую кнопку нажать, генерирует мне трафик? Намуя оно такое надо на моём "анлимитном" 3G от мегавони с ограничением до 64к после энных мегабайт.
     
     
  • 2.23, Sergey (??), 11:05, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Так оно что, покая я думаю, какую кнопку нажать, генерирует мне трафик?
    > Намуя оно такое надо на моём "анлимитном" 3G от мегавони с
    > ограничением до 64к после энных мегабайт.

    Это опциональная возможность и она выключена по умолчанию. Если вам необходимо скрыть timestamp и размер пакетов, то других вариантов у вас в любом случае надёжных не будет.

     
     
  • 3.27, Ононим (?), 12:35, 05/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Кажется, Саломаа говаривал в своей замечательной книге "прикладная криптография" - не шифруйте зашифрованное. Тем не менее, если есть что скрывать, найдётся куча способов реализовать педерачу драных.
     
     
  • 4.40, asd (??), 02:36, 06/05/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Кажется, Саломаа говаривал в своей замечательной книге "прикладная криптография" - не шифруйте зашифрованное.

    https://ru.wikipedia.org/wiki/Triple_DES

     

  • 1.45, CHIP0K (?), 19:09, 06/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    чет новенькое...
     
  • 1.46, Аноним (-), 20:07, 06/05/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Саломаа ваш значит тупо гонит на стойкое шизокрипто, аэнбешник походу или аналогичный скам, ну то есть хуже таксиста короче..
     
  • 1.49, Аноним (-), 02:08, 07/01/2016 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А где клиент и сервис к нему?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру