-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Сделать генерацию конфигов Wireguard для участников #589
Comments
Ты хочешь сказать, что никакого DHCP и каждый входящий клиент прибит гвоздями к внутренней сети? |
А нельзя при добавлении SSH ключа VPN ключ генерить и ложить туда же в репу? |
А почему нельзя? Я думал будет обратная проблема, что при подключении VPN устройства в моей локалке станут недоступны, как и доступ к инету. Я не уверен как маршрутизация работает в этом случае. |
А разве VPN не предполагает раздачу IP из подсети, в которую клиент коннектится? |
В МалиноХС проблема с WG была в том, что роутер надо было перепрошивать, все боялись это делать (и пугали меня). :D |
Именно так, это WG, детка. |
А если у человека 2-3 устройства? Два компа и телефон? |
Я в ЗХС сто раз так делал :) |
Предполагает, но подсеть по дефолту локальная для VPN-сервера, как ты там дальше разруливаешь — другой вопрос. |
Потому что мультикаст по дефолту проходить не будет. Но это решаемо, судя по гуглу. |
Бридж wg<->eth можно организовать с использованием parprouted, который будет пересылать ARP запросы-ответы, править таблицы роутинга (добавляя роуты на хост, для которого появилась запись в ARP-таблице): https://wiki.debian.org/BridgeNetworkConnectionsProxyArp . Обычный бридж не поднимешь, потому что WG работает на уровне IP-протокола, а не на MAC-уровне. Но учитывая то, что адреса в WG всё равно должны быть выданы статически, это практически не даёт преимущества по сравнению с маршрутизацией отдельной подсети, зато усложняет конфигурацию и отладку VPN-сервера. |
В блокчейне.. :D есть возможность несколько ключей доступа генерить из одного мастер ключа. Не уверен, правда, что они одним приватником открываются. Надо спрашать. Но да, добавлять SSH доступ на GitHub для какого-нибудь RPi я бы не стал. Для таких случаев нужен пул айпишников. По линуксовому - префикс с числом ключей к имени ключа добавлять. :D |
Add generation and storing of per-user sets of WireGuard configs. User can generate needed number of configurations for every device. Task: #589
Генерация конфигов сделана, остался экспорт для сервера. |
Add generation and storing of per-user sets of WireGuard configs. User can generate needed number of configurations for every device. To generate keys, 'wg' binary should be installed and accessible by PATH at the webserver. Task: #589
Add generation and storing of per-user sets of WireGuard configs. User can generate needed number of configurations for every device. To generate keys, 'wg' binary should be installed and accessible by PATH at the webserver. Task: #589
Add generation and storing of per-user sets of WireGuard configs. User can generate needed number of configurations for every device. To generate keys, 'wg' binary should be installed and accessible by PATH at the webserver. Task: #589
Есть идея перевести VPN для доступа в сеть ХС с OpenVPN на WireGuard.
Для этого нужно решение по генерации конфигов, поскольку WG рассчитано на уникальность ключей и IP-адресов для каждого клиента. У каждого участника может быть несколько устройств, с которых он захочет иметь доступ в ХС, в том числе одновременно.
Возможный вариант:
В профиле пользователя есть список имеющихся конфигураций, пустой по дефолту. Рядом ссылка на инструкцию по настройке клиента под Windows/Linux/Mac.
Кнопка "Создать конфигурацию WG", по нажатию на неё:
VPN-сервер:
По крону обновляет конфигурацию клиентов с сайта. При этом сайт отдаёт конфиги только активных юзеров. Сервер синхронизирует локальную базу с базой сайта, добавляя-удаляя-редактируя записи у себя.
Открытые вопросы для обсуждения:
разрешать ли default route (доступ в интернет через ХС) или только доступ в сеть ХС? Если да, то опционально (галочка в свойствах конфигурации) или по дефолту?
можно ли с WG сделать, чтобы работал mDNS/Bonjour (доступ по именам устройств вида freddy.local)?
Ответ: Можно, но нужно ставить mdns рефлектор на VPN сервере. В теории возможна маршрутизация multicast пакетов, но на практике сложна в настройке (нужна корректировка TTL и всё такое).
можно ли WG интерфейс сервера объединить в мост с ETH-интерфейсом, смотрящим в сеть ХС, и раздать клиентам IP из той же подсети, что и внутри ХС? И надо ли? Тогда не надо настраивать ничего на маршрутизаторе, зато усложняет настройку VPN-сервера. Сейчас OpenVPN сервер как раз работает в режиме ethernet-моста, клиент получает IP-адрес от основного DHCP-сервера ХС.
Ответ: Можно использовать методику proxy arp, но на практике не нужно, проще раздать маршруты через DHCP и редиректить пакеты, всё равно пришедшие на default gateway, но адресованные узлам-клиентам WG, на собственно маршрутизаторе.
The text was updated successfully, but these errors were encountered: