Настраиваем WireGuard − VPN нового поколения

Wireguard

На тему VPN я уже писал ранее, но PPTP достаточно сложный в настройке. Сейчас мы рассмотрим другой сервер, отличающийся быстрой работой и простотой настройки − WireGuard.

Зачем нужен VPN?

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

  1. Вы имеете доступ к какому-то сервису, но в целях безопасности там ограничения по IP-адресу. А у вас адрес динамический. Практически все сервера VPN имеют статический адрес, что вас неплохо выручит в такой ситуации.
  2. Ваша страна или регион подвергаются дискриминации, например, ряд сервисов от Google недоступен жителям Крыма. И в таком случае VPN поможет вам изменить своё виртуальное местонахождение. Кстати, я пользовался этим способом для выполнения домашних заданий по иностранному языку на Google Classroom − недоступном для Крыма сервисе.
  3. Вас не пускает на какой-то сайт в связи с наличием локального ресурса для вашей страны. Например, когда-то нельзя было зайти с Украины на yandex.ru в связи с существованием сайта yandex.ua − принудительно перенаправляло на украинский вариант.

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

Серверная часть

Для начала добавим репозиторий с нужными пакетами. Отмечу, что если у вас на сервере установлена Ubuntu 20.04, этот шаг можно пропустить − нужные пакеты имеются в репозиториях от Canonical. Но если вы хотите быстрее получать обновления, можете добавить − ошибки не возникнет. Итак, добавляем:

sudo add-apt-repository ppa:wireguard/wireguard

Если у вас Ubuntu старше, чем 18.04 (например, 16.04 или более древняя), вам нужно дополнительно обновить список пакетов:

sudo apt update

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

apt install wireguard-tools mawk grep iproute2 qrencode

Скачиваем скрипт для настройки:

wget https://raw.githubusercontent.com/burghardt/easy-wg-quick/master/easy-wg-quick

Позволяем этому скрипту выполнение:

chmod +x easy-wg-quick

Далее скрипт запускаем:

sudo ./easy-wg-quick

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

Дополнительно в целях безопасности рекомендую изменить файл wghub.conf. Порт по умолчанию замените на любой неиспользуемый, желательно с номером после 50000 − обычно сканеры эти порты не проверяют. Также можно изменить IP-адреса для своей сети на любые удобные вам. Эти же изменения внесите в файл portno.txt.

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

sudo ./easy-wg-quick my_second_profile

Файлы wghub.conf, wghub.key и wgpsk.key скопируйте в папку /etc/wireguard, при необходимости создав её.

Проверяем состояние сервиса и при необходимости запускаем его вручную:

service wg-quick@wghub status
service wg-quick@wghub start

Сервер должен работать, на этом настройки серверной части закончены.

Клиентские профили можно создавать и позже, только не забывайте копировать файл wghub.conf в папку /etc/wireguard и перезапускать сервис.

Клиентская часть

Если у вас только смартфон на Android, настройка клиента очень простая. Вначале из PlayMarket устанавливаете приложение WireGuard, затем им сканируете QR-код, созданный при настройке серверной части. У вас в списке сетевых подключений появляется новое, которое можно включать и выключать при необходимости.

Если у вас Windows, настройка тоже не доставит особых проблем. Скачиваете приложение с сайта https://www.wireguard.com/, устанавливаете его как обычно. Затем копируете файл с клиентским профилем и импортируете его в программу. Соединение можете включать и выключать при необходимости.

Если же вы, как и я, являетесь любителем Linux, настройка немного сложнее. Для начала достаньте бубен установите пакеты, как для серверной части, только не надо запускать wg-quick для создания конфигурации сервера. Вместо этого в папку /etc/wireguard скопируйте созданный файл с клиентским профилем.

WireGuard включается как обычный сетевой интерфейс в Linux:

sudo wg-quick up your_profile_name

Только вместо your_profile_name укажите имя своего файла. Можно начать набирать первые символы и нажать Tab.

Для выключения вместо up нужно набрать down.

Проверить состояние WireGuard можно командой ifconfig − при включенном VPN у вас будет дополнительный сетевой интерфейс wg0.

Комментарии:

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *