URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 115501
[ Назад ]

Исходное сообщение
"Для включения в состав ядра Linux предложен VPN WireGuard"

Отправлено opennews , 06-Окт-18 14:37 
Для включения в состав ветки net-next, на основе которой формируется начинка сетевой подсистемы для будущего выпуска ядра Linux, предложен (https://lkml.org/lkml/2018/10/6/137) набор патчей с седьмой версией VPN-интерфейса от проекта WireGuard (https://www.wireguard.io/). Проект предлагает минималистичную реализацию VPN на основе современных методов шифрования, очень быструю, простую в использовании и лишённую усложнений. WireGuard развивается с 2015 года, прошёл аудит и формальную верификацию (https://www.wireguard.com/formal-verification/) применяемых методов шифрования. VPN уже хорошо зарекомендовал себя в ряде крупных внедрений, обрабатывающих большие объёмы трафика.


В WireGuard применяется концепция маршрутизации по ключам шифрования, которая подразумевает привязку к каждому сетевому интерфейсу закрытого ключа и применение для связывания открытых ключей. Обмен открытыми ключами для установки соединения производится по аналогии с SSH. Для согласования ключей и соединения без запуска отдельного демона в пространстве пользователя применяется механизм Noise_IK из Noise Protocol Framework (http://noiseprotocol.org/), похожий на поддержание authorized_keys в SSH. Передача данных осуществляется через инкапсуляцию в пакеты UDP. Поддерживается смена IP-адреса VPN-сервера (руминг) без разрыва соединения и автоматической перенастройкой клиента.

Для шифрования используется (https://www.wireguard.io/protocol/)  потоковый шифр ChaCha20 (http://cr.yp.to/chacha.html) и алгоритм аутентификации сообщений (MAC) Poly1305 (http://cr.yp.to/mac.html), разработанные Дэниелом Бернштейном (Daniel J. Bernstein (http://cr.yp.to/djb.html)), Таней Ланге
(Tanja Lange) и Питером Швабе (Peter Schwabe). ChaCha20 и Poly1305 позиционируются как более быстрые и безопасные аналоги AES-256-CTR и HMAC,  программная реализация которых позволяет добиться фиксированного времени выполнения без задействования специальной аппаратной поддержки. Для генерации совместного секретного ключа применяется протокол Диффи-Хеллмана на эллиптических кривых в реализации Curve25519 (http://cr.yp.to/ecdh.html), также предложенной Дэниелом Бернштейном. Для хэширования используются алгоритм BLAKE2s (RFC7693) (https://www.opennet.ru/opennews/art.shtml?num=35676).

Кроме применения быстрых алгоритмов для повышения производительности было решено отказаться от использования предоставляемого ядром  crypto API, который достаточно медленный из-за дополнительной буферизации. Собственные реализации примитивов ChaCha20, Poly1305, Blake2s и Curve25519 вынесены в отдельную библиотеку Zinc (https://www.opennet.ru/opennews/art.shtml?num=49064), которая  может дополнить текущий crypto API и предоставить основу для будущей переработки.


При тестировании (https://www.wireguard.com/performance/) производительности WireGuard  продемонстрировал в 3.9 раза более высокую пропускную способность и в 3.8 раз более высокую отзывчивость, по сравнению с OpenVPN (256-bit AES c HMAC-SHA2-256). По сравнению с IPsec (256-bit ChaCha20+Poly1305 и AES-256-GCM-128) в WireGuard наблюдается небольшое опережение по производительности (13-18%) и снижению задержек (21-23%).

URL: https://lkml.org/lkml/2018/10/6/137
Новость: https://www.opennet.ru/opennews/art.shtml?num=49401


Содержание

Сообщения в этом обсуждении
"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено A.Stahl , 06-Окт-18 14:37 
Что-то эта штука не выглядит как то, что должно быть в ядре. Они бы ещё туда аудиоплеер запихнули и парсер TeX.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено AnonPlus , 06-Окт-18 14:42 
Оно как раз и обгоняет OpenVPN за счёт того, что выполнено в виде модуля ядра. Теперь проект достиг зрелости (Линус, помню, восхищался тем, как минималистично и красиво написан код).

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено A.Stahl , 06-Окт-18 14:52 
Если аудиоплеер впихнуть в ядро, то он тоже будет обгонять юзерспейсные плееры. Но это не повод для впихивания.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено AnonPlus , 06-Окт-18 15:19 
Аудиоплееры не страдают от "тормознутости" и не нагружают заметно процессор. А вот WireGuard позволяет более полно утилизировать пропускную способность и хорош тем, что снижает нагрузку на всяких там роутерах, где процессоры не особо мощные.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Crazy Alex , 06-Окт-18 16:49 
А что он забыл на роутерах?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено НяшМяш , 06-Окт-18 17:30 
Вломился вот и спрашивает "что там про меня Crazy Alex думает?"

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Fyjybv755 , 06-Окт-18 17:44 
> А что он забыл на роутерах?

Действительно, VPN на роутере. Что может быть глупее? Разве что фаервол на роутере.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено abi , 08-Окт-18 09:27 
OpenVPN на роутере - это 10 mbps, потому что армовая дрянь, которая там стоит, не может в математику.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено имя , 10-Окт-18 00:05 
Не ARM, а MIPS. OpenVPN такая дрянь, что даже на мощных x86 гигабит не тянет.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 11:40 
Современные ARM таки и с openvpn могут довольно много. Однако в целом openvpn давно превратился в энтерпрайзный переросток, с кучей дурных проблем. И таки он очень тормознут.

А если
> По сравнению с IPsec

...то wireguard настраивать проще в 20 раз, потому что ipsec явно делали инопланетяне :)


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено AnonPlus , 06-Окт-18 23:42 
Подключать роутер в качестве клиента. Либо поднять на роутере сервер и подключаться к своему домашнему интернету из публичных мест.

Это весьма распространённый сценарий.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 04:38 
А на самом деле, зачем?
Обычно впн идет как приложение для виндового трея.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Shwarma , 09-Окт-18 14:34 
>Обычно впн идет как приложение для виндового трея.

Куда идёт?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 05:20 
А куда еще засунуть vpn, чтобы на всех домашних устройствах не испытывать последствий от действий роскомнадзора?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 11:42 
> А что он забыл на роутерах?

Роутер как бы самое логичное место для того чтобы на нем vpn запустить. Он всегда активен, всегда раздает интернет другим. Его можно usp'ом подпереть хоть на неделю. Так что можно 1 раз настроить впн на 1 устройстве, которое собой прикроет остальных. И будет работать как батарейка энержайзер, не требуя особого внимания к себе.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Fyjybv755 , 06-Окт-18 17:48 
> Если аудиоплеер впихнуть в ядро, то он тоже будет обгонять юзерспейсные плееры. Но это не повод для впихивания.

Ту часть плеера, которая критична по скорости, уже давно впихнули. Слышали про такую штуку — ALSA?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено shatsky , 07-Окт-18 11:01 
Будешь рассуждать про отсутствие поводов для впихивания, когда тебе придется объяснять начальству, почему после развертывания впн скорость передачи в разы меньше по сравнению с пропускной способностью арендованного канала. Впн не для обхода блокировок придумали, так-то. Ну и про ALSA тут уже написали.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 08-Окт-18 19:12 
Вы передаёте в аудиоплеер гигасы данных в секунду? Зачем?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено marios , 14-Окт-18 00:22 
А то, что в ядре есть модули для CIFS и NFS — достаточно прикладных штук, не смущает?
Никто же не заставляет компилирировать или подключать данный модуль.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 06-Окт-18 16:39 
>(Линус, помню, восхищался тем,
> как минималистично и красиво написан код).

Пральна, т-щ Линус!, нужно втащить в ядро бОООльше минималистичного, а то оно кокраснело, разбухло и облотварилось!


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено gpyra , 07-Окт-18 18:19 
> Линус, помню, восхищался тем, как минималистично и красиво написан код

Ну не прям чтобы восхищался, он просто заметил что оно не такое дерьмо, как OpenVPn и подобные


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено DmA , 08-Окт-18 09:28 
>Линус, помню, восхищался тем, как минималистично и красиво написан код

Таня же писала код :)


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено DmA , 08-Окт-18 09:40 
Ну и Таня Ланге - профессор в нидердланском университете, на страничке опубликован  её открытый GPG ключ для переписки, пишет код сама, студетов обучает криптологии.
Интересно, в России есть хоть один профессор с кафедры "защита информации" или "информационная безопасность", который на своей страничке свой открытый GPG ключ опубликовал, да ещё и код пишет и главное публикует под открытой лицензией?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 08-Окт-18 10:47 
> в России есть хоть один профессор

Нет. Опровергните, тогда изменю мнение, основанное на обучении в бауманке.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено DmA , 08-Окт-18 12:50 
да я тоже думаю, что нет таких.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Майор , 06-Окт-18 18:36 
Полностью согласен с Вами, гражданин. Незачем вот это повсеместное шифрование, оно только все осложняет! Если вам нечего скрывать, то и шифроваться не надо.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено DmA , 09-Окт-18 09:11 
А чего вы тогда свою переписку не выкладываете в Интернет, чтобы все могли её читать?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено товарищ майор , 10-Окт-18 09:54 
> А чего вы тогда свою переписку не выкладываете в Интернет, чтобы все
> могли её читать?

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



"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 01:39 
> Что-то эта штука не выглядит как то, что должно быть в ядре.
> Они бы ещё туда аудиоплеер запихнули и парсер TeX.

Ядро станет еще более монолитным.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 05:18 
Вот уж чего надо выкинуть из ядра, так это долбаный ipsec с его нагромождениями слоев на пустом месте.
А wireguard прекрасен.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 08-Окт-18 10:42 
да-да, ведь никуда кроме распоследней версии линукса гордому админу локалхоста подключаться не надо.

И никого кроме гордых админов (а то начинаются, внезапно, особенности, что список доступного через vpn, ну надо же, не для всех пользователей должен быть один и тот же) он на свой локалхост тоже не пустит. Контроль траффика хотя бы в виде "приходил Петров с 11:02 до 12:23, ip=..." - причем, разумеется, на внешнем по отношению к тому, на что приходил, устройстве - тоже не нужен, джентльмены верят на слово.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 08-Окт-18 19:51 
Задачи внезапно разные. Мне, скажем, на перечисленные задачи по барабану, нерелевантны. А для построения туннеля между серверами в разных датацентрах wg подходит прекрасно, для задач разработки тоже.

Насчет выкинуть, я, конечно, утрирую, но если уж в ядре есть ipsec, то wg тем более заслуживает в нем быть, и это не только мое мнение:

https://lists.openwall.net/netdev/2018/08/02/124
From:   Linus Torvalds
Can I just once again state my love for it and hope it gets merged
soon? Maybe the code isn't perfect, but I've skimmed it, and compared
to the horrors that are OpenVPN and IPSec, it's a work of art.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 09-Окт-18 12:34 
> Задачи внезапно разные.

внезапно, да. Поэтому я может и буду где-то в очень узкоспециальных (строго линyпс-с-линyпсом, ручные настройки ибо протокол под них заточен, зачем-то нужно шифрование а не, скажем, банальный gre) местах это использовать, но это вот - "может", а ipsec - точно буду.

> Насчет выкинуть, я, конечно, утрирую, но если уж в ядре есть ipsec, то wg тем более
> заслуживает в нем быть

ну тут я согласен ,что белки-истерички, верещащие что добавлять никак нельзя, а то ж ведро лопнет, не выдержав увеличения на (сколько там - десятая процента кода наберется?) всполошились совершенно напрасно, но и чудес, покамест, не ожидается.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 09-Окт-18 10:53 
Только вот беда, реально в ойписеке ничего кроме psk с предопределенными пирами толком не работает.
И работать не может ибо спецификации протокола неполны и бестолковы.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 09-Окт-18 12:39 
> Только вот беда, реально в ойписеке ничего кроме psk с предопределенными пирами толком не
> работает.

мой корпоративный vpn с xauth с сертификатом и отдельно mschap2 поверх, доступный из любой точки на планете, до которой доходят esp пакеты - икнул, но, к счастью, не отвалился, читая эту фигню.

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

но и в очередной раз туннелить "весь интернет" в udp - как-то не выглядит хорошим универсальным решением для всех и на все времена. Скорее, очередным более-менее удачным костыликом :-(


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 14:37 
Почему с tinc'ом нет сравнений? Хотя, полагаю он будет где-то около openvpn, т.к. юзерспейсный. Но всё же ...

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено tensor , 07-Окт-18 00:36 
По производительности - да, Вы правы, не очень из-за юзер-пейса. По простоте настройки - wg даже проще, как мне кажется.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено mikevmk , 06-Окт-18 14:50 
Производительность это хорошо, но не главное. Главное - это аудит самих алгоритмов шифрования/авторизации на предмет хорошо замаскированных закладок. А его, боюсь, никто не осилит

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено evkogan , 06-Окт-18 16:35 
Судя по новости сделали.
Хотя надо бы посмотреть отчет и кто делал.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено КО , 06-Окт-18 22:00 
Да бог с ними - с алгоритмами.
Вполне достаточно будет взбрыка на какой-нибудь особым образом битый пакет, после чего этот мегакомбайн начнет забирать 32Гб. Ну для тех систем, что не смогут отдать йадру 32 гига, просто свалятся до deny of service, а в тех что смогут, там удаленное выполнение кода с  ядренными привилегиями (да еще поди в обход огненной стены). :)

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 05:24 
https://www.wireguard.com/formal-verification/

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 07-Окт-18 16:55 
> https://www.wireguard.com/formal-verification/

...""has undergone all sorts of formal verification, covering aspects of ""...

Надо просто немного _подождать_,
https://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=wireguard
https://security-tracker.debian.org/tracker/source-package/w...
...


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 18:15 
От этого никто не застрахован, конечно.
Но что будет на порядки меньше, чем в ipsec, это очевидно хотя бы из объема и качества кода. :)

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 15:47 
> Передача данных осуществляется через инкапсуляцию в пакеты UDP.

А если UDP заблокирован?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 15:52 
>> Передача данных осуществляется через инкапсуляцию в пакеты UDP.
> А если UDP заблокирован?

Это поможет, привет из Китая

https://github.com/wangyu-/udp2raw-tunnel
https://github.com/wangyu-/UDPspeeder


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 16:24 
"а если интернет вообще отключили?"

примерно так же.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Fyjybv755 , 06-Окт-18 17:40 
> А если UDP заблокирован?

В смысле, добрые админы выпускают наружу только через HTTP-прокси? Тогда живите с OpenVPN, он умеет под HTTPS косить. Но мееееедленный, как и положено юзерспейсу.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено недобрый админ , 10-Окт-18 09:59 
> В смысле, добрые админы выпускают наружу только через HTTP-прокси? Тогда живите с
> OpenVPN, он умеет под HTTPS косить. Но мееееедленный, как и положено

"this http method does not allowed". Будешь ты тут мне трудовую дисциплину нарушать!


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 11:54 
> "this http method does not allowed".

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


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 15:54 
а где будет этот впн если оба или один из пиров за натом?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 16:31 
Если только один пир за натом то никаких проблем не будет если на нем включить опцию persistent-keepalive.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Shevchuk , 06-Окт-18 18:23 
Для таких случаев есть ZeroTier: https://www.reddit.com/r/linux/comments/7c0zkw/zerotier_open.../

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Анонимная триада , 06-Окт-18 18:51 
https://peervpn.net

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:34 
> https://peervpn.net

На фоне WireGuard он, мягко говоря, так себе.
1) Примерно 300 кило кода, на все случаи жизни. Счастливого аудита! Хотя кто ж исходники читает то?
2) Интересный код. Ну вот peermgt.c допустим. Код не влезает на экран по ширине. Я все понимаю, но экран 30". И этого мало для комфортного чтения сорца? В линух подобный код по счастью все же не берут.
3) OpenSSL в зависимостях. Ну и все дыры в нем - ваши. Хотя, если повезет, то только половина из них.
4) Все самые современные технологии - на месте. Вот вам тормозной как трактор RSA. По стойкости один фиг с 25519 эллиптикой, плюс-минус, зато по скорости...


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Анонимная триада , 06-Окт-18 18:54 
https://www.freelan.org

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:38 
> https://www.freelan.org

А это вообще кошмар какой-то, плюсатый, с бустом, скунсом, и дюжиной огромных либ вываленых прямо в репу прожЕкта. Глядя на вот что-то такое и понимаешь что имел в виду Торвальдс говоря "work of art" про сабж. По сравнению с вот этим - он и правда work of art!!!


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним_ка , 06-Окт-18 16:58 
Было бы отлично, но ситуацию усугубляет то, что на впсках один хрен дистры предлагаются с ядром куда древнее.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено merifri , 06-Окт-18 17:20 
Ну, если уж так сильно хочется - выбираем kvm/xen виртуализацию и собираем ядрышко ручками. Если хотим впсочку за 50 рублей... ну, упс.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним_ка , 06-Окт-18 17:52 
Хм... А хотя про репы я и не подумал, а в репах наверняка будет все...

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:40 
> Если хотим впсочку за 50 рублей... ну, упс.

А в чем проблема найти full virt за сравнимые деньги, в пределах $1-2? Их есть. Так что уже вполне можно отправить openvz туда где ему место - на свалку истории.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Fyjybv755 , 06-Окт-18 17:37 
>  Было бы отлично, но ситуацию усугубляет то, что на впсках один хрен дистры предлагаются с ядром куда древнее.

VPS на базе OpenVZ? Да там пофиг, какое ядро, все равно без высочайшего позволения модули загружать не получится.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 18:39 
Это проблема тех ВПСок, которыми ты пользуешься, не?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Я русского поймал , 06-Окт-18 20:18 
На нормальных ВПСках тебе дают возможность творить с системой что хочешь, нужно ядро свежее поставишь, а вообще сейчас прекрасно dkms'ом модуль WireGuard собирается и работает.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 20:26 
Подтверждаю, нормальный VPSки FTW!

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:46 
> Подтверждаю, нормальный VPSки FTW!

