Как просто создать свой VPN (WireGuard VPN)

Что мы будем настраивать?

В этом материале я покажу как на арендованный виртуальный сервер поставить WireGuard. Это аналог OpenVPN, только со своими протоколами шифрования, он быстрее чем OpenVPN, имеет меньшие задержки и штраф по скорости туннелирования и настраивается проще, чем что либо ещё.

Но и для openVPN и для WireGuard начало работы одинаковое.

Нужно найти место где вы будите брать в аренду виртуальный сервер.

Где арендовать виртуальный сервер за пределами РФ с оплатой в рублях

Если у вас есть иностранные VISA или Mastercard, то самое простое — это взять в аренду виртуальный сервер в DigitalOcean.

Но пока что надёжных обходных методов регистрации иностранных карт я не нашёл, так что будем рассматривать только то, что доступно при оплате картами из РФ.

Потратив минут 20 времени я нашёл три сервиса по аренде виртуальных серверов за пределами РФ с оплатой нашими недокартами в рублях.

RU VDS

Самый дорогой из трёх сервисов — это RU VDS. Минимальная комплектация около 550 рублей в месяц (есть скидка 5% по промокоду SAD-BQN-ABA, FVS-BJJ-KXO, GBV-TJW-BFT, QWN-KMC-QQI, UXD-XIF-KTD, LIV-KHI-SUG, VDV-JBD-KIO, JHN-UKP-IEQ, DCM-BBJ-XJB, KDA-HOC-NQA промокоды, к сожалению, одноразовые. Я их периодически обновляю). Но я этот сервис не выбрал для вас, так как пока я готовил материал у него из доступности к размещению пропали варианты в Германии и Нидерландах (на момент публикации они были вновь доступны). Возможно зарубежные мощности на пределах возможного и наплыв новых пользователей будет проблемным.

Доступны не все сервера
veesp.com

Второй сервис чуть дешевле. И я заранее ещё связался с этим сервисом, так что вам ещё есть промокод (90LHJT906Q9W — скидка 5%). 

Это сервис veesp.com.

Забегая вперёд скажу, что я буду показывать на примере этого варианта. Юридически он находится в Латвии, что не ограничивает возможности по расширению доступных мощностей в будущем из-за санкций на покупку оборудования, но при этом ориентирован на русскоязычных пользователей и компании, то есть имеется русскоязычная поддержка, и возможности оплаты любыми нашими картами. И сами сервера находятся в России и в Латвии, что максимально близко к России, а значит обеспечат минимальный пинг, и кроме того в Латвии достаточно много русскоязычных пользователей, чтобы, например, в кешах гугла, быстро дублировались видео на русском языке. То есть для просмотра ютуба сервера в Латвии — это один из наиболее оптимальных вариантов.

Если купить сразу на год, то с учётом скидки выходит примерно 3,5 доллара в месяц. Если купить просто на месяц то выходит около 4-х долларов.

G Core Labs

И третий вариант, что я нашёл — это G Core Labs. Самый дешёвый вариант. Тут есть возможность взять в аренду более слабые конфигурации, чем в двух других, и, соответственно ниже и цена, но этой конфигурации тоже вполне себе будет достаточно.

В Польше или Румынии можно арендовать виртуальный сервер меньше, чем за 300 рублей в месяц.

Вы можете и сами ещё поискать других хостеров. Уверен можно нарыть не один десяток вариантов, а если у вас есть возможность использовать работающие виза или мастеркард, то вариантов сотни, если не тысячи.

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

И на покупаемом виртуальном сервере должна быть возможность автоматического развертывания каких-то современных Linux дистрибутивов. Обычно это будет Ubuntu (VPS где такой возможности нет я в принципе не встречал).

Больше разницы никакой нет. Надо только смотреть на то, чтобы у выбранного тарифа для виртуального сервера не было ограничений по трафику. По производительности хватит чего угодно, берите просто самое дешёвое, что доступно.

Как подключиться к арендованному серверу

Если у вас Windows 10 или 11, MAC и Linux, то там вы можете начать подключение используя встроенную командную строку или терминал. Если у вас Windows 7, то вам понадобится сторонний терминал с поддержкой SSH.

Например PuTTY.

Несмотря на то, что я показываю на Windows 10 я его тоже поставил, так как в нём можно сохранить параметры для входа, что в будущем упростит работу.

