DataLife Engine / WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

WireGuard - это набирающий популярность VPN сервер, который работает на уровне ядра Linux. Это позволяет ему обрабатывать пакеты намного быстрее по сравнению с OpenVPN. С помощью WireGuard вы можете создать частную виртуальную сеть и объединить компьютеры, которые находятся в разных домах или даже городах, точно так же как и с помощью OpenVPN.

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


Содержание статьи

Настройка WireGuard сервера в Linux

Существует скрипт для быстрого развертывания WireGuard. Он поддерживает не только Ubuntu, но и Debian, Fedora, CentOS, Artch Linux и Oracle Linux. Этот скрипт работает аналогично скрипту для простого развертывания OpenVPN. Программа задаст несколько вопросов, установит WireGuard и сгенерирует конфигурационные файлы для сервера и клиента. После установки с помощью скрипта можно добавлять новых клиентов, ограничивать доступ для старых или полностью удалить WireGuard. Таким образом, можно детально не разбираться самому как настроить WireGuard.

Выполните следующую команду для того чтобы скачать последнюю версию скрипта с GitHub:

curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh

Затем дайте файлу скрипта права на выполнение:

chmod +x wireguard-install.sh

Прежде чем запускать скрипт желательно посмотреть публичный IP вашего сервера. Для этого можно воспользоваться командой:

ip -br a
WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Команда отобразит список сетевых интерфейсов и их IP адреса. Как правило, реальный сетевой интерфейс имеет состояние UP. В данном случае это ens0. Если вы хотите подключатся к VPN серверу из интернет или обойти блокировки, вам необходимо установить его на VPS или другой сервер в сети. Список VPS для VPN можно найти здесь.

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

./wireguard-install.sh

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

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

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

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Следующие два вопроса - желаемый IP адрес сервера WireGuard в создаваемой виртуальной сети для IPv4 и IPv6. По умолчанию скрипт предлагает использовать 10.66.66.1:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

На следующем шаге нужно настроить порт, на котором будет доступен WireGuard:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

WireGuard умеет менять настройки DNS клиентов при подключении. На этом шаге можно указать DNS серверы, которые следует использовать:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

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

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

После того как установка завершится скрипт предложит создать конфигурацию для первого клиента. Достаточно ввести имя. Оно не должно быть длиннее 15 символов:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Далее надо указать желаемый IP адрес клиента IPv4 и IPv6. Здесь IP адрес задается при создании конфигурации и для каждого клиента всегда будет статическим:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

После этого скрипт сообщит что конфигурация создана и вы можете скачать её на свой компьютер или отсканировать QR код на телефоне:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Настройка сервера WireGuard завершена. Теперь можно переходить к настройке клиента.

Настройка клиента WireGuard

На компьютере с которого вы хотите подключится к WireGuard его тоже необходимо установить. В Ubuntu и Debian команда установки будет выглядеть следующим образом:

sudo apt install wireguard

Кроме того, если в системе не установлены пакеты resolvconf и iptables их надо установить:

sudo apt install resolvconf iptables

После этого переместите скачанный конфигурационный файл клиента WireGuard в папку /etc/wireguard и переименуйте в wg0.conf. Имя конфигурационного файла должно соотвествовать имени сетевого интерфейса, который будет создан WireGuard. Например:

sudo mv ~/wg0-client-losst.conf /etc/wireguard/wg0.conf

Или вы можете просто скопировать содержимое файла на сервере и вставить его в локальный /etc/wireguard/wg0.conf. Файл довольно небольшой, в отличии от OpenVPN. Теперь вы можете подключится к серверу используя команду wg-quick:

wg-quick up wg0
WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Вы можете убедится что виртуальная сеть работает, попробовав пинговать VPN сервер по внутреннему адресу 10.66.66.1. Также можно проверить что интернет тоже работает:

WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

По умолчанию весь трафик клиента перенаправляется через VPN сервер. Это настроено в конфигурационном файле клиента с помощью директивы AllowedIPs. Здесь указано 0.0.0.0, что означает все адреса, однако вы можете изменить эти настройки и перенаправлять только нужный трафик, или вообще не перенаправлять. Посмотреть состояние подключения WireGuard можно командой:

sudo wg show
WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Если вы хотите чтобы WireGuard подключался к серверу автоматически после загрузки системы можно добавить его в автозагрузку systemctl:

sudo systemctl enable wg-quick@wg0.service

Для запуска используйте:

sudo systemctl start wg-quick@wg0.service

А состояние можно проверить с помощью команды status:

sudo systemctl status wg-quick@wg0.service
WireGuard за 5 минут: Быстрый VPN для Linux без сложных настроек

Теперь вы знаете как выполняется настройка клиента WireGuard.

Выводы

В этой статье мы рассмотрели как выполняется простая настройка WireGuard в Linux. Как видите, не обязательно разбираться в тонкостях работы с программой для того чтобы установить её на сервер. По моим субъективным ощущениям интернет с WireGuard быстрее по сравнению с OpenVPN. А каким VPN вы пользуетесь? Напишите в комментариях!

30-10-2025, 20:00
Вернуться назад