LINUX.ORG.RU

Wireguard включен в ядро Linux

 ,


4

5

Wireguard – это простой и безопасный VPN-протокол, основным разработчиком которого является Jason A. Donenfeld. Долгое время модуль ядра, реализующий этот протокол, не принимали в основную ветку ядра Linux, так как использовалась своя реализация криптографических примитивов (Zinc) вместо стандартного crypto API. Недавно это препятствие было устранено, в том числе за счет доработок, принятых в crypto API.

Сейчас wireguard принят в основную ветку ядра Linux и будет доступен в релизе 5.6.

Wireguard выгодно отличается от других протоколов VPN отсутствием необходимости согласовывать используемые криптографические алгоритмы, радикальным упрощением процесса обмена ключами, и, как следствие, малым размером кодовой базы.

>>> Подробности

Ответ на: комментарий от anonymous

Openvpn юзерспесовский. ipsec требует l2tp как уже выше сказали + сложнее чем wireguard настраивается.

as_lan ★★ ()
Ответ на: комментарий от anonymous

Openvpn не только маршруты пушить умеет. Но еще например dhcp опции. Плюс up/down команды различные. Все скриптовать?

as_lan ★★ ()
Ответ на: комментарий от mx__

Не скажу за Centos, но в Debian/Ubuntu работает стабильно. За год ни одного отвала. Переподключается моментально. Трафик в день пару гигов ходит. Клиентов правда не много, 4-5, остальные еще на openvpn, так как нельзя просто так взять и перевести на wireguard. Ну и на телефоне его держу. Там вообще ему цены нет в сравнении с Openvpn, который на мобильном интернете в разы хуже себя ведет.

as_lan ★★ ()
Ответ на: комментарий от Axon

Вээээ… ну две мои последние работы были не такие. Ты уверен, что хорошо искал?

kirk_johnson ★☆ ()

Там вообще layer2 планируется как-то, чтобы можно было wgN в бридж с нормальными девайсами объединять, или это принципиальная позиция разработчиков?

Stanson ★★★★★ ()
Ответ на: комментарий от kirk_johnson

Вээээ… ну две мои последние работы были не такие.

Это потому что ты никогда не работал в НИИ.

Axon ★★★★★ ()
Ответ на: комментарий от Axon

Это потому что ты никогда не работал в НИИ.

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

kirk_johnson ★☆ ()
Ответ на: комментарий от Stanson

Очень жаль.

О, расскажи, кстати, зачем сейчас L2 в тоннелях ещё нужен. У меня просто таких надобностей не было уже очень давно.

kirk_johnson ★☆ ()
Ответ на: комментарий от as_lan

ipsec требует l2tp

Врут. Правда может что то ОЧЕНЬ старое …

mx__ ★★★★★ ()
Последнее исправление: mx__ (всего исправлений: 1)
Ответ на: комментарий от kirk_johnson

broadcast? Мне пару раз нужно было. Например создать l2 канал чтоб с человеком поиграть =). У wireguard низкие задержки.

as_lan ★★ ()
Ответ на: комментарий от kirk_johnson

А что ВЫ под этим словом понимаете ? Для телефона к примеру не нужно.

mx__ ★★★★★ ()
Ответ на: комментарий от kirk_johnson

broadcast только для поиска нужен. Borderlands 1/2 в свое время так через openvpn гоняли.

as_lan ★★ ()
Ответ на: комментарий от mx__

А что ВЫ под этим словом понимаете ? Для телефона к примеру не нужно.

Эм… нужно, если чувак с телефоном сидит за NAT или по каким-то другим причинам не знает своего IP адреса.

kirk_johnson ★☆ ()
Ответ на: комментарий от kirk_johnson

Чтобы пляски с бубнами не устраивать. Подключился издалека к локалке - и получил локальный IP, работающие редиректы, работающий arping, приезжающие локалкоспецифичные DHCP опции и ещё кучу всего, без всяких маскарадов, роутингов и т.д.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Чтобы пляски с бубнами не устраивать. Подключился издалека к локалке - и получил локальный IP, работающие редиректы, работающий arping, приезжающие локалкоспецифичные DHCP опции и ещё кучу всего, без всяких маскарадов, роутингов и т.д.

Ну аффтар предлагает все это вынести в side channel (wg-dynamic) или юзать IPv6 как белые люди. wg-dynamic по сути будет симулякром dhcpv6, для ipv4.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 1)
Ответ на: комментарий от kirk_johnson

Проще сам wireguard переписать, чтобы MAC’ами оперировал, а не IP-адресами.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Проще сам wireguard переписать, чтобы MAC’ами оперировал, а не IP-адресами.

Не проще, именно поэтому аффтар и не стал. После отхода от IPv4 (как в МТС или пейсбуке), L2 будет не особо нужен, потому что все управляющие протоколы будут вынесены с L2 на L3.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 1)
Ответ на: комментарий от kirk_johnson

Эм… нужно, если чувак с телефоном сидит за NAT или по каким-то другим причинам не знает своего IP адреса.

В смысле ? По моему ни одного телефона нет белого ip и зачем юзеру знать свой ип ? (телефон в смысле клиент) И левый динамический ip в ipsec это обычный конфиг.

mx__ ★★★★★ ()
Ответ на: комментарий от mx__

В смысле ? По моему ни одного телефона нет белого ip и зачем юзеру знать свой ип ? (телефон в смысле клиент) И левый динамический ip в ipsec это обычный конфиг.

Эм… Окей, можешь рассказать в терминах IPsec, как все это должно работать? Потому что я не могу себе представить.

kirk_johnson ★☆ ()
Ответ на: комментарий от kirk_johnson

Не проще, именно поэтому аффтар и не стал.

Какая разница, к чему там ключ этот привязывать, к MAC или IP? Оно даже проще станет, на самом деле.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Какая разница, к чему там ключ этот привязывать, к MAC или IP? Оно даже проще станет, на самом деле.

Почитай, чувак несколько статей по этой теме писал, какие есть сложности в реализации L2.

kirk_johnson ★☆ ()
Ответ на: комментарий от mx__

Ненене, всю цепочку, включая какие у кого IP адреса в «локалке» будут.

kirk_johnson ★☆ ()
Ответ на: комментарий от kirk_johnson

Я наверное ВАС не очень понимаю.

leftsubnet и rightsubnet ? Или что ? rightaddresspool= ?

mx__ ★★★★★ ()
Последнее исправление: mx__ (всего исправлений: 1)
Ответ на: комментарий от kirk_johnson

Почитай, чувак несколько статей по этой теме писал, какие есть сложности в реализации L2.

Да нет там никаких сложностей. Просто чувак вот так вот захотел. Ну или поленился с броадкастную рассылку по ключам делать.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Да нет там никаких сложностей.

Это очень сильное утверждение, не подтвержденное простой реализацией. Все, кто пытались, получили блоатварь.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 2)
Ответ на: комментарий от kirk_johnson

Это очень сильное утверждение, не подтвежденное простой реализацией.

В какой-нибудь vtun загляни, делов-то.

А реализацию наверняка запилят попозже, L2 это must have в VPN, на самом деле, если интересы не ограничиваются ширпотребными юзкейсами.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Не запилят, аффтар принципиально против и не собирается этого делать. Остальные тоже вряд ли будут.

kirk_johnson ★☆ ()
Ответ на: комментарий от kirk_johnson

Не запилят, аффтар принципиально против и не собирается этого делать. Остальные тоже вряд ли будут.

Форкнут, да и всё. Будет Cableguard какой-нибудь.

Stanson ★★★★★ ()
Ответ на: комментарий от Stanson

Я сомневаюсь, что L2 нужен достаточному количеству людей, чтобы этим заморачиваться. Потому что в общем-то проще будет пустить l2tp поверх wireguard :D Или тот же vtun.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 3)
Ответ на: комментарий от as_lan

И каким образом wireguard поддерживает соединение, скажем, с сотней клиентов? Для каждого нужно ключи генерить?

В OpenVPN это просто - на PKI раздал клиентам сертификатов и в бой.

jekader ★★★★★ ()
Ответ на: комментарий от jekader

Ну к сожалению да. Поэтому я использую и openvpn и wireguard.

as_lan ★★ ()

Хосподи… Ну кому нужен очередной недоVPN без L2?

anonymous ()
Ответ на: комментарий от jekader

Можно про это:

В OpenVPN это просто - на PKI раздал клиентам сертификатов и в бой.

Чуть подробнее написать ?

mx__ ★★★★★ ()
Ответ на: комментарий от mx__

В одном из проектов, где доводилось внедрять OpenVPN на 1000+ пользователей, сертификаты на виндовые машины выдавал Active Directory. Клиент OpenVPN просто брал их из системного trust store. В итоге, любая машина, добавленная в AD, автоматически получала возможность подключаться к любому из OpenVPN серверов организации.

В этом и прелесть OpenVPN, что PKI совершенно независим от VPN серверов и переконфигурировать их под каждого нового клиента не нужно.

jekader ★★★★★ ()
Ответ на: комментарий от kirk_johnson

Я чуть выше описал типичный use-case OpenVPN, когда есть несколько VPN серверов в разных локациях, а клиенты добавляются и исчезают по нескольку раз в день. Соответственно, чтобы дать доступ клиенту в случае с OpenVPN нужно просто выдать один сертификат. А чтобы закрыть доступ, достаточно выполнить revoke и ни один сервер такого клиента больше не пустит. Для Wireguard ключи тоже можно генерировать независимо от VPN сервера? А отключать доступ?

jekader ★★★★★ ()
Ответ на: комментарий от jekader

Можно, отключение доступа убиранием записи из конфига. По сути git push с хуком или ansible job. Или scp и parallel. Или сервера получают конфиг по http. В общем, по вкусу.

kirk_johnson ★☆ ()
Последнее исправление: kirk_johnson (всего исправлений: 3)

Ну чего, бенчить-то кто-то уже пробовал? Похорошел wireguard или нет?

Anoxemian ★★★★★ ()
Ответ на: комментарий от kirk_johnson

Спасибо, понятно. Многовато мороки получается, если править нужно по 20 раз в день конфиги на десятке серверов. Видимо, скорее это применимо как замена ipsec для p2p/s2s подключений, а remote access лучше доверить OpenVPN

jekader ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.