Скачиваете его и запускаете.

  1. В окно имя хоста копируете IP адрес того сервера, что взяли в аренду.
  2. Придумайте название
  3. Сохраните запись
  4. Нажмите кнопку соединиться

При первом соединении возникнет всплывающее окно. В нём нажимаете «ок».

Далее откроется терминал, который будет ждать от вас залогинивания.

В качестве логина вводите Root

root

Пароль должен быть в сведениях о арендованном сервере.

Его нужно скопировать в буфер обмена в том месте где он у вас записан и далее в окне терминала нажать правую клавишу мыши, он вставится, но внешне отображаться не будет. Далее нажимайте «enter» и если вы сделали всё правильно, то вас залогинен на арендуемый сервер

Далее вы можете сменить пароль введя команду: passwd

passwd

И далее дважды ввести новый пароль

Пароль внешне так же не будет отображаться в терминале

Всё. теперь вы на своём сервере. И можете отдавать ему нужные для дальнейшей работы команды.

Настройка серверной части VPN. Установка WireGuard

Необходимо загрузить требуемые пакеты WireGuard и сконфигурировать их на сервере. И несмотря на то, что это простой процесс — его ещё можно упростить используя сторонние скрипты, направленные на то, чтобы настройка производилась не текстовыми командами, а в диалоговом режиме, ну то есть чтобы было «далее, далее, ок, ок, ок, готово». Кроме того есть скрипты которые упростят создание новых пользователей, чтобы не надо было прописывать создание ключей и всего такого, а всё делалось в одну команду.

И эти скрипты надо скачать.

Я предлагаю использовать то, что было собрано для удобного развёртывания VPN на разбери пай. И в дальнейшем к управлению и настройке WireGuard нужно будет обращаться через команду «pivpn».

Но для начала нужно скачать пакеты

Для этого надо ввести последовательно две команды:

apt install curl

Первая установится быстрее. Как закончит вводите вторую.

Текст второй команды:

curl -L https://install.pivpn.io | bash

Там надо будет ещё нажать «Y» для согласия.

Начнется установка в процессе которой возникнет диалоговое окно для конфигурирования.

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

Дальше вам нужно выбрать что вы хотите поставить WireGuard или OpenVPN.

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

Выбор порта, оставляйте как есть, если не знаете зачем вам нужно иное

Далее вам надо выбрать DNS сервер.

Тут можно выбрать по сути любой, так как в списке более менее надёжные и чистые по фильтрации и блокировкам DNS сервера.

Далее опять соглашаетесь на всё, что предлагает установщик.

После завершения установки разрешаете установщику перезагрузить ваш сервер.

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

Далее вам надо будет по новой залогиниться под рутом.

С паролем который вы создали в самом начале. главное не забыть пароль. Как вы видите я свой созданный 5 минут назад пароль вспомнил только с третьего раза.

Всё. Серверная часть готова.

Ваш VPN уже работает. Остаётся разобраться как к нему подключать устройства.

Настройка пользовательских частей

Для этого нужно насоздавать новых пользователей.

Для этого введите команду pivpn add и нажимаете enter.

pivpn add

Далее в терминале нужно вписать имя пользователя и ещё раз enter.

Для этого имени создается конфигурационный файл. В нём находятся все сведения необходимые для подключения к вашему VPN.

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

Для телефонов можно генерировать qr код.

Подключение Windows компьютеров к вашему VPN

Рассмотрим случай когда вы хотите подключить компьютер на Windows.

Для этого для начала нужно с официального сайта WireGuard скачать и установить клиент.

И в программе вы увидите, что вам нужен конфигурационный файл, который сейчас лежит на вашем арендом сервере.

Соответственно вам нужно этот файл скачать с сервера.

На самом деле так как сервер ваш, то вы кроме WireGuard можете его использовать и как хранилище, и установить на него чего-нибудь для удобного файлообмена. Поднять FTP сервер не сложнее, чем настроить WireGuard. Но если вам этого не надо, то скачать файл конфигурации можно и через терминал.

Файл конфигураций был создан в директории Home/VPN/configs

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

Для этого надо ввести команду:

cd /Home/VPN/configs

Путь можно скопировать из прошлого сообщения отработавшего pivpn add.

Для этого надо выделить нужный текст и нажать правую клавишу мышки.

У вас покажется введённый путь в новой стоке, что говорит о том, что вы сейчас дальше должны терминалу сказать что вы от него хотите в этой папке.

