Инструкция по установке WireGuard на VPS

Инструкция по установке WireGuard на VPS с использованием скрипта angristan/wireguard-install

Это простая инструкция для установки и настройки WireGuard на вашем VPS с помощью скрипта angristan/wireguard-install. Скрипт автоматизирует процесс установки, настройки и управления WireGuard.

Требования

  • VPS с операционной системой Linux (Ubuntu, Debian, CentOS или другие поддерживаемые дистрибутивы).
  • Пользователь с правами root или sudo.
  • Установленный curl (обычно уже есть в системе).

Установка WireGuard

1. Подключитесь к вашему VPS через SSH:

ssh root@your_vps_ip

2. Скачайте скрипт установки:

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

3. Дайте права на выполнение скрипту:

chmod +x wireguard-install.sh

4. Запустите скрипт:

./wireguard-install.sh

5. Настройте параметры при первом запуске:

  • Порт: Выберите порт для WireGuard (по умолчанию 51820).
  • Имя первого клиента: Введите имя для первого пользователя (например, client1).
  • DNS-серверы: Выберите DNS-серверы (например, Google DNS или Cloudflare).
  • Endpoint: Если у вас есть домен, вы можете указать его. Иначе используйте IP-адрес вашего сервера.
  • Подсеть: Задайте подсеть для WireGuard (по умолчанию 10.66.66.0/24).

6. После завершения настройки скрипт автоматически создаст конфигурационные файлы и запустит WireGuard. Конфигурационный файл клиента будет сохранён в текущей директории с именем wg0-client-<имя_клиента>.conf.

Дальнейшее управление

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

./wireguard-install.sh

Меню скрипта:

  • 1) Add a new user – Добавить нового пользователя.
  • 2) List all users – Показать список всех пользователей.
  • 3) Revoke existing user – Отозвать существующего пользователя.
  • 4) Uninstall WireGuard – Полностью удалить WireGuard.
  • 5) Exit – Выйти из меню.

Что умеет скрипт

  • Автоматическая настройка WireGuard.
  • Создание конфигурационных файлов для сервера и клиентов.
  • Включение IP Forwarding для маршрутизации трафика.
  • Гибкая настройка порта, DNS-серверов, домена и подсети.
  • Поддержка IPv6 “из коробки”.
  • Управление пользователями без необходимости перезапуска WireGuard.

Минусы

  • При создании нового пользователя нужно нажимать Enter три раза (это даёт возможность выбора IP-адреса).
  • Конфигурационные файлы клиентов имеют префикс wg0-client-, что может быть неудобно для некоторых пользователей.

Особенности работы с VPS Selectel

Рекомендуем использовать VPS от Selectel достаточно VPS за 200 р.

Теперь у вас есть работающий WireGuard сервер, готовый к использованию!

=====================================

Руководство по установке WireGuard VPN на VPS с использованием скрипта angristan/wireguard-install

Данное руководство описывает процедуру установки и настройки VPN-сервера на базе протокола WireGuard на виртуальном частном сервере (VPS) под управлением ОС Linux. Для автоматизации процесса используется скрипт angristan/wireguard-install.

Предварительные требования

  • Виртуальный частный сервер (VPS) с ОС Linux (поддерживаются дистрибутивы Ubuntu, Debian, CentOS и другие, совместимые со скриптом).
  • Доступ к серверу с правами суперпользователя (root) или пользователя с привилегиями sudo.
  • Установленная утилита curl для загрузки скрипта по URL.

Процедура установки

1. Подключение к серверу: Установите SSH-соединение с вашим VPS:

ssh root@your_vps_ip

Замените your_vps_ip на актуальный IP-адрес вашего сервера. При необходимости используйте имя пользователя с sudo-привилегиями вместо root.

2. Загрузка скрипта установки: Скачайте скрипт angristan/wireguard-install в домашний каталог:

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

3. Предоставление прав на выполнение: Установите флаг исполнения для загруженного файла:

chmod +x wireguard-install.sh

4. Запуск скрипта: Инициируйте выполнение скрипта:

./wireguard-install.sh

5. Первоначальная конфигурация: Скрипт запросит необходимые параметры для настройки сервера WireGuard. Следуйте интерактивным инструкциям:

  • Сетевой порт (Port): Укажите UDP-порт для WireGuard (значение по умолчанию: 51820).
  • Имя первого клиента (First client name): Задайте идентификатор для первого VPN-клиента (например, user1).
  • DNS-резолверы (DNS servers): Выберите DNS-серверы, которые будут использоваться клиентами при подключении (предлагаются варианты Google, Cloudflare, OpenDNS и другие).
  • Публичный адрес (Endpoint): Скрипт автоматически определит публичный IPv4 и/или IPv6 адрес сервера. Подтвердите предложенный вариант или введите доменное имя, если оно настроено для вашего IP-адреса.
  • Подсеть (Subnet): Определите внутреннюю IP-подсеть для VPN-туннеля (значение по умолчанию: 10.66.66.0/24).

6. Завершение установки: После ввода всех параметров скрипт автоматически установит необходимые пакеты, сгенерирует ключи, настроит сетевые параметры (включая IP Forwarding и правила iptables/nftables), запустит службу WireGuard и создаст конфигурационный файл для первого клиента.

