KOZH.my » Гайды » Хватит платить за VPN! Защищенный и быстрый: Как развернуть собственный VPN-сервер
Хватит платить за VPN! Защищенный и быстрый: Как развернуть собственный VPN-сервер

Хватит платить за VPN! Защищенный и быстрый: Как развернуть собственный VPN-сервер


Устали от ограничений публичных VPN-сервисов? Сомневаетесь в их политике \"без логов\"? Хотите получить максимальную скорость и полный контроль над своим интернет-трафиком? Тогда этот гайд для вас.

Сегодня мы с вами поднимем собственный VPN-сервер на VPS/VDS. Это звучит сложно, но на деле весь процесс займет не более 15 минут. Мы будем использовать современный и невероятно быстрый протокол WireGuard, который легко настраивается и обеспечивает отличную безопасность.

Почему свой VPN — это отличная идея?

  • Конфиденциальность: Вы доверяете трафик только своему серверу.
  • Скорость: Вам не приходится делить канал с тысячами других пользователей.
  • Обход блокировок: Доступ к нужным ресурсам из-за границы или с \"белого\" IP-адреса.
  • Без лимитов: Никаких ограничений по трафику, кроме тех, что предоставляет ваш VPS-провайдер.
  • Полный контроль: Вы сами решаете, какие логи вести (а лучше не вести их вовсе).

Что нам понадобится?

  1. VPS/VDS-сервер. Подойдет самый дешевый тариф от любого провайдера (например, DigitalOcean, Vultr, TimeWeb, Selectel). Достаточно 1 ядра, 1 ГБ оперативной памяти и 10-20 ГБ места на SSD. Важно: Выбирайте сервер в том регионе, который вам нужен (например, Нидерланды, Германия, США). Операционная система – Ubuntu 20.04 LTS или новее.
  2. SSH-клиент. Для подключения к серверу (встроен в Linux/macOS, для Windows используйте PuTTY или WSL).
  3. Любое устройство, на котором вы будете использовать VPN (смартфон, ноутбук).

Шаг 1: Подключаемся к серверу

Откройте терминал и подключитесь к вашему серверу по SSH. Замените your_server_ip на реальный IP-адрес вашего VPS.

 ssh root@your_server_ip

Шаг 2: Подготовка сервера

Первым делом обновляем список пакетов и устанавливаем все доступные обновления для безопасности.

 sudo apt update && sudo apt upgrade -y

После обновления может потребоваться перезагрузка. Сделайте ее командой sudo reboot.

Шаг 3: Установка WireGuard

WireGuard есть в официальных репозиториях Ubuntu. Установка очень проста:

 sudo apt install wireguard -y

Эта команда установит все необходимые компоненты.

Шаг 4: Генерация ключей

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

  1. Переходим в нужную директорию:

     cd /etc/wireguard/
  2. Генерируем приватный ключ и задаем ему правильные права доступа (чтобы его никто не смог прочитать):

     umask 077
    wg genkey > server-private.key
  3. На основе приватного ключа генерируем публичный ключ:

     wg pubkey < server-private.key > server-public.key

Шаг 5: Настройка сервера WireGuard

Создадим конфигурационный файл для нашего VPN-сервера.

 sudo nano /etc/wireguard/wg0.conf

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

  • <contents-of-server-private.key> — содержимое файла server-private.key (посмотрите его командой cat server-private.key).
  • your_server_ip — реальный публичный IP-адрес вашего VPS-сервера.
 
PrivateKey = <contents-of-server-private.key>
Address = 10.0.0.1/24
SaveConfig = false
ListenPort = 51820
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

# Клиент №1 (ваше устройство)
[Peer]
PublicKey = <СКОРО_МЫ_ЕГО_СГЕНЕРИРУЕМ>
AllowedIPs = 10.0.0.2/32
  • Address = 10.0.0.1/24 — это внутренний IP-адрес нашего VPN-сервера.
  • ListenPort = 51820 — порт, который будет слушать WireGuard.
  • Строки PostUp и PostDown настраивают проброс трафика (NAT), чтобы ваш устройство могло выходить в интернет через сервер.
  • В секции [Peer] мы позже добавим публичный ключ вашего устройства.

Включаем проброс пакетов в системе:

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

Шаг 6: Настройка фаервола

Нужно открыть порт для WireGuard. Если используете ufw (простой фаервол), выполните:

 sudo ufw allow 51820/udp
sudo ufw allow ssh
sudo ufw enable

Шаг 7: Запуск WireGuard

Запускаем наш VPN-интерфейс и включаем его автозапуск при загрузке системы.

 sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0

Проверить, что он работает, можно командой: sudo wg show.


Шаг 8: Настройка клиента (вашего устройства)

Теперь нужно подключить ваше устройство к серверу. Процесс похож на настройку сервера.

На клиенте (например, на вашем ноутбуке с Linux) генерируем свою пару ключей:

 umask 077
wg genkey > client-private.key
wg pubkey < client-private.key > client-public.key

Теперь возвращаемся на сервер. Нам нужно добавить клиент в конфигурацию сервера. Откройте файл wg0.conf снова.

 sudo nano /etc/wg0.conf

В секции [Peer] замените PublicKey на содержимое файла client-public.key (который вы только что создали на клиенте).

 [Peer]
PublicKey = <contents-of-client-public.key>
AllowedIPs = 10.0.0.2/32

Перезагрузите интерфейс WireGuard на сервере, чтобы применить изменения:

 sudo systemctl restart wg-quick@wg0

Создаем конфиг для клиента. Создайте файл client.conf на своем компьютере и заполните его по образцу. Замените:

  • <contents-of-client-private.key> на ваш client-private.key.
  • <contents-of-server-public.key> на содержимое файла server-public.key (лежит на сервере в /etc/wireguard/).
  • your_server_ip на IP вашего VPS.
 [Interface]
PrivateKey = <contents-of-client-private.key>
Address = 10.0.0.2/32
DNS = 8.8.8.8

[Peer]
PublicKey = <contents-of-server-public.key>
Endpoint = your_server_ip:51820
AllowedIPs = 0.0.0.0/0

Шаг 9: Подключение

  • На Windows/macOS: Скачайте официальный клиент WireGuard, импортируйте в него файл client.conf и активируйте подключение.
  • На Linux (в терминале): sudo wg-quick up /path/to/client.conf
  • На Android/iOS: Установите приложение WireGuard из магазина, отсканируйте QR-код (если вы сгенерируете его из client.conf) или импортируйте файл.

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

Чтобы оставить комментарий, необходимо на сайте.
Лента
Каналы
Видео
Общение
+