Вводите туда ls, чтобы вам показался список файлов.

Убеждаетесь что файл конфигурации нужного пользователя создался.

Далее его надо скачать.

Я покажу как это делать на Windows 10 или новее.

На Windows 7 нужно скачать от туда где брали PuTTY ещё программу PSCP и записать её в C/Windows/System32. Далее для Windows 7 всё также как в Windows 10 за исключением того, что в дальнейшей команде в Windows 10 будет scp, а в Windows 7 pscp, так как в семёрке надо обратиться к скаченному экзешнику, а в десятке — к стандартному приложению scp.

Я буду показывать для Windows 10.

Запускаете командную строку.

Вводите команду scp пробел root@%ip_ad%:/Home/VPN/configs/%conf_name%.conf пробел .

scp root@0.0.0.0:/Home/VPN/configs/%conf_name%.conf . (для Windows 10/11)
pscp root@0.0.0.0:/Home/VPN/configs/%conf_name%.conf . (для Windows 7 с установленным pscp)
//вместо 0.0.0.0 - ip Адрес вашего сервера
//вместо %conf_name% - название конфигурации, которую надо скачать

Нажимаете Enter. При первом подключении может возникнуть сообщение на которое нужно будет ввести yes и Enter.

Далее вам надо будет ввести пароль от вашего сервера после чего файл скачается.

Скачается он в папку пользователя. Ну то есть заходите в компьютер, диск С, пользователи, там ваш пользователь и там будет лежать файлик.

Далее в клиенте WireGuard даём путь к этому файлу и жмём подключить.

Всё. Клиентская часть VPN тоже работает.

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

У меня родной интернет 100 Мбит/с, так что насколько быстрый арендованный сервер я сказать не могу, но на загрузку он быстрее, чем мой домашний интернет.

Подключение смартфонов к вашему VPN

Скачиваете клиент WireGuard’а.

Можно через гугл плей, можно APK файлом.

Теперь заходим обратно в PuTTY на арендованный сервер.

Командой pivpn add создаём нового пользователя.

После того как он создался вызываем команду pivpn -qr. Жмёте enter.

pivpn -qr

После этого выпадает нумерованный список созданных пользователей.

В нём выбираем того, который предназначен для мобильного телефона путём ввода его номера из списка. Жмёте enter.

Высвечивается QR код.

Открываете WireGuard на телефоне:

жмёте на синий плюсик.

Жмёте сканировать QR код.

Сканируете его. После чего вводите название для подключения. Я ввёл такое же как на сервере, чтобы не путаться.

И всё. В программе есть только кнопочки вкл/выкл.

Во включенном состоянии рядом с часами появится значёк ключика. Программа легкая, запускается быстро из фона не вылетает, так что особых проблем не вызывает.

Вот и всё. Телефон подключен к вашему VPN

Коротко всё ещё раз

Если кто-то запутался, то коротко перечисляю всё по пунктам:

  1. Арендуете сервер
  2. Скачиваете PuTTY (или любой другой терминал с поддержкой SSH)
  3. Заходите на свой сервер и меняете пароль root пользователя
  4. Вводите две команды для установки и настройки piVPN
  5. Далее, далее, далее, ок, ок, ок…
  6. Создаёте необходимое количетсво новых пользователей командой pivpn add
  7. Устанавливаете клиенты WireGuard на компьютеры и телефоны
  8. Для телефонов генерируете QR коды для подключения к своему VPN командой pivpn -qr, для компьютеров через командную строку скачиваете конфигурационные файлы. Эти файлы можно передать родственникам или друзьям, кому вы хотите дать доступ к вашему VPN.
  9. Profit!

Важное предостережение

Для некоторых стран важно учитывать, что на выходе из арендованного сервера нешифрованный трафик виден регуляторам страны, в которой вы арендуете сервер. Ну то есть если вы качаете пиратский фильм через торренты, то могут возникнуть предъявы к той компании у которой вы арендуете сервер. И они вас за это по головке не погладят. Особенно это актуально для Германии. Там вообще строго с пиратством. Штрафы за скаченные фильмы там — это не истории для запугивания, там это реально есть и работает. Так что если качаете что-то такое эдакое отключайте VPN и качайте через местный интернет, не подставляйте хостера своего сервера. Вы друг другу должны быть друзьями, а не врагами — это залог долгой работы.

Видео на YouTube канале "Этот компьютер"

Добавить комментарий