Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ WireGuard VPN — Установка и настройка на Ubuntu

Пошаговое руководство по развёртыванию WireGuard VPN-сервера на Ubuntu VPS.


📋 Содержание

  1. Подключение к серверу
  2. Установка WireGuard
  3. Создание папок и генерация ключей
  4. Просмотр ключей
  5. Открытие порта
  6. Конфигурация сервера
  7. Включение IP Forwarding
  8. Запуск VPN

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

ssh -i ~/ssh-key.key ubuntu@IP_адрес_VPS

⚙️ 1. Установка WireGuard

sudo apt update && sudo apt upgrade -y
sudo apt install wireguard -y

📁 2. Создание папок и генерация ключей

# Переходим в режим root
sudo -i
cd /etc/wireguard

# umask 077 — ограничивает права доступа к создаваемым файлам
umask 077


# Генерируем ключи сервера и клиента
wg genkey | tee server_private.key | wg pubkey > server_public.key
wg genkey | tee client_private.key | wg pubkey > client_public.key

# Pre-Shared Key (PSK) — дополнительный ключ для усиленной защиты (опционально)
wg genpsk

🔍 3. Просмотр ключей

# Краткий список всех сетевых интерфейсов (важно для настройки маршрутизации)
ip -br link

# Ключи сервера
cat /etc/wireguard/server_private.key
cat /etc/wireguard/server_public.key

# Ключи клиента
cat /etc/wireguard/client_private.key
cat /etc/wireguard/client_public.key

🔓 4. Открытие порта (только для Варианта Б)

💡 При использовании Варианта А (рекомендуемого) этот шаг пропустите — порт открывается и закрывается автоматически через PostUp/PostDown.

# Выполнять только если выбран Вариант Б!
iptables -I INPUT -p udp --dport 51820 -j ACCEPT

📝 5. Конфигурация сервера

nano /etc/wireguard/wg0.conf
[Interface]
Address    = 10.8.0.1/24
ListenPort = 51820
PrivateKey = <ВСТАВИТЬ server_private.key>

# =============================================================
# Выберите ОДИН из двух вариантов правил маршрутизации:
# =============================================================

# ✅ Вариант А — РЕКОМЕНДУЕТСЯ (порт управляется автоматически, шаг 4 не нужен)
# Порт открывается при старте VPN и закрывается при остановке — ничего не забудешь
PostUp = iptables -I FORWARD -i wg0 -j ACCEPT; iptables -I FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE; iptables -I INPUT -p udp --dport 51820 -j ACCEPT
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE; iptables -D INPUT -p udp --dport 51820 -j ACCEPT

# Вариант Б — простой (порт нужно открыть вручную на шаге 4)
# PostUp = iptables -I FORWARD -i wg0 -j ACCEPT; iptables -I FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
# PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o ens3 -j MASQUERADE

[Peer]
PublicKey  = <ВСТАВИТЬ client_public.key>
AllowedIPs = 10.8.0.2/32

⚠️ Замените ens3 на фактическое имя вашего сетевого интерфейса из вывода ip -br link.


🔀 6. Включение IP Forwarding

sudo nano /etc/sysctl.conf

Найдите строку и раскомментируйте её (удалите #):

net.ipv4.ip_forward=1

Применяем изменения:

sudo sysctl -p

# Проверка — должна вернуть 1
sysctl net.ipv4.ip_forward

🚀 7. Запуск VPN

sudo systemctl enable wg-quick@wg0   # добавить в автозапуск
sudo systemctl start wg-quick@wg0    # запустить соединение

✅ 8. Проверка

wg show   # статистика подключения и список пиров

🛠️ Полезные команды

Управление сервисом

Команда Описание
sudo systemctl status wg-quick@wg0 Статус сервиса
sudo systemctl restart wg-quick@wg0 Перезапуск соединения
sudo systemctl stop wg-quick@wg0 Остановка соединения
sudo systemctl enable wg-quick@wg0 Добавить в автозапуск
sudo systemctl disable wg-quick@wg0 Убрать из автозапуска
sudo systemctl reset-failed wg-quick@wg0 Сбросить ошибку сервиса

Диагностика маршрутизации

ip rule show | grep 100
ip route show table 100

🌐 Адресация

Хост IP-адрес
Сервер 10.8.0.1
client1 10.8.0.2
client2 10.8.0.3

Протестировано на Ubuntu 22.04 / 24.04 LTS

About

Пошаговая установка WireGuard VPN-сервера на Oracle Cloud Free Tier (AMD,Ubuntu)

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages