Могу ли я еще раз выразить свою любовь к [WireGuard] и надеяться, что он скоро будет объединен? Возможно, код не идеален, но я его просмотрел, и по сравнению с ужасами OpenVPN и IPSec, это произведение искусства.Я уверен, что многие уже слышали о Wireguard. Некоторые даже ощупывали их вживую.Линус Торвальдс, в списке рассылки ядра Linux
Мне он очень понравился в производстве, как с точки зрения производительности, так и с точки зрения простоты настройки.
Да, в IPSEC VPN нет миллиона загадочных конфигураций на все случаи жизни вроде OpenVPN и XFRM+StrongSwan. Он простой и лаконичный как по коду, так и по конфигам.
Пройдет совсем немного времени, и он станет толстым и неуклюжим.
Короче говоря, это позитивный вариант сценария «сжечь наследие и написать всё как надо».
Я решил не писать очередное руководство о том, «как я установил Wireguard», а поделиться некоторыми полезными утилитами.
Некоторые с очень удачным, на мой вкус, графическим интерфейсом, подходящим для сервисов с большим количеством пользователей.
Давайте рассмотрим использование этого VPN для связи между узлами в разных кластерах Kubernetes, несколько веб-интерфейсов для генерации и парочку полезных ресурсов.
Зачем это вообще нужно?
Ключевой вопрос.Одной из его самых крутых особенностей является то, что он очень продуктивен.
В большинстве случаев задержка меньше, а пропускная способность выше при равной загрузке ЦП.
Если вы платите за используемые ресурсы или планируете арендовать виртуальные машины с учетом пиковых нагрузок, то этот тип VPN также сэкономит вам деньги.
Не думаю, что нужно объяснять, почему плохо пересылать трафик по открытым сетям между отдельными узлами.
Источник: www.wireguard.com/ Performance
Более того, стоит обратить внимание на то, что он включен в ядро начиная с Linux 5.6, а с весны этого года он также включен в основную ветку ядра Android, что дает нам отличную энергоэффективность на мобильные телефоны.
Хотя, надо сказать, что до этого особой нагрузки на батарею телефона не было.
Kilo — Wireguard для Kubernetes
Очень часто у более крупных компаний возникают ситуации, когда им необходимо использовать несколько разных облаков.Причины разные - отказоустойчивость, хорошее присутствие в регионе и низкие пинги.
Иногда цены указаны за конкретный товар.
Например, вы можете запускать интерфейсную и основную логику на своих собственных серверах и переносить задачи, требовательные к графическому процессору, на экземпляры AWS. Как это работает? Kilo требует наличия модуля ядра Wireguard на всех узлах.
Если вы используете ядра новее 5.6, то модуль уже будет в основной ветке и добавлять ничего не придется.
Далее на каждом узле кластера запускается агент «kg», настраивающий приватный и публичный ключи для организации VPN. Правила маршрутизации трафика между отдельными регионами также настраиваются автоматически.
Kilo также может работать совместно с другими сетевыми решениями для кластеров, такими как Flannel. В этом случае kilo будет обеспечивать связь между регионами, а Flannel позаботится о трафике внутри одной локации.
При построении топологии сети он опирается на топология.
kubernetes.io/регион , но вы можете отмечать регионы вручную.
Требования:
- Ядро новее 5.6 или отдельный модуль Wireguard
- Белые IP для узлов для организации прямого соединения между ними.
прошлогоднее выступление разработчиков на форумах Kubernetes в Сеуле и документация .
wg-gen-web
Что называется «еще один генератор конфигов».
Но очень приятно работать.
Основное отличие подхода в том, что автор не пытается на лету редактировать конфигурацию работающего сервиса, а лишь предоставляет удобный графический интерфейс для генерации правил.
Дальше вы сами реализуете обновление конфигов на свой вкус.
Ключевые возможности — генерирует удобные QR-коды для мобильных клиентов и отправляет все необходимые данные о подключении клиенту по электронной почте.
Ну, докеризованный, конечно.
Развертывание довольно простое:
docker run --rm -it -v /tmp/wireguard:/data -p 8080:8080 -e "WG_CONF_DIR=/data" vx3r/wg-gen-web:latest
Подпространство
Еще один графический интерфейс для удобной работы со многими клиентскими устройствами.
Основные особенности:
- Единый вход с использованием SAML. Вы можете войти в систему с помощью учетной записи Google.
- Добавление и удаление устройств в несколько кликов
- Генерация индивидуальных конфигов для каждого устройства.
Ну и QR-код, конечно.
- HTTPS от Let's Encrypt «из коробки» и автоматическое перенаправление на порт 443.
Можем поспать) На сервере должен быть установлен Wireguard и открыты порты: 80/tcp, 443/tcp, 51820/udp (WireGuard).
В этом случае нужно удалить стандартный dnsmasq, так как он будет запускаться в контейнере.
Дальше все вполне типично, просто замените --env SUBSPACE_HTTP_HOST на свой домен: # Your data directory should be bind-mounted as `/data` inside the container using the `--volume` flag.
$ mkdir /data
docker create \
--name subspace \
--restart always \
--network host \
--cap-add NET_ADMIN \
--volume /usr/bin/wg:/usr/bin/wg \
--volume /data:/data \
--env SUBSPACE_HTTP_HOST=subspace.example.com \
subspacecloud/subspace:latest
$ sudo docker start subspace
Репозиторий здесь .
Вместо выводов
Если вы еще не пробовали этот VPN, я настоятельно рекомендую его.Зачастую оно способно реанимировать не очень мощное оборудование, которое раньше не справлялось с нагрузкой.
Его также не очень сложно настроить.
Правда, его основная задача по-прежнему — пробивание прямых, заранее настроенных тоннелей.
Любые динамические конфигурации ему недоступны в обычном понимании.
Своеобразная плата за простоту и производительность.
Кстати, если вы еще не в курсе, Wireguard уже есть включен в бета-версию RouterOS 7.1 от МикроТик.
Можно попробовать и сейчас, но, на мой взгляд, он еще сыроват.
Ну и по традиции могу пригласить вас попробовать развернуть Wireguard на нашем VPS .
Например, направить часть трафика домашней сети в Швейцарию или Нидерланды.
У нас много разных локаций и ценовая политика очень приятная для таких задач.
Как я уже говорил, Wireguard очень ресурсоемок, поэтому минимальной конфигурации с 1 ядром и 1 ГБ ОЗУ будет более чем достаточно для поддержки большого количества клиентов.
Цены также вполне приемлемые:
- Расположение в Амстердаме, Лондоне, Франкфурте.
- А на московской площадке, с чуть более простым процессором — 240 ₽/мес.
Теги: #Сетевые технологии #Системное администрирование #Администрирование серверов #сети #Настройка Linux #ruvds_articles #ruvds_articles
-
Как И Почему Растет Индустрия Киберспорта
19 Oct, 24 -
Биография Стивена Возняка
19 Oct, 24 -
Работа С Базовой Анимацией На Iphone
19 Oct, 24 -
Мтс Подключен К Турникетам
19 Oct, 24 -
Почему Доллар Растет?
19 Oct, 24 -
Риэлтор 2.0 - Удобный Поиск Недвижимости
19 Oct, 24 -
Бросайте Камеры... Но Мы Этого Не Говорили!
19 Oct, 24