Комментарии 49
Использую с недавнего времени. Скорость впечатляет. Но теперь WireGuard в ядре. Это прекрасно
Но у него есть и ряд минусов — например, отсутствие какой-либо PKI или динамического выделения адресов и т.п.Встраивать протокол в другие приложения никто не запрещал, так же как и выносить в них аутентификацию с установлением сессии.
Встраивать протокол в другие приложения никто не запрещал так же как и выносить в них аутентификацию с установлением сессии.
Мы все же говорим не о протоколе, а о конкретной реализации. Если так рассуждать, то никто не запрещает и тот же протокол OpenVPN на уровне ядра реализовать.
Запрещает Линус. И в тексте даже написано, почему.
«… Могу я просто ещё раз заявить о своей любви к этому VPN и надеяться на скорое слияние? Может, код и не идеален, но я просмотрел его, и по сравнению с ужасами OpenVPN и IPSec, это настоящее произведение искусства».
«Please note that if you make changes to your kernel, you may no longer get support or help from the CentOS development team.» — на сайте CentOS. Подключение модулей dkms воспринимается как произвольная модификация ядра. Я к тому, что эндорсмент от Линуса важен.
К слову, как мне кажется, речь идет даже не про ту часть IPSec, которая располагается в ядре (непосредственно инкапсуляция/декапсуляция и шифрование/расшифрование траффика, т.е. работа ESP-протокола), а про юзерспейс-обвязки, отвечающие за IKEv1/v2 протоколы, сертификаты, аутентификацию и т.д. В Wireguard этого «ужаса» нет, потому что большая часть этого функционала там отсутствует. Если/когда все эти части будут в wg добавлены, его код вполне может превратиться во все тот же «ужас», что и в OpenVPN, IPSec.
прошёл аудит и формальную верификацию
как понимаю формально верифицирован протокол и некоторые используемые библиотеки, но не реализация.
За сутки получилось около 700Гб трафика, какой-то просадки latency по сравнению с L2 тоже не заметил. В целом все довольно неплохо) Дождаться бы реализации wireGuard под RouterOS…
Ну и про удобство для пользователей так себе идея. Логины с паролями — это понятно, а длинющий ключ вводить — то ещё заняте.
Ключ нужен только один раз, так как он сохраняется в клиентском приложении. Кроме перепечатывания вручную его можно передать через QR-код, скачиванием файлика .conf или Control+C Control+V.
Для предоставления корпоративных доступов коллегам вне офиса wireguard мне не помощник.
Надеюсь, что это только пока.
Для предоставления корпоративных доступов коллегам вне офиса wireguard мне не помощник.
Я правильно понимаю, что дело в необходимости передачи публичных ключей? Или есть и другие причины?
Исходя из конфигов, я не могу клиенту сообщить доступные сети за шлюзом, но сам клиент определяет какие сети он будет использовать через предоставляемый шлюз.
А у меня для некоторых по три десятка строчек маршрутов.
Это единственный пункт, который мне не позволяет заменить openvpn.
Если я ошибаюсь в своих выводах, буду благодарен за ликбез.
Насколько это реально/удобно деплоить в Вашем случае — смотрите сами. Скорее всего, не очень удобно :)
Скорее всего, не очень удобно
В точку. И даже более — это просто невозможно.
А этот скрипт может, скажем, скачивать с сервера актуальный список маршрутов и добавлять их в систему. Не очень изящное решение, но рабочее.
Могу ли я использовать WireGuard для доступа к ресурсам удаленной локальной сети? Другими словами, подключаясь со своего домашнего ноута к серверу WireGuard, буду ли я иметь доступ к ресурсам из локальной сети сервера?
И существует ли возможность настроить это все дело таким образом, чтобы заворачивать трафик в тунель только при запрашивании определнных ресурсов (если кто-то знаком с проектом zaborona.help, там такая маршрутизация реализована средствами OpenVPN). Весь трафик по-умолчанию идет напрямую, но если хост находится в опреденном списке, то тогда трафик идет через тунель, такая маршрутизация возможна?
- NAT на сервере и маршруты на обеих сторонах
- Портянка адресов в параметре AllowedIPs конфига и в маршрутах на клиенте
У меня есть Raspberry Pi и VPS с WireGuard. И хотя с установкой WG ещё разбираюсь, хотелось бы подключаться к своей малинке. Подскажите пожалуйста что мне на VPN WG и Малинке прописывать надо, какие именно файлы менять?
Берёте любой гайд из интернета для поднятия VPN-сервера. Правила NAT там уже есть, а на клиенте вместо default в добавляемом после подключения маршруте пишете LAN-подсеть сервера, опционально можно эту же подсеть прописать в клиентском конфиге в AllowedIPs.
И это прекрасно.
Слышал что микротик умеет openwrt запускать.
Тут, например https://m.habr.com/ru/post/354710/
Вопрос производительности.
По моим наблюдениям, WireGuard сильно выигрывает у OpenVPN при большой latency (длинных пингах) между сторонами тоннеля — скорость просаживается гораздо меньше. Для популярного сценария «обход блокировок», когда VPN-сервер за границей, это важно. Для доступа к своей локальной сети из своего же региона — вряд ли.
Если у Вас просадки из-за проблем с производительностью какой-то маломощной железки (домашнего роутера, например) — протестируйте, в зависимости от того, как WireGuard для неё реализован, переход на него может как помочь, так и нет.
Точно в любых случаях соединение устанавливается гораздо быстрее, чем с OpenVPN.
Из недостатков ещё ограниченные возможности авторизации и маршрутизации. Про это выше в комментах писали. Если для Вас не проблема при любом изменении руками править конфиги всех клиентов — это не должно быть сильной проблемой.
В любом случае, поставить и настроить WireGuard для теста — дело простое и быстрое. Попробуйте конкретно в Ваших условиях, сами и поймёте, есть ли выигрыш.
Ещё испытываю трудности с установкой WireGuard на свой сервер, помогите мне пожалуйста с установкой в ЛС.
Ребят, подскажите пожалуйста, а как можно WireGuard подключить к сетям I2P и TOR? Был у меня знакомый, на пару минут продемонстрировал свой WireGuard сервер и я прям со своего браузера мог I2P и TOR сайты открыть.
Точно так же, как и при использовании любого другого VPN-решения, принципиальной разницы здесь нет. Заворачиваешь нужный трафик с помощью iptables REDIRECT на какой-нибудь privoxy, который *.onion отправляет на tor, а *.i2p — на i2p соответственно. Суть примерно такая.
Но я бы крайне не советовал так поступать — такая схема открывает широкие возможности для вашей деанонимизации.
В ядро Linux 5.6 включили VPN WireGuard