Для всех инструкций у вас должен быть на руках конфиг от человека, который держит Wireguard сервер.

Конфиг или файл конфигурации - это файл, содержащий в себе настройки для подключения к серверу. Он удобен тем, что его можно просто импортировать в приложение и оно настроится автоматически.

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

Указание DNS сервера в конфиге клиента необходимо для iOS и Windows. А в Linux это скорее создаст проблемы с resolvconf.

Если у вас есть исправления/дополнения к этой инструкции, пишите в комментариях.

Android

  1. Скачать приложение Wireguard из Google Store
    Оно также есть в F-Droid

  2. Теперь нужно открыть приложение и добавить конфиг. В приложении нажмите на кнопку с плюсом и выберите вариант “Import from file or archive” wg-android-2.jpg

  3. Перейдите в директорию, где у вас лежит файл с конфигурацией. Например, если вы его скачали из телеграма, то Downloads - Telegram. Выбирайте файл “$name.conf” wg-android-3.jpg Конфигурация импортирована wg-android-4.jpg

  4. Для запуска нажмите на переключатель около импортированного конфига. Теперь весь трафик с телефона ходит через Wireguard туннель и, скорее всего, у вас отобразится значок VPN в трее. wg-android-5.jpg

  5. Проверьте, что интернет работает и трафик идёт через VPN. Для этого можно воспользоваться одним из сайтов, показывающих ваш внешний IP адрес, например https://ifconfig.co/

Обратите внимание на страну, должна отобразиться та, в которой находится сервер с Wireguard - у меня это Финляндия. wg-android-6.jpg

Для включения и выключения VPN вам придется заходить в приложение и дергать переключатель. Что бы не заходить каждый раз в приложение, вынесите переключатель в быстрый доступ. Например, в MIUI опустите панель состояния и выберите редактировать (значок листа бумаги с ручкой). Из нижней панели выберите значок Wireguard, нажмите на него и зажав переместите куда удобно. wg-android-7.jpg

iPhone

  1. Скачать приложение Wireguard из App Store

  2. Теперь нужно открыть приложение и добавить конфиг. В приложении нажмите на кнопку Add a Tunnel (Добавить туннель) по центру или иконку с плюсом справа сверху и выберите вариант “Import from file or archive” (Создать из файла или архива) wg-iphone-1

  3. Перейдите в директорию, где у вас лежит файл с конфигурацией. У файла конфигурации будет логотип Wireguard. Выбираете конфиг и разрешаете iOS “Добавление конфигурации VPN”. wg-iphone-2

  4. Проверьте, что в вашем конфиге есть настройка DNS. Без этого в iOS не будет нормально работать туннель, при включенном туннеле. В приложении Wireguard нажмите “Править”. Если поле “DNS-серверы” заполнено, ничего менять не нужно. Если нет, то добавьте ip адрес какого-нибудь DNS сервера, например 8.8.8.8 и 1.1.1.1. Можно один, можно несколько через запятую. wg-iphone-5

  5. Для запуска нажмите на переключатель около импортированного конфига. Теперь весь трафик с телефона ходит через VPN, и отобразится значок VPN в трее. wg-iphone-4

  6. Проверьте, что интернет работает и трафик идёт через VPN. Для этого можно воспользоваться одним из сайтов, показывающих ваш внешний IP адрес, например https://ifconfig.co/

Обратите внимание на страну, должна отобразиться та, в которой находится сервер с Wireguard - у меня это Финляндия. wg-iphone-6

Для включения и выключения VPN, вам придется заходить в приложение и дергать переключатель. Или делать это через Настройки - VPN. В iOS нет способа из коробки как добавить ярлык в “Пункт управления”.

Windows

  1. Скачайте и установите приложение Wireguard с официального сайта

  2. Нажмите “Import tunnel(s) from file” и выберите файл с конфигурацией. wg-windows-1 wg-windows-2

  3. Проверьте, что в вашем конфиге есть настройка DNS. Без этого туннель в Windows не будет нормально работать. В Wireguard приложении нажмите “Edit”, и в блоке Interface должен быть параметр DNS. Если он есть, ничего менять не нужно. Если нет, то после строки Address добавьте строку

    DNS = 8.8.8.8, 1.1.1.1

    После этого нажмите Save wg-windows-4 Можно указать ip адреса публичных или ваших частных DNS серверов на ваш вкус. Можно один, можно несколько через запятую.

  4. Туннель добавлен и настроен. Для запуска нажмите “Activate”. Теперь весь трафик с компьютера ходит через VPN wg-windows-3

  5. Проверьте, что интернет работает, и трафик идёт через VPN. Для этого можно воспользоваться одним из сайтов, показывающих ваш внешний IP адрес, например https://ifconfig.co/

Обратите внимание на страну, должна отобразиться та, в которой находится сервер с Wireguard - у меня это Финляндия. wg-windows-5

Запускать туннель можно двумя способами:

  • Заходить в приложение и нажимать Activate
  • В трее нажимать правой кнопкой на ярлык Wireguard, и левой на имя вашей конфигурации. При установке Wireguard прописывается в автозагрузку, и поэтому он всегда будет в трее. wg-windows-6

Linux

Для запуска Wireguard в Linux есть два стула:

  • Консоль
  • Плагин для Network-Manager

Wireguard поддерживается в Netwrok-Manager из коробки. Только проблема в том, что настраивать и управлять им можно только через nmcli. Для того, что бы иметь toggle в GUI Network-Manager, необходимо ставить плагин, как и для OpenVPN. Пакета с плагином нет в PPA, его нужно собирать из исходников.

Пока разберём только консольный вариант для Ubuntu 20.04. Для всех остальных линуксов настройка особо не отличается. Команды для установки можно найти на официальной странице

  1. Ставим Wireguard

    sudo apt install wireguard
  2. Копируем конфиг в директорию /etc/wireguard/. Нужно sudo

    sudo cp test.conf /etc/wireguard/
  3. Используем wg-quick для поднятия и закрытия туннеля. Так же везде необходимо sudo, т. к. это создание интерфейса.

Имя конфигурации для wg-quick точно такое же, как имя файла конфига. Поднимаем

sudo wg-quick up test

Проверяем состояние туннеля

sudo wg show

wg-linux-1

Проверяем IP адрес и страну

curl ifconfig.co
curl ifconfig.co/country

Закрываем туннель

sudo wg-quick down test

При ошибке

line 32: resolvconf: command not found

Закомментируйте или выпилите строку DNS из блока [Interface].