Интересно VPN в каждый дом или как создать собственный VPN сервер

Takeshi

Перо Дьявола
Команда форума
PR-group
CPA & Трафик
Регистрация
23 Янв 2019
Сообщения
1,351
Баллы
0
Общие продажи
0$
Общие покупки
0$
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Я хочу сделать это просто
В сети существует достаточно много статей о том, как настроить WireGuard, вот некоторые из них:





Но что, если я просто хочу установить WireGuard, без глубокого изучения документации?

Я просто хочу наиболее простым и быстрым способом развернуть VPN сервер и начать использовать его.



Все что мне нужно от инфраструктуры:



  • 1 сервер
  • 5–10 клиентов для меня и моих близких


Ниже — инструкция, как сделать это быстро и просто.



Создайте дроплет


Сначала вам нужно создать новый дроплет на DigitalOcean:

Please Login or Register to view hidden text.





Мне подходит самый простой c Ubuntu 18.04, который стоит 5$ в месяц.



Не забудьте добавить свой SSH ключ, чтобы иметь доступ к дроплету:

Please Login or Register to view hidden text.





Замечание. DigitalOcean — не единственно возможный вариант. Вы можете выбрать любой облачный сервис на ваш вкус.



Установите сервер WireGuard и создайте все необходимые конфигурации


Чтобы создать все необходимые конфигурации автоматически, вы можете использовать скрипт:

Please Login or Register to view hidden text.

, который:



  • установит весь необходимый софт
  • настроит правила iptables и включит IPv4 forwarding
  • создаст серверную конфигурацию и необходимое количество клиентских конфигураций
  • запустит WireGuard


Установите соединение с дроплетом через SSH и выполните следующие команды, чтобы скачать и запустить скрипт (используйте IP адрес вашего дроплета, вместо xxx.xxx.x.xx):



ssh [email protected]

wget

Please Login or Register to view hidden text.


chmod +x ./wg-ububtu-server-up.sh

./wg-ububtu-server-up.sh 10 # цифра 10 означает "создай 10 клиенских конфигураций"



После выполнения скрипта, сервер WireGuard будет установлен, запущен и готов к работе с клиентами.



Признак корректного запуска WireGuard — после отработки скрипта, вы должны увидеть в консоли что-то похожее на:



interface: wg0
public key: +xxxEjj1qmxxxotq4OxxxfHPaxxxtre5xxxxOfxxw=
private key: (hidden)
listening port: 51820

peer: d1exxxLdCZcYxxxIQ0xxxxK/Wpx8G1N8xxvnUrxxxx=
allowed ips: 10.0.0.2/32

peer: fWExxxazRxxxUOxxxx4JKgUTxxo9LaxxxxOGWtxxK0w=
allowed ips: 10.0.0.3/32

...

peer: RbmxxxDxOoXMxxxcyate6xxxinIClxxDgRDxxxx0j0=
allowed ips: 10.0.0.10/32



Скрипт так же создаст 10 клиентских конфигураций [client1.conf…client10.conf], которые вы можете использовать по одной конфигурации для одного устройства (в один момент времени).



Конфигурации лежат в дроплете, в папке: $HOME/wireguard/



Замечание. Вы можете сконфигурировать WireGuard вручную, без использования скрипта, но тогда это не подходит под определение "быстро" и "без глубокого изучения документации". В следующей статье, если к этому будет интерес, я расскажу о происходящей внутри скриптов магии.



Замечание2. Вы сможете резонно заметить, что еще проще — использовать уже готовый образ в том же самом DO и не запускать никакие скрипты. Соглашусь, но обращу ваше внимание на то, что в предложенных скриптах всего 100 строк кода и легко проверить, что никакого криминала в них нет. В готовом образе это сделать сложнее.



Замечание3. Команда для установки соединения с дроплетом (ssh) работает в *nix подобных операционных системах. Если у вас Windows, используйте

Please Login or Register to view hidden text.

,

Please Login or Register to view hidden text.

или другое подобное приложение.



Устанавливаем десктопный клиент


Скачайте десктопное приложение WireGuard с сайта

Please Login or Register to view hidden text.

и установите его.



Скачайте клиентский конфиг (допустим, вы хотите использовать конфиг client1.conf) с вашего дроплета (используйте IP адрес вашего дроплета, вместо xxx.xxx.x.xx):



scp [email protected]:"~/wireguard/client1.conf" ~/Desktop/



Запустите десктопную версию WireGuard и импортируйте туннель из скаченной клиентской конфигурации (client1.conf).



Замечание. Команда для скачивания (scp) работает в *nix подобных операционных системах. Если у вас Windows, используйте

Please Login or Register to view hidden text.

или другое подобное приложение.



Замечание2. Вы можете использовать также версию WireGuard без GUI и использовать те же самые клиентские конфигурации.



Установите клиент для мобильного телефона


Установите приложение WireGuard через AppStore или PlayMarket.



Запустите его и импортируйте VPN туннель через QR код.



Как получить QR код


Вы можете сгенерировать QR код, подключившись к дроплету (используйте IP адрес вашего дроплета, вместо xxx.xxx.x.xx) и выполнив команду (в случае, если вы будете использовать клиентский конфиг client2.conf):



ssh [email protected]

qrencode -t ansiutf8 < ~/wireguard/client2.conf



Спасибо.