И главное они уже давно стоят вполне вменяемых денег. Многие хостеры с кривым ovz за это еще и дерут больше чем многие другие за full virt, если кто случайно не заметил. А на full virt вы можете вкатить хоть ядро которое вы из git самолично собрали, если вам так зачем-то надо.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено sec , 06-Окт-18 18:41 
Производительность у WireGuard отличная, особенно в сравнении с OpenVPN, который как ни тюнингуй, все равно как будто упирается в потолок производительности одного ядра процессора.
Хотелось бы все же и поддержку AES, чтобы получить выгоду ещё и от аппаратного ускорения шифрования.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Гентушник , 06-Окт-18 21:18 
Да, я тоже уже хотел свой роутер выкидывать и брать новый, ибо OpenVPN плохо тянет.
Перешёл на WireGuard - проц почти не грузит, скорость хорошая.
Видимо роутер я пока менять не буду. :)

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Злой Админ , 09-Окт-18 13:14 
"скорость хорошая" это сколько, если не секрет? И на каком железе?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:47 
> Перешёл на WireGuard - проц почти не грузит, скорость хорошая.

Там и подборка алгоритмов нормальная и в ядре к тому же. Понятное дело что openvpn без шансов. Торвальдс зря словами типа "work of art" раскидываться не будет.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено PnDx , 08-Окт-18 11:48 
Внезапно, WireGuard — тоже однопоточный. Не так давно обходил сей прескорбный факт сборкой tap+bond.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Анонимная триада , 06-Окт-18 19:05 
Когда завезут в микротик, джунипер, аарис и циску?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено mumu , 06-Окт-18 22:32 
Когда они асилят нормальные ОСи, а не самописные костыли.
В общем исходники-то открыты, всё дело за индусокодерами стало.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Pofigist , 07-Окт-18 01:01 
А нафига он в кошках-то? Там своя реализация VPN отличная.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 12:21 
Ох, как сказать отличная. Насколько понимаю в этом wireguard накосячить можно мало где. А вот с цисками... Если с другой стороны не подконтрольное оборудование и сидит человек который настройки делает, и не понимает что делает - велика вероятность многочасового пердоленья.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Pofigist , 07-Окт-18 17:14 
> Если с другой стороны не подконтрольное
> оборудование и сидит человек который настройки делает, и не понимает что
> делает - велика вероятность многочасового пердоленья.

