Познакомлю вас интересной VPN системой на базе Wireguard, которую недавно посоветовали в комментариях - DefGuard. Это open source проект с очень привлекательными возможностями, который можно развернуть полностью у себя. Это аналог таких продуктов, как firezone, pritunl, netbird.
📌 Что в первую очередь привлекает внимание:
▪️ многофакторная (MFA) или двухфакторная (2FA) аутентификация на базе TOTP/Email и pre-shared keys;
▪️ интеграция с OpenID
▪️ возможность объединения нескольких VPN шлюзов с разными настройками в едином веб интерфейсе;
▪️ возможность подтягивать пользователей из LDAP;
▪️ система прав доступа к туннелям на базе пользователей и паролей;
▪️ свой десктопный клиент для реализации MFA;
Набор возможностей для бесплатного self-hosted продукта внушительный. При этом по стурктуре он не очень сложный. Я почитал описание, документацию, развернул у себя и в целом разобрался с его концепцией. Но сразу скажу, что быстро настроить и всё попробовать не получилось. Где-то часа два провозился, часть возможностей настроил, но не всё. MFA не сделал. Попробовал только создание пользователей, заведение VPN шлюза, подключение клиента.
Расскажу оснвную идею, как это работает. DefGuard упакован в Docker. Развернуть монжо как вручную через docker compose, так и автоматически через bash скрипт. Вся информация в репозитории и документации.
Далее вы идёте в веб интерфейс, добавляете новый Location. Это сущность, которая представялет из себя настроенный сервер Wireguard. Он может быть установлен как локально вместе с веб интерфейсом, так и вынесен куда-то в другое место. Таких Location может быть много. У каждого свои настройки, маршруты, которые он обслуживает, группы пользователей, которым можно к нему подключаться.
Далее создаёте пользователя со своими параметрами. Можно настроить сервер так, что после создания пользователя, он будет отправлять email со всеми ссылками и паролями. Пользователь может зайти в веб интерфейс под своей учёткой, посмотреть свои настройки, WG туннели, которые ему доступны, статистику подключений. Может скачать настройки отдельных туннелей, чтобы использовать их в любых других клиентах WireGuard, если у него не включена MFA.
Родное приложение позволяет реализовать возмжоность MFA при подключении к серверам DefGuard, а так же использовать его как обычный WG клиент для подключения к любым другим VPN туннелям. У меня не получилось настроить MFA. Либо что-то не допонял по последовательности действий, либо где-то ошибся. Думаю, что там всё работает нормально, так как в Issues не заметил каких-то вопросов по этой теме. Думаю, надо просто больше времени потратить на настройку.
Помимо всего описанного, DefGuard поддерживает YubiKeys. У меня, кстати, есть такой. Любопытная штука, но я так и не стал им пользоваться. Также реализованы Webhooks на некоторые действия с пользователями: создание, удаление, смена пароля, добавление YubiKey. В осноном это для того, чтобы настроить те или иные введомления для пользователя.
Благодаря интеграции с OpenID, можно настроить сквозную аутентификацию через DefGuard в друиге сервисы, которые тоже его поддерживают. Например, Proxmox. Пример, как это выглядит, показан в документации. Там же есть примеры интеграции с Portainer, Grafana, MinIO, Vault, Django, Matrix.
В целом, продукт очень привлеактельный. Из бесплатных self-hosted аналогов не много. Netbird.io разве что. Расскажу про него на днях отдельно.
⇨ Сайт / Исходники
#vpn #wireguard
📌 Что в первую очередь привлекает внимание:
▪️ многофакторная (MFA) или двухфакторная (2FA) аутентификация на базе TOTP/Email и pre-shared keys;
▪️ интеграция с OpenID
▪️ возможность объединения нескольких VPN шлюзов с разными настройками в едином веб интерфейсе;
▪️ возможность подтягивать пользователей из LDAP;
▪️ система прав доступа к туннелям на базе пользователей и паролей;
▪️ свой десктопный клиент для реализации MFA;
Набор возможностей для бесплатного self-hosted продукта внушительный. При этом по стурктуре он не очень сложный. Я почитал описание, документацию, развернул у себя и в целом разобрался с его концепцией. Но сразу скажу, что быстро настроить и всё попробовать не получилось. Где-то часа два провозился, часть возможностей настроил, но не всё. MFA не сделал. Попробовал только создание пользователей, заведение VPN шлюза, подключение клиента.
Расскажу оснвную идею, как это работает. DefGuard упакован в Docker. Развернуть монжо как вручную через docker compose, так и автоматически через bash скрипт. Вся информация в репозитории и документации.
Далее вы идёте в веб интерфейс, добавляете новый Location. Это сущность, которая представялет из себя настроенный сервер Wireguard. Он может быть установлен как локально вместе с веб интерфейсом, так и вынесен куда-то в другое место. Таких Location может быть много. У каждого свои настройки, маршруты, которые он обслуживает, группы пользователей, которым можно к нему подключаться.
Далее создаёте пользователя со своими параметрами. Можно настроить сервер так, что после создания пользователя, он будет отправлять email со всеми ссылками и паролями. Пользователь может зайти в веб интерфейс под своей учёткой, посмотреть свои настройки, WG туннели, которые ему доступны, статистику подключений. Может скачать настройки отдельных туннелей, чтобы использовать их в любых других клиентах WireGuard, если у него не включена MFA.
Родное приложение позволяет реализовать возмжоность MFA при подключении к серверам DefGuard, а так же использовать его как обычный WG клиент для подключения к любым другим VPN туннелям. У меня не получилось настроить MFA. Либо что-то не допонял по последовательности действий, либо где-то ошибся. Думаю, что там всё работает нормально, так как в Issues не заметил каких-то вопросов по этой теме. Думаю, надо просто больше времени потратить на настройку.
Помимо всего описанного, DefGuard поддерживает YubiKeys. У меня, кстати, есть такой. Любопытная штука, но я так и не стал им пользоваться. Также реализованы Webhooks на некоторые действия с пользователями: создание, удаление, смена пароля, добавление YubiKey. В осноном это для того, чтобы настроить те или иные введомления для пользователя.
Благодаря интеграции с OpenID, можно настроить сквозную аутентификацию через DefGuard в друиге сервисы, которые тоже его поддерживают. Например, Proxmox. Пример, как это выглядит, показан в документации. Там же есть примеры интеграции с Portainer, Grafana, MinIO, Vault, Django, Matrix.
В целом, продукт очень привлеактельный. Из бесплатных self-hosted аналогов не много. Netbird.io разве что. Расскажу про него на днях отдельно.
⇨ Сайт / Исходники
#vpn #wireguard
👍91👎4
На базе Wireguard есть очень крутая, частично бесплатная, open source платформа для построения VPN сетей - netbird.io. Это платный SaaS сервис, который имеет бесплатный тарифный план, а так же бесплатную self-hosted версию. Расскажу кратко своими словами, что она из себя представляет и как работает.
Вы разворачиваете у себя серверную часть из пакетов или готового docker compose файла. Далее на любую популярную десктопную или мобильную систему устанавливаете агента. Причём установка максимально простая. Достаточно при установке указать url сервера и специальный ключ. Установленный агент появляется в панели управления сервером.
Теперь все настройки выполняются через веб интерфейс на сервере. Вы можете пользователей и подключенные сервера объединять в различные группы и настраивать политики доступа на уровне файрвола и маршрутов. Можно, к примеру, создать группу пользователей и группу тестовых серверов. И разрешить этим пользователям пинговать, подключаться по SSH и HTTP к этим серверам. И больше ничего. Настройки очень гибкие.
Если есть какое-то оборудование, куда нельзя установить агент netbird, но хочется управлять доступом к нему, можно для существующих клиентов VPN сети указать какой-то узел сети в качестве шлюза, через который они будут подключаться к целевой машине. А уже на ней настроить в файрволе конкретные разрешения для указанного шлюза. Для разных пользователей могут использоваться разные шлюзы и, соответственно, правила на файрволе.
Таким образом, с помощью netbird можно покрыть всю существующую инфраструктуру и централизованно управлять доступом. Причём политики доступа могут быть очень гибкие. Например, можно запретить подключаться клиентам с какой-то определённой версией системы. Например, Windows 7 или iOS, если у ваших сотрудников их нет вообще. То же самое можно делать по географическому признаку - запретить подключаться из каких-то стран.
Подключения между агентами устанавливаются напрямую, если это возможно. Если нет - используется технология STUN и TURN. Пиры VPN сети связаны между собой на базе Wireguard. Для тех, кто будет писать, что WG блокируют, сразу скажу, что это не инструмент для обхода блокировок. Не надо его пытаться использовать в этом ключе. Это система для построения mesh сети разнородных узлов с централизованным управлением доступа.
У Netbird нет собственной системы хранения учётных записей. Используется внешний IdP (identity provider). Это может быть Authentik, Keycloak или Zitadel. Для self-hosted установки есть готовый docker compose, где автоматически разворачивается Netbird в связке с Zitadel. Есть готовый bash скрипт для установки этой связки. Необходимо подготовить VPS с внешним IP и настроенной DNS записью. Далее просто запускаем:
Подробно подобная установка и управление этой связкой описано в соответствующем разделе документации.
По возможностям Netbird очень сильно похож на Tailscale, только у последнего нет официального self-hosted сервера с подобной функциональностью. Тут мне что-то подсказывает, что со временем тоже не будет. Слишком хорош он в подобной редакции. Скорее всего по мере роста популярности, возможности self-hosted версии будут уменьшаться. Так же его можно сравнить с Netmaker или Nebula, но по возможностям и удобству он их превосходит.
Подробный обзор установки и использования Netbird можно посмотреть в свежем видео:
▶️ Install a self-hosted VPN platform // Netbird
Я ничего похожего по возможностям и забесплатно не знаю. Выглядит всё очень удобно и функционально для объединения и инфраструктуры, и внешних пользователей для работы с ними. Попробовать всё это можно на бесплатном тарифном плане в облаке. Ограничение там - 5 пользователей и 100 устройств.
⇨ Сайт / Исходники
#vpn #wireguard
Вы разворачиваете у себя серверную часть из пакетов или готового docker compose файла. Далее на любую популярную десктопную или мобильную систему устанавливаете агента. Причём установка максимально простая. Достаточно при установке указать url сервера и специальный ключ. Установленный агент появляется в панели управления сервером.
Теперь все настройки выполняются через веб интерфейс на сервере. Вы можете пользователей и подключенные сервера объединять в различные группы и настраивать политики доступа на уровне файрвола и маршрутов. Можно, к примеру, создать группу пользователей и группу тестовых серверов. И разрешить этим пользователям пинговать, подключаться по SSH и HTTP к этим серверам. И больше ничего. Настройки очень гибкие.
Если есть какое-то оборудование, куда нельзя установить агент netbird, но хочется управлять доступом к нему, можно для существующих клиентов VPN сети указать какой-то узел сети в качестве шлюза, через который они будут подключаться к целевой машине. А уже на ней настроить в файрволе конкретные разрешения для указанного шлюза. Для разных пользователей могут использоваться разные шлюзы и, соответственно, правила на файрволе.
Таким образом, с помощью netbird можно покрыть всю существующую инфраструктуру и централизованно управлять доступом. Причём политики доступа могут быть очень гибкие. Например, можно запретить подключаться клиентам с какой-то определённой версией системы. Например, Windows 7 или iOS, если у ваших сотрудников их нет вообще. То же самое можно делать по географическому признаку - запретить подключаться из каких-то стран.
Подключения между агентами устанавливаются напрямую, если это возможно. Если нет - используется технология STUN и TURN. Пиры VPN сети связаны между собой на базе Wireguard. Для тех, кто будет писать, что WG блокируют, сразу скажу, что это не инструмент для обхода блокировок. Не надо его пытаться использовать в этом ключе. Это система для построения mesh сети разнородных узлов с централизованным управлением доступа.
У Netbird нет собственной системы хранения учётных записей. Используется внешний IdP (identity provider). Это может быть Authentik, Keycloak или Zitadel. Для self-hosted установки есть готовый docker compose, где автоматически разворачивается Netbird в связке с Zitadel. Есть готовый bash скрипт для установки этой связки. Необходимо подготовить VPS с внешним IP и настроенной DNS записью. Далее просто запускаем:
# export NETBIRD_DOMAIN=netbird.example.com; curl -fsSL https://github.com/netbirdio/netbird/releases/latest/download/getting-started-with-zitadel.sh | bashПодробно подобная установка и управление этой связкой описано в соответствующем разделе документации.
По возможностям Netbird очень сильно похож на Tailscale, только у последнего нет официального self-hosted сервера с подобной функциональностью. Тут мне что-то подсказывает, что со временем тоже не будет. Слишком хорош он в подобной редакции. Скорее всего по мере роста популярности, возможности self-hosted версии будут уменьшаться. Так же его можно сравнить с Netmaker или Nebula, но по возможностям и удобству он их превосходит.
Подробный обзор установки и использования Netbird можно посмотреть в свежем видео:
▶️ Install a self-hosted VPN platform // Netbird
Я ничего похожего по возможностям и забесплатно не знаю. Выглядит всё очень удобно и функционально для объединения и инфраструктуры, и внешних пользователей для работы с ними. Попробовать всё это можно на бесплатном тарифном плане в облаке. Ограничение там - 5 пользователей и 100 устройств.
⇨ Сайт / Исходники
#vpn #wireguard
👍77👎4
Для управления простым в установке и настройке VPN туннелем WireGuard существует много веб-панелей. Про некоторые я уже писал ранее. Недавно перебирал свои черновики и нашёл ещё один проект, который раньше не пробовал. Я развернул и настроил сервер с Wireguard буквально за несколько минут. Установка и настройка очень простые, а возможностей достаточно не только для управления клиентами, но и настройками самого сервера.
❗️Сразу скажу, что это решение не для обхода блокировок и замедлений, а для доступа к закрытым сетям. Не надо писать о том, что WG блокируют провайдеры. Внутри РФ у меня нет с этим проблем. Во время написания заметки пробовал подключаться и через смартфон, и через проводной интернет дома и на работе. У меня не возникает проблем с подключением ни по WG, ни по OVPN. Я пользуюсь ими постоянно во время работы. Иногда бывают проблемы на мобильном интернете, но так было всегда, а не только последнее время.
Оформил всё это дело в короткую заметку, по которой простым копированием команд можно быстро настроить свой сервер и запустить в работу. Настраивать буду, как обычно, на Debian 12.
Устанавливаем необходимые пакеты:
Сразу разрешим пересылку пакетов между сетевыми интерфейсами. Иногда забываю это сделать, а потом долго разбираюсь, почему ничего не работает.
Скачиваем wireguard-ui в ту же директорию, где живут настройки службы WG:
Запускаем wireguard-ui, ждём несколько секунд, чтобы она создала конфигурацию для службы:
Останавливаем wireguard-ui. Нажимаем в консоли
Запускаем службу WireGuard:
Проверяем, что интерфейс wg0 поднялся и правила iptables добавились:
Веб-панель умеет вносить изменения в настройки WG, но не умеет перезапускать службу. Воспользуемся возможностями SystemD.Path для автоматического перезапуска туннеля после изменения файла конфигурации. Создаём файл /etc/systemd/system/wgui.path:
И саму службу /etc/systemd/system/wgui.service:
Запускаем их:
Сделаем отдельный юнит для автозапуска wireguard-ui после старта машины /etc/systemd/system/wireguard-ui.service:
Запускаем и добавляем в автозапуск одновременно:
Идём в веб интерфейс по IP адресу сервера на порт 5000. Учётка по умолчанию - admin / admin. Базовые настройки сервера мы уже сделали. Можно добавлять пользователей и подключаться. При необходимости можно изменить настройки сервера. Не забудьте изменить учётную запись администратора.
⇨ 🌐 Исходники
📌Полезные материалы на тему использования WG:
◽️Wireproxy - socks5/http прокси на базе WG
◽️TunnlTo - управление маршрутами в туннели WG на основе приложений
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#wireguard #vpn
❗️Сразу скажу, что это решение не для обхода блокировок и замедлений, а для доступа к закрытым сетям. Не надо писать о том, что WG блокируют провайдеры. Внутри РФ у меня нет с этим проблем. Во время написания заметки пробовал подключаться и через смартфон, и через проводной интернет дома и на работе. У меня не возникает проблем с подключением ни по WG, ни по OVPN. Я пользуюсь ими постоянно во время работы. Иногда бывают проблемы на мобильном интернете, но так было всегда, а не только последнее время.
Оформил всё это дело в короткую заметку, по которой простым копированием команд можно быстро настроить свой сервер и запустить в работу. Настраивать буду, как обычно, на Debian 12.
Устанавливаем необходимые пакеты:
# apt install wireguard iptablesСразу разрешим пересылку пакетов между сетевыми интерфейсами. Иногда забываю это сделать, а потом долго разбираюсь, почему ничего не работает.
# echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf# sysctl -pСкачиваем wireguard-ui в ту же директорию, где живут настройки службы WG:
# cd /etc/wireguard# wget https://github.com/ngoduykhanh/wireguard-ui/releases/download/v0.6.2/wireguard-ui-v0.6.2-linux-amd64.tar.gz# tar -xzvf wireguard-ui-v0.6.2-linux-amd64.tar.gzЗапускаем wireguard-ui, ждём несколько секунд, чтобы она создала конфигурацию для службы:
# ./wireguard-uiОстанавливаем wireguard-ui. Нажимаем в консоли
Ctrl+C. Сразу добавим необходимые параметры в /etc/wireguard/wg0.conf:PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;PostDown = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE;Запускаем службу WireGuard:
# systemctl enable --now wg-quick@wg0.serviceПроверяем, что интерфейс wg0 поднялся и правила iptables добавились:
# ip a | grep wg# iptables -L -v -n -t nat | grep MASQUERADEВеб-панель умеет вносить изменения в настройки WG, но не умеет перезапускать службу. Воспользуемся возможностями SystemD.Path для автоматического перезапуска туннеля после изменения файла конфигурации. Создаём файл /etc/systemd/system/wgui.path:
[Unit]Description=Watch /etc/wireguard/wg0.conf for changes[Path]PathModified=/etc/wireguard/wg0.conf[Install]WantedBy=multi-user.targetИ саму службу /etc/systemd/system/wgui.service:
[Unit]Description=Restart WireGuardAfter=network.target[Service]Type=oneshotExecStart=/usr/bin/systemctl restart wg-quick@wg0.service[Install]RequiredBy=wgui.pathЗапускаем их:
# systemctl enable wgui.{path,service}# systemctl start wgui.{path,service}Сделаем отдельный юнит для автозапуска wireguard-ui после старта машины /etc/systemd/system/wireguard-ui.service:
[Unit]Description=WireGuard UI ServiceAfter=network.target[Service]Type=simpleUser=rootWorkingDirectory=/etc/wireguardExecStart=/etc/wireguard/wireguard-uiRestart=on-failure[Install]WantedBy=multi-user.targetЗапускаем и добавляем в автозапуск одновременно:
# systemctl enable --now wireguard-ui.serviceИдём в веб интерфейс по IP адресу сервера на порт 5000. Учётка по умолчанию - admin / admin. Базовые настройки сервера мы уже сделали. Можно добавлять пользователей и подключаться. При необходимости можно изменить настройки сервера. Не забудьте изменить учётную запись администратора.
⇨ 🌐 Исходники
📌Полезные материалы на тему использования WG:
◽️Wireproxy - socks5/http прокси на базе WG
◽️TunnlTo - управление маршрутами в туннели WG на основе приложений
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#wireguard #vpn
1👍171👎5
На прошлой неделе смотрел видео про необычную систему под названием Pangolin. Не стал про него упоминать, потому что толком не понял, что это за штука, хоть и подозревал, что что-то полезное. В итоге я её развернул, разобрался, как работает, и теперь расскажу своими словами. Это очень крутой и полезный софт, который, думаю, многим пригодится.
Pangolin - обратный прокси на базе Traefik со своей системой аутентификации или IAM (Identity and Access Management). Он способен объединять разрозненные веб сервера с помощью встроенной интеграции с Wireguard. Расскажу сразу на конкретном примере, как это работает.
Допустим у вас есть веб сервер с каким-то сайтом или другим веб-приложением, к которому вы хотите ограничить доступ, так как у него нет своей аутентификации, или вы просто хотите его скрыть от посторонних глаз. Рассказываю по шагам, что вам нужно будет сделать.
1️⃣ Покупаете или создаёте любую VPS с внешним IP и настроенной DNS записью. Устанавливаете туда Pangolin.
2️⃣ Создаёте в веб панели Pangolin так называемый сайт, что на самом деле означает отдельный веб сервер.
3️⃣ Получаете в Pangolin параметры подключения внешнего веб сервера к серверу с Pangolin. Он может использовать как стандартный WireGuard клиент, так и свой собственный под названием Newt. Это консольная программа, не требующая для установки туннеля прав root. В Pangolin вы получите готовую строку подключения типа:
для подключения веб сервера к Pangolin.
4️⃣ После того, как веб сервер подключится к Pangolin, создаёте у него в веб интерфейсе новый ресурс, который по сути является сайтом, к которому нужно ограничить доступ. Указываете URL, по которому он должен отвечать, IP адрес и порт на веб сервере, куда будут проксироваться запросы.
5️⃣ Меняете DNS запись сайта на IP адрес сервера Pangolin. Теперь он будет перенаправлять все запросы через WG туннель настроенного урла на веб сервер. То есть работает как обычный обратный прокси, только все запросы к веб серверу заворачивает в VPN.
6️⃣ В свойствах сайта в веб интерфейсе Pangolin настраиваете параметры доступа. Это может быть пользователь или роль на самом Pangolin, одиночный пароль или 6-ти значный PIN код.
7️⃣ Теперь при открытие настроенного урла, запрос будет уходить на сервер Pangolin. После успешной аутентификации запрос будет перенаправлен на веб сервер.
Всё это работает по HTTPS, сертификаты Let's Encrypt получаются автоматически. Сервер Pangolin собран в Docker контейнеры. Можно запускать его вручную через Docker Compose или использовать готовый установщик:
Я развернул, довольно быстро разобрался и закрыл аутентификацией тестовый сайт, который запустил на этом же VPS через Nginx на других портах. Каких-то особых проблем не было.
Я не раз видел в чате вопросы на тему того, как закрыть аутентификацией сайт, в котором её нет. До этого я рекомендовал взять Authentik, настроить там интеграцию с каким-то обратным прокси и его basic_auth и таким образом закрыть доступ. Но этот путь гораздо сложнее того, что я описал сейчас. Тут всё проще и быстрее. Разворачиваете Pangolin, создаёте пользователей, настраиваете проксирование и закрываете доступ к сайту.
⇨ 🌐 Сайт / Исходники / Видеообзор
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#webserver #wireguard #traefik #sso
Pangolin - обратный прокси на базе Traefik со своей системой аутентификации или IAM (Identity and Access Management). Он способен объединять разрозненные веб сервера с помощью встроенной интеграции с Wireguard. Расскажу сразу на конкретном примере, как это работает.
Допустим у вас есть веб сервер с каким-то сайтом или другим веб-приложением, к которому вы хотите ограничить доступ, так как у него нет своей аутентификации, или вы просто хотите его скрыть от посторонних глаз. Рассказываю по шагам, что вам нужно будет сделать.
# newt --id qqsyaa51zaovqdn --secret wyfbohgwk1uohzj2u8n2t4xn9gny9czgw7jmx3dk1nys755r --endpoint https://336261.simplecloud.ruдля подключения веб сервера к Pangolin.
Всё это работает по HTTPS, сертификаты Let's Encrypt получаются автоматически. Сервер Pangolin собран в Docker контейнеры. Можно запускать его вручную через Docker Compose или использовать готовый установщик:
# wget -O installer "https://github.com/fosrl/pangolin/releases/download/1.0.0-beta.8/installer_linux_amd64" && chmod +x ./installerЯ развернул, довольно быстро разобрался и закрыл аутентификацией тестовый сайт, который запустил на этом же VPS через Nginx на других портах. Каких-то особых проблем не было.
Я не раз видел в чате вопросы на тему того, как закрыть аутентификацией сайт, в котором её нет. До этого я рекомендовал взять Authentik, настроить там интеграцию с каким-то обратным прокси и его basic_auth и таким образом закрыть доступ. Но этот путь гораздо сложнее того, что я описал сейчас. Тут всё проще и быстрее. Разворачиваете Pangolin, создаёте пользователей, настраиваете проксирование и закрываете доступ к сайту.
⇨ 🌐 Сайт / Исходники / Видеообзор
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#webserver #wireguard #traefik #sso
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2👍165👎5
Небольшой полезный проект на тему WireGuard, который в простых случаях заменяет веб интерфейс – wg-cmd. С его помощью можно в консольном режиме настроить сервер, добавить пользователей и прямо с консоли через QR-код настроить клиентов. Удобно, если сами настраиваете клиентов, к примеру, для своей семьи и прочих родственников, чьи смартфоны у вас под рукой.
Сразу предугадывая сообщения на тему того, что WG блокируют и т.д., скажу, что использовать WG надо внутри РФ на VPS. Это не заметка про то, как обходить блокировки и прочие ограничения. К этой VPS можно подключаться откуда-то извне (не наоборот) любым способом, который доступен. И на этой VPS решать все свои задачи, не трогая клиентские устройства.
Сразу напишу готовую инструкцию, чтобы можно было быстро воспроизвести. Делать всё буду на Debian 12.
Запустится консольный установщик. Можно на все вопросы ответить по умолчанию, ничего не меняя. Программа создаст все необходимые конфигурационные файлы, добавит правила в iptables, создаст wg интерфейс и юнит systemd.
После конфигурации откроется интерфейс управления сервером, где можно добавить клиента и тут же в консоли посмотреть QR код для него. В основном для этого обычно используется какой-то простенький веб интерфейс, типа wg-easy. Маленькая программа wg-cmd его заменяет. Можно добавлять и удалять пользователей, и считывать QR-коды. Больше она ничего не умеет. При желании можно руками в конфигурационных файлах клиентов что-то поправить, добавив дополнительные настройки.
Я лично проверил, всё завелось без проблем. Единственное, пришлось шрифт терминала немного уменьшить, чтобы QR-код поместился. Экрана ноута не хватило по высоте. Это самый простой и быстрый способ настроить WG и подключить клиента. И не надо веб интерфейс наружу выставлять и потом думать, чем его закрыть.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#wireguard #vpn
Сразу предугадывая сообщения на тему того, что WG блокируют и т.д., скажу, что использовать WG надо внутри РФ на VPS. Это не заметка про то, как обходить блокировки и прочие ограничения. К этой VPS можно подключаться откуда-то извне (не наоборот) любым способом, который доступен. И на этой VPS решать все свои задачи, не трогая клиентские устройства.
Сразу напишу готовую инструкцию, чтобы можно было быстро воспроизвести. Делать всё буду на Debian 12.
# apt update && apt install wireguard-tools iptables# curl -SL https://github.com/andrianbdn/wg-cmd/releases/download/v0.1.6/wg-cmd-0.1.6-linux-amd64 -o /usr/local/bin/wg-cmd# chmod 755 /usr/local/bin/wg-cmd# wg-cmdЗапустится консольный установщик. Можно на все вопросы ответить по умолчанию, ничего не меняя. Программа создаст все необходимые конфигурационные файлы, добавит правила в iptables, создаст wg интерфейс и юнит systemd.
После конфигурации откроется интерфейс управления сервером, где можно добавить клиента и тут же в консоли посмотреть QR код для него. В основном для этого обычно используется какой-то простенький веб интерфейс, типа wg-easy. Маленькая программа wg-cmd его заменяет. Можно добавлять и удалять пользователей, и считывать QR-коды. Больше она ничего не умеет. При желании можно руками в конфигурационных файлах клиентов что-то поправить, добавив дополнительные настройки.
Я лично проверил, всё завелось без проблем. Единственное, пришлось шрифт терминала немного уменьшить, чтобы QR-код поместился. Экрана ноута не хватило по высоте. Это самый простой и быстрый способ настроить WG и подключить клиента. И не надо веб интерфейс наружу выставлять и потом думать, чем его закрыть.
❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.
#wireguard #vpn
👍100👎3