Wireguard — установка, настройка, робота

Wireguard — установка, настройка, робота

WireGuard — чрезвычайно простой, но быстрый и современный VPN-сервис, использующий передовую криптографию . Он стремится быть быстрее , проще , компактнее и полезнее IPsec, избегая при этом серьёзных проблем. Он также стремится быть значительно производительнее OpenVPN. WireGuard разработан как универсальный VPN-сервис для работы как на встраиваемых интерфейсах, так и на суперкомпьютерах, подходящий для самых разных ситуаций. Изначально выпущенный для ядра Linux, теперь он кроссплатформенный (Windows, macOS, BSD, iOS, Android) и широко развёртываемый. В настоящее время он находится в стадии активной разработки, но уже сейчас его можно считать самым безопасным, простым в использовании и простым VPN-решением в отрасли.

Зачем вам VPN?

VPN может понадобиться по разным причинам, вот например 3 из них:

  • Обход блокировок — зайти на сайт, который заблокирован в вашей стране (например, на YouTube в России).
  • Игры с друзьями — создать VPN-сервер и подключиться к нему вместе с друзьями, чтобы можно было играть, как в локальной сети.
  • Получать ранний доступ к нейронкам — некоторые нейронкам выходят сначала в США, а только потом в других странах, или вообще доступны только там. С помощью VPN вы можете получить к ним доступ.

Переходим к этапу установки VPN

Прежде чем начать, нужно понять, что вам потребуется VPS-сервер в той стране, из которой вы хотите заходить на сайты или получать доступ к нейронкам. Если вам нужен VPN только для игр с друзьями, то желательно арендовать сервер в вашей стране, чтобы в играх был меньший пинг (конечно, если вы и ваши друзья находитесь в одной стране).

Я использую провайдера OVHcloud, он мне подходит. Вам он может не подойти — либо из-за невозможности оплаты, либо из-за отсутствия серверов в США для доступа к нейронкам.

Этапы установки VPN
  1. Покупка VPS-сервера
    Мы покупаем VPS-сервер и ждем, пока он будет готов к работе. Это может занять от 15 минут до 3 часов.
  2. Получение данных для доступа
    После этого мы получаем IP-адрес сервера, логин и пароль. (На некоторых провайдерах вам нужно заранее установить свой SSH-ключ или задать пароль).
  3. Подключение к серверу
    Мы используем эти данные, чтобы подключиться к серверу через SSH-клиент.
  4. Установка VPN
    Устанавливаем необходимый протокол. Мы будем использовать протокол WireGuard и его упрощенную панель управления Wg-Easy для удобной настройки.
  5. Проверка работы
    Подключаемся к нашему VPN с личного устройства и проверяем его работу,

Покупка VPS-сервераПолучение данных для доступа

На примере OVHcloud: мы заходим по данной ссылке и выбираем нужный вариант (нам подойдёт самый дешёвый). Следуем инструкциям на сайте и проводим оплату. После этого мы получаем на почту письмо с данными для подключения к VPS-серверу, а на сайте будет доступна панель управления сервером VPS.

На некоторых провайдерах требуется сгенерировать SSH-ключ. Чтобы сгенерировать ключ в Windows, откройте cmd (командную строку) и введите команду:

ssh-keygen -t ed25519 -C "Введите ваш электронный адрес"

Примечание:

Если вы используете устаревшую систему, которая не поддерживает алгоритм Ed25519, используйте:

ssh-keygen -t rsa -b 4096 -C "Введите ваш электронный адрес"

Нажимаем Enter

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

Готово. Теперь перейдите по пути C:\Users\Ваш_пользователь\.ssh и откройте файл id_ed25519.pub. Скопируйте его содержимое и вставьте в поле для SSH-ключа на сайте провайдера, затем подтвердите действие.

После этого подключение к серверу будет происходить без пароля.

На OVHcloud можно добавить SSH-ключ при желании, во время переустановки системы, выбрав вход по ключу и паролю или только по ключу (рекомендуется).

Вот пример, как это сделать:

Подключение к серверу