В таких случаях просто даем ему готовый конфиг. А вообще если настройкой любого професионального оборудования занимается человек, который не понимает что делает - результат немного предсказуем.
Более того - простота настройки для человека, не понимающего что он делает, далеко не всегда хорошо - обычно это кончается неслабой дырой в безопасности... :) Что доставляет кучу лулзов, особенно в случае если это касается процессов, исполняемых в пространстве ядра...


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 08-Окт-18 00:48 
Естественно ты всё говоришь как надо. Вот только жизнь иногда умеет шутить. И просто выдача готового конфига ничего не решает. По дебагам вылавливается что что-то не то люди делают с другой стороны. По словам то конфиг применил, да.
Проблема не техническая в данном случае. А чисто организационная. Но там уже другие вещи играют роль во всем этом бардаке. И вот максимальное упрощение принесет только плюсы. А на безопасность другой стороны с прибором. Требуемую маленькую песочницу прокинули, и хватит.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 08-Окт-18 10:51 
> Насколько понимаю в этом wireguard накосячить можно мало где. А вот с цисками...

с цисками в минимальном варианте - около 15 строчек конфига (около пяти если все сделать вообще через задницу - в принципе, и работать будет), если избегать обожаемого недоинженерами бесполезного мусора в виде dmvpn. Вряд ли ты уложишься в меньшее для wireгада.

> сидит человек который настройки делает, и не понимает что делает - велика вероятность
> многочасового пердоленья.

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

Или еще хуже - у тебя rhel, у него бубунточка, сеточку настраивает за него интуитивно-приятный скрипт без документации, о существовании которого ты узнаешь вот сейчас, и пойдешь, не знаю уж - убунту на виртуалке накручивать, чтобы вообще понять что это за нёх?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 09-Окт-18 08:54 
>у тебя rhel, у него бубунточка, сеточку настраивает за него интуитивно-приятный скрипт без документации

Угу, или федорка, где в 100500 версии лёниного пoдeлия опять и снова все переделали, а документация - в модно-молодежных бложеках и ютупчегах.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:49 
> оборудование и сидит человек который настройки делает, и не понимает что
> делает - велика вероятность многочасового пердоленья.

