Pull to refresh

Comments 32

У меня в версии 0.4.5 галочка «Test experimental kernel driver» появилась прямо в GUI. По умолчанию снята, поставил, работает, по скорости в моём случае (VPN-сервер в Адстердаме) даёт прирост процентов на 5-10 (на чистоту эксперимента не претендую, на результат могли влиять и другие факторы и просто случайные отклонения, я всего лишь прогнал раз 10 подряд Speedtest с новой опцией и без неё).

Очень даже хорошая новость.

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

хех... я из-за него начал смотреть на Rust... Если уж этот "м*дак" (может так не показаться, но это в положительном ключе) это одобрил, то видимо на это есть причины.

Вообще, это интересный пример того, как программист-любитель пишет более качественный код для ядра Windows, чем профессионалы из Microsoft.

Я бы не стал называть Джейсона любителем. Он и до создания wireguard был уже известным специалистом, с OSS проектами и собственным микробизнесом в области безопасности. И уж точно его квалификация на порядок выше среднего индуса на окладе в MIcrosoft.

Стало неприятным открытием, что теперь в Windows, точно так же, как и в macOS, невозможно загрузить самоподписанный драйвер, даже добавив свой собственный CA. 2000 долларов за возможность запустить свой собственный код на своей собственной машине, как замечательно...

А пробовали перевести Windows в режим TESTSIGNING?

Не соглашусь, это не то же самое.

TESTSIGNING, как и отключение SIP в macOS, позволяет запускать любые драйвера, в том числе подписанные левыми сертификатами каких-нибудь абстрактных вирусописателей.

Это не то же самое, что и запускать драйвера, подписанные моим сертификатом. Я не хочу отказываться от механизмов безопасности ОС — пусть они служат на благо, но меня удручает то, что мое мнение не принимается во внимание. Я должен либо платить, либо согласиться с тем, что будет запущен произвольный код, независимо от его подписи.

Изначально писали что невозможно загрузить без денег. А невозможно только в пользовательском режиме. А как отделить ваш сертификат от не вашего? А если он подделан? Как в MacOS с этим делом?

В macOS невозможно без денег и договора с Apple (чтобы получить особый entitlement в сертификат подписи), безотносительно режима. Чтобы отличить мой сертификат от не моего, достаточно проследить его цепочку подписей - если она заканчивается на моем CA, то это мой сертификат. Если не заканчивается, или имеются нарушения подписей посредии, то это не мой сертификат.

Мой CA я согласен добавить через csrutil из безопасного режима, как это происходит для отключения SIP. Вот только Apple не согласна. Раньше можно было добавить CA в системное хранилище ключей и использовать его для верификации подписи драйвера, больше нельзя.

Насчет того, что сертификат может быть подделан - как можно подделать сертификат?

В macOS невозможно без денег и договора с Apple, безотносительно режима.

Получается на Windows ситуация лучше?

Насчет того, что сертификат может быть подделан - как можно подделать сертификат?

Тут нет компетенции к сожалению, мало ли что поддается взлому...

Получается на Windows ситуация лучше?

Так ведь и на Windows ситуация точно такая же -- без денег никак. Хочешь свой драйвер -- нельзя, можно только вовсе отключить все проверки и сидеть с голой задницей, что в macOS (`csrutil enable --without kext`), что в Windows (TESTSIGNING). В результате может быть загружен совершенно любой драйвер совершенно любой малвари, а не тот, который утвержден моей криптографической подписью.

Тут нет компетенции к сожалению, мало ли что поддается взлому...

Для того, чтобы взломать типичный корневой сертификат с RSA-ключом в 4096 бит, не хватит времени жизни Вселенной. Если Вы считаете, что сертификаты легко подделываются, значит, можно подделать корневой сертификат Apple или Microsoft и подписывать произвольный код и так.

UFO just landed and posted this here

Не сможет, для этого нужно иметь физический доступ, т.к. использование csrutil подразумевает перезагрузку в recovery mode, которая отличается от обычного другими флагами в nvram. Если малварь может перезагрузиться в recovery, то эта малварь - я.

Брать доверенный CA с UEFI?(если уж туд CA какой то попал — то либо ему производитель компьютера доверяет а пользователю — плевать, либо доверяет пользователь)

Можно включить testsigning, впихнуть свой драйвер, потом выключить. Другие левые дрова больше не пролезут, а ваш продолжит работать.

Для переключения TestSigning требуется перезагрузка, насколько я знаю.

Не продолжит, самоподписанный/неподписанный драйвер отправится на мороз после перезагрузки.

Пробовал эту штуку. Очень понравилось. Реально быстро и просто. Но порог вхождения выше простого юзера, поскольку требует начальной настройки, которая может оказаться нетривиальной. Оно реально просто, когда знаешь. А когда не знаешь - можно убить несколько дней на Гугл. Особенно, если клиент или сервер за натом. Документация по настройке на сайте wireguard очень скудная. Спасают только бложики и stackoverflow. И даже если вроде начало работать и пошли пинги, то легко можно тут же упороться в MTU.

У меня скорее была проблема - "вот эти две команды запустить и пять строчек в конфиг добавить - И ВСЁ????", в итоге долго и старательно пытался понять что еще донастроить нужно.

Да, такая же хрень. По описанию всё просто, а когда оно не работает, то фиг пойми, почему.

UFO just landed and posted this here

Любопытный проект, спасибо! Но не внушает доверия, что выпуск ключей в третьих руках.

На скорую руку погуглив, нашел реализацию центрального сервера headscale. Не пробовали?

UFO just landed and posted this here

Ещё очень понравилось, что есть клиенты подо всё. Лучший, как мне кажется - под планшеты. А мой телек теперь легко и непринужденно показывает нетфликс для другой страны в 4к. Главное - срастить конфиг для своего случая и потом клонировать для остальных своих устройств.

Теперь wireguard клиент не будет требовать админских прав при подключении?

UFO just landed and posted this here

Подскажите, можно ли в WireGuard настроить жёсткую привязку клиентов к их индивидуальным IP-адресам? Насколько эта привязка надёжна? Может ли клиент обойти её и получить другой IP-адрес?

Да, в конфиге сервера для каждого клиенского ключа задается ip, или диапазон. В клиентском конфиге он же. Сейчас попробовал менять адрес на клиенте, не пускает.

У каждого клиента свой ключ для подключению к серверу
На сервере прописывается диапазон адресов от куда может подключится клиент
Ни что не мешает задать конкретный адресс

Может кто знает как на win машине создать два одновременных подключения к разным vpn серверам?

примерно $2000 за трёхлетний

Да, после того как Digicert перестал давать 50% скидку через портал hdev, действительно стало дороговато. Могли бы и сразу написать, что EV сертификат от Globalsign более чем в два раза дешевле обходится. ​

Sign up to leave a comment.