Инструкция написана для операционной системы Debian, поэтому для других систем она может отличаться.

Для подключения к серверу под управлением Windows можно использовать следующие программы: CMD (командная строка), PowerShell или PuTTY.

Мы покажем пример на CMD (командной строке). Запустите её и введите команду:
ssh vpn@192.168.52.107

Где:

  • vpn — это имя пользователя;
  • 192.168.52.107 — IP-адрес вашего сервера.

Нажмите Enter. Если вы не настраивали SSH-ключ, система запросит пароль. Введите его (при вводе символы не отображаются) и снова нажмите Enter.

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

Установка VPN

Мы будем устанавливать панель управления WG-Easy. Подход к установке может меняться, поэтому самая свежая инструкция всегда находится на их GitHub.

  1. Заходим под пользователем root: sudo -i;
  2. Обновляем систему: apt update && apt full-upgrade -y && reboot — После этого сервер перезагрузится, и вам нужно будет заново войти;
  3. Устанавливаем Docker: curl -sSL https://get.docker.com | sh — Если выводится ошибка -bash: curl: команда не найдена, то сначала установите curl: sudo apt install curl -y — а потом повторите команду установки Docker;
  4. Создаем папку для файлов конфигурации: mkdir -p /etc/docker/containers/wg-easy;
  5. Скачиваем файл конфигурации: sudo curl -o /etc/docker/containers/wg-easy/docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml;
  6. Запускаем сервер: cd /etc/docker/containers/wg-easy && docker compose up -dПосле запуска дождитесь полной инициализации и откройте в браузере адрес:
    https://ВАШ_IP_СЕРВЕРА:51821.

Вы увидеть приблизительно такую картину:

  1. Подключаемся к VPS-серверу под пользователем root и следуем инструкции.
  2. Останавливаем контейнер WG-Easy: sudo docker stop wg-easy
  3. Открываем файл конфигурации: sudo nano /etc/docker/containers/wg-easy/docker-compose.yml
  4. Редактируем файл так, как показано:

До:

services:
  wg-easy:
    #environment:
    #  Optional:
    #  - PORT=51821
    #  - HOST=0.0.0.0
    #  - INSECURE=false

После:

services:
  wg-easy:
    environment:
    #  Optional:
    #  - PORT=51821
    #  - HOST=0.0.0.0
      - INSECURE=true

5. Сохраняем изменения:

  • Нажимаем Ctrl + O (для сохранения)
  • Нажимаем Ctrl + X (для выхода из редактора)

6. Запускаем VPN-сервер заново:

cd /etc/docker/containers/wg-easy && sudo docker compose up -d

Готово! Сервер перезапущен с новыми настройками. Теперь этого уведомления нет.
  1. Редактировать конфиг клиента
  2. Показать QR-код для подключения телефона
  3. Скачать конфиг клиента

Готово. Теперь скачиваем программу WireGuard и запускаем её. Скачиваем файл конфигурации своего клиента и импортируем его в программу, как показано ниже.

Проверка работы

Готово! Теперь вы можете проверить подключение к VPN.

Как проверить:
Зайдите на сайт 2ip.ru или 2ip.ua. Также попробуйте открыть любой сайт, который был вам недоступен до этого.

Если вы настраиваете VPN для игр с друзьями:

  1. Создайте для каждого друга по отдельному конфигу клиента.
  2. Отправьте им эти файлы.
  3. Попросите их:
    • Установить программу WireGuard.
    • Импортировать полученный конфиг.
    • Подключиться к VPN.

Ваш IP-адрес в сети, который нужно сообщить друзьям для подключения, указан в программе WireGuard.

Заключение

Данная инструкция не предусматривает все возможные непредвиденные обстоятельства. Если вы с ними столкнётесь, вам придётся самостоятельно искать решение проблемы на официальном GitHub проекту или в Google.

Мы постарались описать основные пункты, которые на момент публикации данного руководства должны работать в 90% случаев.

Спасибо за прочтение! До свидания.

Комментарии

Комментариев пока нет. Почему бы ’Вам не начать обсуждение?

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

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