Циска тебе априори не подконтрольна - сорцов у тебя нет, так что предлагается верить джентльменам на слово. И если вдруг NSA и прочим Equation карта как поперла, как поперла - ну вот так вот, да.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено А , 11-Окт-18 01:38 
А что такой "аарис"?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено ABATAPA , 06-Окт-18 20:20 
Лично мне он понравился. Заводится "влёт", есть в OpenWRT / debian / Ubuntu / etc. Использую несколько месяцев, доволен.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 06-Окт-18 20:35 
Помогите разобраться в его настройке, скорее всего в правилах iptables.

На сервере:
[Interface]
Address = 192.168.13.1/24
ListenPort = 51820
PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s10 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o enp0s10 -j MASQUERADE
PrivateKey =

[Peer]
PublicKey =
AllowedIPs = 192.168.13.1/32

[Peer]
PublicKey =
AllowedIPs = 192.168.13.2/32


На клиенте:
[Interface]
Address = 192.168.13.2/24
PrivateKey =

[Peer]
PublicKey =
Endpoint = ilya.pp.ua:51820
AllowedIPs = 192.168.13.1/24
PersistentKeepalive = 25

Сервер имеет реальный IP - клиент нет, и с помощью этого конфига я могу подключаться с сервера к клиенту по ssh 192.168.13.2, что мне и требовалось.

В данный момент, как мне сейчас и нужно, через vpn идут запросы только для сети 192.168.13.0/24.

Вопрос, а как изменить конфиг так, чтобы через vpn с клиента шёл весь трафик через сервер, а не только 192.168.13.0/24 ?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 20:53 
-AllowedIPs = 192.168.13.1/24
+AllowedIPs = 0.0.0.0/0

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 11:49 
Если я так делаю. то интернет на клиенте вообще перестаёт работать и у меня не пингуется ни одна сеть кроме 192.168.13.0/24 и DNS-ников.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Fyjybv755 , 07-Окт-18 13:14 
> Если я так делаю. то интернет на клиенте вообще перестаёт работать и
> у меня не пингуется ни одна сеть кроме 192.168.13.0/24 и DNS-ников.

Покажите iptables-save и ip ro sh на сервере.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 15:59 
> ip ro sh

default via 192.168.0.1 dev enp0s10 proto dhcp src 192.168.0.2 metric 10
192.168.0.0/24 dev enp0s10 proto kernel scope link src 192.168.0.2
192.168.0.1 dev enp0s10 proto dhcp scope link src 192.168.0.2 metric 10
192.168.13.0/24 dev wg0server proto kernel scope link src 192.168.13.1

> sudo iptables-save

https://ilya.pp.ua/iptables-save.log


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 08-Окт-18 11:01 
делай раз - apt purge ufw - все равно ты им пользоваться не обучен. Или что у тебя там стоит такое, понасоздававшее автоматический нечитаемый мусор?

делай два - в расчищенном от интуитивно-приятного мусора фильтре
iptables -L FORWARD
(я почистил за тебя)
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
#а до этих строчек управление уже никогда не дойдет
-A FORWARD -i wg0server -j ACCEPT
-A FORWARD -o wg0server -j ACCEPT


ping, кстати, у тебя при этом должен работать - это единственное, что разрешено (причем - неправильно) в твоем интуитивно-приятном файрволе.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 08-Окт-18 16:47 
> -A FORWARD -j REJECT --reject-with icmp-host-prohibited
> #а до этих строчек управление уже никогда не дойдет
> -A FORWARD -i wg0server -j ACCEPT
> -A FORWARD -o wg0server -j ACCEPT

Благодарю!
Среди этого мусора я и впрямь это не разглядел.

> apt purge ufw ...

У меня не Ubuntu с ufw.
У меня openSUSE с firewalld.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 08-Окт-18 17:17 
да я в их сортах не того... как вижу проделки интуитивно-приятных, так и удаляю - еще не хватало терять время, изучая "тут точно-точно просто пустое правило, или я не заметил чего"

"одна windows у меня уже и так есть". Правда, все идет к тому, что кругом будет "как в windows".


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 08-Окт-18 17:36 
> "одна windows у меня уже и так есть". Правда, все идет к
> тому, что кругом будет "как в windows".

"" В инторнетах объявлен год Linux "как в windows".  Новости в 11! ""


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено нах , 09-Окт-18 12:45 
"" В инторнетах объявлен год Linux "как в windows"
ГООООД? Are you serious about that? Лет десяток уже, не меньше, линyпс бодро шлепает ластами в этом единственном направлении.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 10-Окт-18 08:50 
> "" В инторнетах объявлен год Linux "как в windows"
> ГООООД? Are you serious about that? Лет десяток уже, не меньше, линyпс
> бодро шлепает ластами в этом единственном направлении.

Вот именно!  Теперь пора смеяться над теми, кто...  Вот сам пару раз попользовал это "они делают из здесь как в" -- и заметил, что-то как-то "как у всех" шуточка.  Непорядок.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 08-Окт-18 17:57 
Проконсультируйте меня по iptables, пожалуйста.
Нужна ли вообще эта строчка в конце правил?
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

Правильней будет разобраться почему она там появляется и сделать так, чтобы она не прописывалась или просто в PostUp вместо -A заменить -I ?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено пох , 08-Окт-18 19:59 
> Нужна ли вообще эта строчка в конце правил?

нет, потому что это неправильная строчка. Правильная выглядит как-то так:
-A FORWARD -p tcp -j REJECT --reject-with icmp-admin-prohibited
-A FORWARD -j DROP (или -P FORWARD DROP)

(совсем правильная - отдельное правило для udp с rate-limiter)

и этими строчками должен всегда кончаться набор правил для INPUT и FORWARD.

но я все же рекомендую прочитать man iptables, и научиться их писать самому, без всяких интуитивно-приятных уродцев, которые даже gratious-deny не умеют, оказывается, правильно реализовать.

> Правильней будет разобраться почему она там появляется

она там появляется, потому что без нее твой файрвол превращается в тыкву, начиная форвардить что попало куда попало или становится крайне трудноотлаживаемым (если таки -P DROP), и добавляет ее туда твой firewalld. После чего ты лезешь поверх него руками, что тоже неправильно.

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

С -I - да, будет работать, но не понимая что делаешь, ты можешь понаделать дырок.  А понимания у тебя, как я погляжу, нет.



"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 13:55 
> У меня не Ubuntu с ufw.
> У меня openSUSE с firewalld.

И что характерно - оба этих "дружественных" креатива годны только под деинсталл. Лучше все же RTFMнуть про нормальный айпитаблес. Хотя, конечно, парни в индии строят дома как-то так: берут несколько фанерок, сверху кусок шифера - обана, дом готов. Вот firewalld и ufw - очень в духе такого софтостроя.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 12-Окт-18 14:19 
>> У меня не Ubuntu с ufw.
>> У меня openSUSE с firewalld.
> И что характерно - оба этих "дружественных" креатива годны только под деинсталл.

И тут мы понимаем, какой дизигн-фичур был _решающим_ в "успехе" system-d! :-D

> Лучше все же RTFMнуть про нормальный айпитаблес. Хотя, конечно, парни в

А потом RTFM-нуть в норм.генерато правиля для.
  А перед этим таковой найти...   //я firehol взял, но давно это было

> индии строят дома как-то так: берут несколько фанерок, сверху кусок шифера
> - обана, дом готов. Вот firewalld и ufw - очень в
> духе такого софтостроя.

Ну, если Вы так говорите...


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 22:20 
То-есть на клиенте разрешен только маскарад без выхода в сеть?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 11:53 
Если сделать то, что указано выше, разрешить клиенту полностью ходить через vpn, то интернета всё равно нет не нём.
Как и нет вменяемой инструкции по настройке на офф сайте, к сожалению.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 14:54 
https://technofaq.org/posts/2017/10/how-to-setup-wireguard-v.../

https://linode.com/docs/networking/vpn/set-up-wireguard-vpn-...

пользуйся одним или другим мануалом. SaveConfig опцию не используй из-за нее вечные траблы с AllowedIPs. Лучше вручную.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 17:27 
Благодарю за ссылки.
Первая похожая на арчевиковскую, по которой я настраивал,
https://wiki.archlinux.org/index.php/WireGuard#Setup_a_VPN_s...
только там немного другие команды iptables для ipv6.

Попробовал прописать
net.ipv6.conf.all.forwarding = 1
в добавок к
net.ipv4.ip_forward = 1
в /etc/sysctl.conf
Изменил PostUp/PostDown на эти, даже вместо %i принудительно прописал wg0server, (SaveConfig НЕ использовал) но результат тот же, при AllowedIPs = 0.0.0.0/0 пропадает интернет на клиенте и прингуются только DNS-ники и 192.168.13.0/24.
Видимо что-то с маскарадингом на сервере не так, но что именно не могу определить. :-(


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 12:34 
> То-есть на клиенте разрешен только маскарад без выхода в сеть?

Клиент подключен к интернету, только не имеет выделенного реального IP.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 11:54 
sysctl net.ipv4.ip_forward=1

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 12:23 
Это у меня прописано и на сервере и на клиенте.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 16:17 
На клиенте не надо.
Вроде выглядит правильно (за исключением уже упомянутого 0/0 на клиенте).
А UDP точно по дороге не режется?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 16:27 
> А UDP точно по дороге не режется?

Если я могу зайти по ssh на 192.168.13.1 (с клиента на сервер) и наоборот, то предполагаю что не режется, хотя не знаю как это проверить.

Мне кажется что-то с iptables не в порядке и проброс интернета на vpn-сервер не происходит.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 07-Окт-18 18:11 
А wg что выдает? Туннель-то установлен?

Если нет, то попробуйте настроить безо всяких wg-quick и прочих systemd, ручками - прямо как на официальном сайте в демонстрационном видеоролике, пока туннель сам по себе не заработает. А уж дальше можно разбираться с форвардингом, в настройке iptables для wireguard нет ничего особенного.

А, еще проверьте таблицы маршрутизации, у меня как-то раз networkmanager выпердривался и лез куда его не просили.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 07-Окт-18 18:36 
> А wg что выдает? Туннель-то установлен?

sudo wg
interface: wg0
  public key:
  private key: (hidden)
  listening port: 54589
  fwmark: 0xca6c

peer:
  endpoint: 178.219.173.13:51820
  allowed ips: 0.0.0.0/0
  latest handshake: 33 seconds ago
  transfer: 6.15 KiB received, 43.07 KiB sent
  persistent keepalive: every 25 seconds

Конечно установлен, иначе бы сеть 192.168.13.0/24 не пинговалась, а так я по ssh захожу по ней.

> Если нет, то попробуйте настроить безо всяких wg-quick и прочих systemd, ручками - прямо как на официальном сайте

Без Quick/systemd настраивать не пробовал, но не думаю что это что-либо изменит, но всё же попробую.

На оффсайте абсолютно идиотская конфигурация, где 2 пира и так находящиеся уже в одной сети, накидывают, зачем-то, ещё и vpn сверху.
Если бы у меня на всех машинах был бы выделенный реальник, то мне бы и vpn не нужен был.
В любом случае я не смогу повторить эту конфигурацию, так как у меня машины не могут без vpn видеть друг друга в обе стороны.

NetworkManager у меня удалён, сетью рулит systemd-networkd.
Совсем без systemd тоже не получится.

Вот таблицы маршрутизации читать и проверять я не умею, к сожалению. :-(


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Я русского поймал , 07-Окт-18 20:50 
В последних релизах wg-quick стал творить странное и прописывать в тэйбл 0xca6c роутинг, загляни туда ip r s table all
У меня все прекрасно с инетом через WG-сервер, никаких проблем нет, к сожалению я сейчас без своего ноута и в другой стране, не могу тебе показать конфиги с клиента и роутинг, если подождешь неделю, пока я вернусь, то все свои конфиги дам

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 08-Окт-18 18:37 
Благодарю Вас за желание мне помочь! :-)
Вроде разобрался, проблема была в firewalld и последнем правиле,
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
отбрасывающим все пакеты, и вместо iptables -A нужно было мне прописывать iptables -I.

Хотя странно что, судя по гуглению, кроме меня об него никто не спотыкался.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено ABATAPA , 07-Окт-18 20:55 
На сервере сделайте так:

/etc/wireguard/wg0.conf:

Interface]
PrivateKey = xxxxxxxxxxxxxx
ListenPort = PortNo
Table = off
PostUp =  /etc/wireguard/wg_firewall.sh %i start
PostDown = /etc/wireguard/wg_firewall.sh %i stop

/etc/wireguard/wg_firewall.sh:

#!/bin/bash
exec >> /tmp/wg_firewall.sh.log 2>&1
set -x
if [ $# -ne 2 ]; then
        echo "No interface given. Usage: $0 <int> [start|stop]" >&2
        exit 1
fi

case "$2" in
    start)

        iptables -t nat -I POSTROUTING -s 192.168.13.0/24 ! -d 192.168.13.0/24 -j MASQUERADE
        iptables -I FORWARD -i  $1 -o eth0 -j ACCEPT
        iptables -I FORWARD -o  $1 -i eth0 -j ACCEPT
        iptables -I FORWARD -i $1 -o $1 -j ACCEPT
        ;;
    stop)
        iptables -t nat -D POSTROUTING -s 192.168.13.0/24 ! -d 192.168.13.0/24 -j MASQUERADE
        iptables -D FORWARD -i  $1 -o eth0 -j ACCEPT
        iptables -D FORWARD -o  $1 -i eth0 -j ACCEPT
        iptables -D FORWARD -i $1 -o $1 -j ACCEPT
        ;;
esac


Названия интерфейсов поправьте, если нужно.
Разумеетсся, нужно включить forwarding (у Вас включен).

На клиенте заворачиваете или всё через ip route replace default, или выборочно через ipset + iptables + ip rule.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 08-Окт-18 17:10 
Большая благодарность!
Заработало! :-)

> sudo cat /tmp/wg_firewall.sh.log

+ '[' 3 -ne 3 ']'
+ case "$3" in
+ iptables -t nat -I POSTROUTING -s 192.168.13.0/24 '!' -d 192.168.13.0/24 -j MASQUERADE
+ iptables -I FORWARD -i wg0server -o enp0s10 -j ACCEPT
+ iptables -I FORWARD -o wg0server -i enp0s10 -j ACCEPT
+ iptables -I FORWARD -i wg0server -o wg0server -j ACCEPT

> sudo iptables-save | grep FORWARD

-A FORWARD -i wg0server -o wg0server -j ACCEPT
-A FORWARD -i enp0s10 -o wg0server -j ACCEPT
-A FORWARD -i wg0server -o enp0s10 -j ACCEPT
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -j FORWARD_direct
-A FORWARD -j FORWARD_IN_ZONES_SOURCE
-A FORWARD -j FORWARD_IN_ZONES
-A FORWARD -j FORWARD_OUT_ZONES_SOURCE
-A FORWARD -j FORWARD_OUT_ZONES
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A FORWARD_IN_ZONES -g FWDI_public
-A FORWARD_OUT_ZONES -g FWDO_public

Дело было в маршрутизации, как я и думал.

Теперь нужно разобраться кто виноват firewalld со своим
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
и нужно удалить где-то эту строку, или всё же прописать строки из вашего скрипта в PostUp и PostDown ?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ilya Indigo , 08-Окт-18 18:22 
А чем отличаются Ваши правила
iptables -t nat -I POSTROUTING -s 192.168.13.0/24 ! -d 192.168.13.0/24 -j MASQUERADE
iptables -I FORWARD -i wg0server -o enp10s0 -j ACCEPT
iptables -I FORWARD -o wg0server -i enp10s0 -j ACCEPT
iptables -I FORWARD -i wg0server -o wg0server -j ACCEPT

От правил из предложенного для WireGuard конфига, в которых -A заменены на -I
iptables -I FORWARD -i wg0server -j ACCEPT
iptables -I FORWARD -o wg0server -j ACCEPT
iptables -t nat -I POSTROUTING -o enp10s0 -j MASQUERADE

И какие лучше применять, если они оба работают?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 08-Окт-18 18:24 
> И какие лучше применять, если они оба работают?

Лучше применять те, которые понимаешь!


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 22:59 
>> А UDP точно по дороге не режется?
> Если я могу зайти по ssh на 192.168.13.1 (с клиента на сервер) и наоборот, то предполагаю что не режется, хотя не знаю как это проверить.

ssh работает поверх TCP. Используй iperf или netcat.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 20:59 
В новости не расскрывается как этот впн позволяет обходить двойной нат и прочее, или не позволяет?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Озорной Гусь , 06-Окт-18 22:23 
Имеется ввиду одна сторона? Никаких проблем нет с прохождением, обычный UDP трафик, только нужно будет опцию PersistentKeepalive указать для поддержания соединения в коннтраке, т.к. сам по себе wg никакого трафика не шлет.
Если обе стороны за nat, то нужно просто прокинуть порт с одной из сторон.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 07-Окт-18 23:04 
По идее, надо STUN/TURN прикручивать.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Pilat , 11-Окт-18 00:13 
То есть сделать tinc. Уже сделали, работает.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 13-Окт-18 03:12 
> То есть сделать tinc. Уже сделали, работает.