Конфигурационный файл клиента (wg0-client-<имя_клиента>.conf) будет сохранен в текущем каталоге. Также на экран будет выведен QR-код для быстрой настройки мобильных клиентов.

Управление пользователями и службой

Для последующего управления сервером WireGuard (добавление новых пользователей, отзыв существующих, удаление WireGuard) повторно запустите скрипт:

./wireguard-install.sh

Будет представлено меню со следующими опциями:

  • 1) Add a new user – Добавление нового клиента VPN.
  • 2) List all users – Отображение списка активных клиентов.
  • 3) Revoke existing user – Отзыв доступа для существующего клиента.
  • 4) Uninstall WireGuard – Полное удаление WireGuard с сервера.
  • 5) Exit – Выход из скрипта управления.

Ключевые возможности скрипта

  • Автоматизация установки и конфигурации WireGuard.
  • Генерация конфигурационных файлов сервера и клиентов.
  • Автоматическая настройка IP Forwarding и правил брандмауэра.
  • Гибкий выбор порта, DNS, Endpoint и подсети.
  • Интегрированная поддержка IPv6.
  • Управление клиентскими подключениями без перезапуска службы.

Особенности конфигурации для Selectel VPS

При развертывании WireGuard на VPS-хостинге Selectel следует учесть:

  • Операционная система: Выбирайте совместимый дистрибутив Linux (Ubuntu, Debian, CentOS) при создании сервера.
  • Брандмауэр: В панели управления Selectel необходимо настроить правила сетевого экрана (брандмауэра), разрешающие входящий трафик по протоколу UDP на порт, используемый WireGuard (по умолчанию 51820).
  • IP-адресация: Убедитесь в наличии публичного IPv4-адреса у VPS. При наличии IPv6 он также может быть использован скриптом.

После выполнения указанных шагов VPN-сервер WireGuard готов к приему клиентских подключений.

———————————————

Как подключить WireGuard VPN на вашем компьютере

После успешной установки WireGuard на вашем VPS (см. инструкцию по установке) вы можете подключиться к нему с вашего компьютера. В этой статье мы расскажем, как это сделать на Windows, macOS и Linux.

Шаг 1: Получение конфигурационного файла клиента

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

wg0-client-<имя_клиента>.conf

Например:

wg0-client-client1.conf

Этот файл содержит всю необходимую информацию для подключения к серверу WireGuard.

Как скачать файл на компьютер:

  • Если вы всё ещё подключены к VPS через SSH, используйте команду scp (для Linux/macOS) или WinSCP/FileZilla (для Windows).
  • Пример с scp:
scp root@your_vps_ip:/root/wg0-client-client1.conf ~/Downloads/

Или просто скопируйте содержимое файла вручную:

cat wg0-client-client1.conf

Затем сохраните его как .conf файл на вашем компьютере.

Шаг 2: Установка WireGuard на компьютер

Для Windows:

  • Скачайте и установите официальный клиент WireGuard: WireGuard для Windows.
  • После установки откройте приложение WireGuard.
  • Нажмите кнопку “Import tunnel(s) from file” (Импортировать туннель из файла).
  • Выберите скачанный .conf файл.
  • Нажмите “Activate” (Активировать), чтобы подключиться.

Для macOS:

  • Установите WireGuard через Homebrew (если у вас установлен Homebrew):
brew install --cask wireguard-tools

Или скачайте приложение с официального сайта: WireGuard для macOS.

  • Откройте приложение WireGuard.
  • Нажмите “Import tunnel(s) from file” (Импортировать туннель из файла).
  • Выберите скачанный .conf файл.
  • Нажмите “Activate” (Активировать), чтобы подключиться.

Для Linux:

  • Установите WireGuard:
sudo apt update && sudo apt install wireguard-tools

Для CentOS/Fedora:

sudo yum install wireguard-tools
  • Скопируйте .conf файл в директорию /etc/wireguard/:
sudo cp wg0-client-client1.conf /etc/wireguard/wg0.conf
  • Запустите WireGuard:
sudo wg-quick up wg0

Чтобы остановить соединение:

sudo wg-quick down wg0

Шаг 3: Проверка подключения

  • После подключения проверьте, работает ли VPN:
    • Откройте сайт, например, ipleak.net, чтобы убедиться, что ваш IP-адрес изменился на IP-адрес вашего VPS.
    • Убедитесь, что весь ваш трафик маршрутизируется через VPN.
  • В приложении WireGuard (Windows/macOS) вы увидите статус “Active”, если подключение успешно.

Частые проблемы и их решение

1. Не удается подключиться:

  • Убедитесь, что порт WireGuard (по умолчанию UDP 51820) открыт в брандмауэре вашего VPS.
  • Проверьте, правильно ли указан Endpoint (IP-адрес или домен вашего VPS).

2. Нет интернета после подключения:

  • Убедитесь, что на сервере включен IP Forwarding. Это делается автоматически скриптом, но вы можете проверить:
sysctl net.ipv4.ip_forward

Если значение не равно 1, включите его:

echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

3. Конфигурационный файл поврежден:

  • Убедитесь, что файл .conf был скачан полностью и не содержит ошибок.
  • Если проблема остаётся, создайте нового клиента через скрипт:
./wireguard-install.sh

Выберите “Add a new user”.

Теперь вы должны успешно подключиться к вашему WireGuard серверу! Если возникнут дополнительные вопросы, не стесняйтесь спрашивать. 😊