А в нем крипто нормальное сделали все-таки в итоге? Ну то-есть 25519 и прочие ChaCha? А то уповать на AES не очень хочется, он довольно тормозной если криптоакселератора нет, а что там криптоакселератор внутрях делает хрен бы его знает. RSA так и вообще слоупок.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Pilat , 13-Окт-18 03:15 
>> То есть сделать tinc. Уже сделали, работает.
> А в нем крипто нормальное сделали все-таки в итоге? Ну то-есть 25519
> и прочие ChaCha? А то уповать на AES не очень хочется,
> он довольно тормозной если криптоакселератора нет, а что там криптоакселератор внутрях
> делает хрен бы его знает. RSA так и вообще слоупок.

  You can further change the configuration as needed either by manually editing the configuration files, or by using tinc(8).
     The tinc init command will have generated both RSA and Ed25519 public/private keypairs.  The private keys should be stored
     in files named rsa_key.priv and ed25519_key.priv in the directory /etc/tinc/NETNAME/ The public keys should be stored in
     the host configuration file /etc/tinc/NETNAME/hosts/NAME.  The RSA keys are used for backwards compatibility with tinc ver‐
     sion 1.0.  If you are upgrading from version 1.0 to 1.1, you can keep the old configuration files, but you will need to
     create Ed25519 keys using the following command:

           tinc -n NETNAME generate-ed25519-keys


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 14-Окт-18 02:38 
>      The tinc init command will have generated
> both RSA and Ed25519 public/private keypairs.  

Мне не надо BOTH. Весь пойнт DJBшной крипты - в том что критичный криптокод небольшой, проверенный и зависимостей мало. А этот ваш RSA подразумевает что оно будет от openssl и всех его дыреней зависеть, а в хучшем случае ремота может еще и покормить запросами на счет RSA, после чего процессор очень крепко займется вычислениями с Big Int.

>            tinc
> -n NETNAME generate-ed25519-keys

Это совершенно не отвечает на вопрос: может ли он уже быть маленьким, аккуратным, и без зависимостей от черти-каких стремных внешних либ типа openssl.

Смотри, минимальный 25519+Salsa20+1305 вообще в виде tweetnacl занимает смешной объем кода (его наизусть можно выучить) и это таки совместимо с NaCl. А если скорость капец как важна можно оптимизированный libsodium взять, но он уже все-же монстр. А теперь покажите мне этот фокус для RSA... и не надо пожалуйста #include'ов openssl.h или как его там, это сразу +100500 к дырявости.

А так если надо именно GFW и прочие гестапо с носом оставить - у китайцев для этого есть на гитхабе сетевые инструментарии которые на световые годы впереди мягкотелых западных VPNов. Там очень интересные штучки попадаются.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 06-Окт-18 23:25 
Штука нужная хорошая. Но какие же гавнистые и агресивные там разработчики это просто что-то.

Кстати всякими великими китайскими файерволами эта штука блочится на ура. Заголовок пакета не шифрованный. Прямо сейчас можно использовать реализацию от tunsafe отредактировать config.h для полностью шифрованных пакетов.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 14-Окт-18 02:29 
> Но какие же гавнистые и агресивные там разработчики это просто что-то.

А нельзя ли пруфца на это дело? В чем их агрессия проявляется?

> не шифрованный. Прямо сейчас можно использовать реализацию от tunsafe отредактировать
> config.h для полностью шифрованных пакетов.

Глядя на реализацию tunsafe - не надо ее использовать. По сравнению с оригиналом это уж никак не work of art. Какой-то хаотично наваленый код на плюсах вперемешку с наваленым черти как асмом, какие-то stdafx.h (лучше сразу #include <facepalm.jpg>) и прочие характерные прелести. Виндоразработчики могут сделать МАЗДАЙ и подобие OPENVPNного монстра даже из wireguard'а...


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Ващенаглухо , 08-Окт-18 12:36 
Новость, конечно отличная, но когда же будет клиент для винды?

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено KonstantinB , 09-Окт-18 17:09 
Когда кто-нибудь его напишет. Сам Джейсон точно этого делать не будет, я догадываюсь, на чем он вертел эту вашу винду.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 12-Окт-18 14:01 
> Новость, конечно отличная, но когда же будет клиент для винды?

Не понимаю смысла в нормальном впн под систему с встроенным кейлоггером. А для тех кому секурити для галочки - в винде пара каких-то клиентов встроена (pptp, l2tp). А то что они не work of art - так там вся ОС такая, впн-клиент не сделает это сито безопасным, защищенным, приватным и все такое.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 08-Окт-18 13:03 
>формальную верификацию

Значение знают? А также какой это ППЦ даже для hello world?


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Andrey Mitrofanov , 08-Окт-18 13:52 
>>формальную верификацию
> Значение знают? А также какой это ППЦ даже для hello world?

Значение значительное, значит[ся]!

Вон чуть выше,
   http://www.opennet.ru/openforum/vsluhforumID3/115501.html#87
коллега зуб [но не свой] даёт, что на круг, когда-нибудь потом может-быть будет точно-точно не хуже, чем у Ghostscript. Да!

И hello-world не главное, главное - внушительный раздел "Публикешонз" домашней странички.  Акаде-е-емики -- участвуют!


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Pilat , 10-Окт-18 00:08 
Большой недостаток WireGuard - для сети узлов A,B,C он не свяжет узлы A и C, если нет прямого соединения между A и C, но есть соединение AB и BC.

А вот tinc сможет это сделать.


"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено marios , 14-Окт-18 00:24 
Ну это уже вопрос поиска баланса между количеством фич и простотой.

"Для включения в состав ядра Linux предложен VPN WireGuard"
Отправлено Аноним , 29-Окт-18 23:36 
Из однопоточного юзерспейсного tinc на практике не удается выжать больше 600Mbps, а на мелких пакетах - 300.
Что умеет это вот?