Бесплатный VPN-сервер на Oracle Cloud Free Tier: пошаговая настройка 2026

Кратко

Освойте установку персонального VPN на Oracle Cloud Free Tier с нуля за 1–2 часа. Подробная инструкция для начинающих: регистрация, сеть, сервер, WireGuard, клиенты, тесты, устранение ошибок. Итог — быстрый и безопасный VPN без абонплаты.

Бесплатный VPN-сервер на Oracle Cloud Free Tier: пошаговая настройка 2026

Введение

В этом пошаговом гайде вы развернете свой бесплатный VPN-сервер на Oracle Cloud Free Tier и подключите к нему телефон и компьютер. Мы пройдем весь путь: от регистрации в Oracle до установки WireGuard, выдачи конфигураций клиентам, проверки и устранения типовых ошибок. В результате вы получите персональный VPN с собственным публичным IP-адресом, который можно использовать для безопасного доступа в интернет, защиты в публичных Wi‑Fi и обхода блокировок.

Этот гайд для начинающих, но содержит продвинутые блоки: настройка IPv6, дополнительная защита сервера, альтернативные протоколы (OpenVPN, IKEv2), автоматизация и резервирование. Вам не нужно быть администратором: достаточно внимательно следовать инструкциям и вводить команды точно так, как написано.

Что нужно знать заранее: базовые навыки работы с браузером, копирование команд в терминал, понимание что такое логин и пароль. Опыт работы с Linux не обязателен — все команды приведены полностью.

Время: 60–120 минут. Большую часть занимает первичная регистрация, ожидание подтверждений и аккуратная настройка сети.

Предварительная подготовка

Перед стартом убедитесь, что у вас есть все необходимое.

Необходимые инструменты и доступы

  • Личный email с доступом к почте.
  • Мобильный телефон для подтверждений.
  • Документы/карта для верификации Oracle аккаунта (требуется для активации Free Tier; списаний не будет при выборе Always Free).
  • Компьютер с браузером и стабильным интернетом.
  • SSH-клиент: на Windows — встроенный OpenSSH в PowerShell или любой терминал; на macOS/Linux — стандартный терминал.

Системные требования

  • Поддерживаемый регион Oracle Cloud с доступной емкостью Free Tier.
  • Для клиента: телефон на iOS или Android, и/или ПК на Windows/macOS/Linux для подключения к VPN.

Что нужно скачать или установить

  • Приложение WireGuard на телефон и компьютер (скачаете позже, когда получите конфигурации).
  • Опционально: генератор QR-кодов на сервере (пакет qrencode установим командой).

Резервные копии

Пока резервировать нечего. После настройки вы сохраните ключи и конфигурации клиентов. Мы покажем простой способ хранить их безопасно.

Базовые понятия

Ключевые термины

  • VPN — защищенный туннель между вашим устройством и сервером. Шифрует трафик и маскирует реальный IP.
  • WireGuard — современный быстрый VPN-протокол на базе UDP. Простой, безопасный, работает на телефонах и ПК.
  • Oracle Cloud Free Tier — бесплатный уровень облака Oracle. Позволяет запускать небольшие виртуальные машины постоянно.
  • VCN — виртуальная облачная сеть в Oracle. Аналог частной сети, где живут ваши серверы.
  • NSG/Списки безопасности — правила файервола в облаке, определяют, какие порты открыты наружу.
  • Публичный IP — внешний адрес сервера. Его будут использовать клиенты для подключения к VPN.

Принцип работы

Вы создаете виртуальную машину (сервер) в Oracle, назначаете ей публичный IP, настраиваете в ней WireGuard и разрешаете UDP-порт 51820 в сетевых политиках. Ваш телефон и компьютер получают конфигурации с ключами, после чего подключаются к серверу. Весь трафик идет через VPN-туннель, шифруется и выходит в интернет с IP сервера.

Что важно понимать заранее

  • У вас должно быть два уровня файервола: системный (на сервере) и облачный (NSG/списки безопасности). Оба должны разрешить нужный порт.
  • Free Tier ограничен по ресурсам. Выберите легковесный стек (WireGuard) и минимальный набор сервисов.
  • Безопасность: используйте SSH-ключи вместо пароля, обновляйте систему и не открывайте лишние порты.

Шаг 1: Регистрация в Oracle Cloud Free Tier и подготовка аккаунта

Цель этапа

Создать учетную запись Oracle Cloud, включить доступ к Free Tier и войти в консоль.

Инструкция

  1. Откройте сайт Oracle Cloud и начните регистрацию на Free Tier. Укажите страну, email, пароль.
  2. Подтвердите email через код из письма.
  3. Заполните профиль: имя, адрес, телефон. Выберите регион по умолчанию. Совет: позже регион можно сменить при создании ресурсов; выбирайте тот, где чаще есть емкость Free Tier.
  4. Привяжите банковскую карту для верификации. Это стандартная проверка. Списание отсутствует при использовании Always Free.
  5. Дождитесь подтверждения и входа в консоль Oracle Cloud Console.
  6. В правом верхнем углу убедитесь, что выбран нужный регион (например, Frankfurt, Amsterdam, London). Если емкости нет, попробуйте другой регион.
  7. Создайте отдельный compartment (логический контейнер) для VPN: откройте меню навигации, раздел Identity and Security, затем Compartments, нажмите Create Compartment. Назовите его vpn и сохраните.
  8. Проверьте квоты Free Tier: откройте Governance and Administration, затем Limits, Quotas and Usage. Найдите Compute и убедитесь, что доступны формы Always Free (Ampere A1 или E2 Micro).

⚠️ Внимание: Если при создании инстанса вы видите сообщение о нехватке емкости, меняйте регион. Это частая ситуация в популярных регионах. Не сдавайтесь с первого раза.

Ожидаемый результат

Вы вошли в консоль Oracle Cloud, создали compartment vpn, выбрали рабочий регион, Free Tier доступен.

Возможные проблемы и их решения

  • Нет подтверждения email — проверьте спам, повторите отправку.
  • Карта не проходит верификацию — используйте другую карту или подождите пару часов.
  • Free Tier недоступен — завершите верификацию профиля и повторите попытку через консоль.

✅ Проверка: В верхнем меню вы видите активный аккаунт, выбран регион, в списке compartments есть vpn.

Шаг 2: Создание сети VCN, подсети, маршрутов и правил безопасности

Цель этапа

Настроить виртуальную сеть, через которую сервер будет доступен из интернета и сможет выходить в сеть.

Инструкция

  1. Откройте меню Networking, выберите Virtual Cloud Networks. Нажмите Create VCN.
  2. Выберите Create VCN with Internet Connectivity (мастер создаст интернет-шлюз и таблицу маршрутов).
  3. Задайте имя: vcn-vpn, выберите compartment vpn, диапазон CIDR оставьте по умолчанию 10.0.0.0/16. Нажмите Create.
  4. Внутри VCN создайте публичную подсеть: зайдите в Subnets, Create Subnet, имя subnet-public, тип Public, CIDR 10.0.0.0/24. Выберите Availability Domain либо Regional (рекомендуется Regional).
  5. Проверьте, что к VCN привязан Internet Gateway и в Route Table есть маршрут 0.0.0.0/0 через этот шлюз.
  6. Создайте Network Security Group (NSG) для VPN: раздел Network Security Groups, Create. Имя nsg-vpn.
  7. Добавьте правила NSG: Ingress UDP 51820 из источника 0.0.0.0/0 (для WireGuard). Ingress TCP 22 из вашего IP или 0.0.0.0/0 для SSH (лучше ограничить вашим IP). Ingress UDP 500, 4500 (на будущее для IKEv2). Ingress UDP 1194 (на будущее для OpenVPN). Egress: Allow All 0.0.0.0/0.
  8. Если вы используете Security Lists вместо NSG, откройте Security List подсети и добавьте те же правила.
  9. Сохраните изменения. Убедитесь, что Public Subnet использует требуемые маршруты и NSG.

Совет: Предпочитайте NSG вместо списков безопасности: так удобнее назначать разные правила на разные инстансы без изменения настроек всей подсети.

⚠️ Внимание: Не открывайте лишние порты. Для базовой работы WireGuard нужен только UDP 51820 и SSH 22. Остальные порты можно добавить позже, если понадобятся.

Ожидаемый результат

У вас есть VCN с публичной подсетью, интернет-шлюзом, таблицей маршрутов и NSG, который разрешает UDP 51820 и SSH 22.

Возможные проблемы и их решения

  • Нет интернета из подсети — проверьте, что маршрут 0.0.0.0/0 указывает на Internet Gateway.
  • Порт не открыт — проверьте, что правило добавлено в NSG и NSG будет привязан к инстансу на шаге 3.

✅ Проверка: В карточке VCN видны Internet Gateway, Route Table с 0.0.0.0/0 и NSG с нужными правилами.

Шаг 3: Создание Always Free виртуального сервера с Ubuntu

Цель этапа

Запустить бесплатный виртуальный инстанс в Oracle Cloud с публичным IP-адресом и доступом по SSH.

Инструкция

  1. Откройте меню Compute, Instances. Нажмите Create Instance.
  2. Имя: vpn-wg, Compartment: vpn.
  3. Image: выберите Ubuntu 22.04 LTS (если планируете Ampere A1, убедитесь что ARM64 образ). Подойдет и Ubuntu 24.04 LTS, если доступен и вам знаком.
  4. Shape: нажмите Change shape. Ищите Always Free допустимые варианты: VM.Standard.A1.Flex (Ampere A1) или VM.Standard.E2.1.Micro. Для A1 укажите 1 OCPU и 1–2 GB RAM, для E2.micro — автоматически. Отметьте Always Free eligible.
  5. Networking: выберите VCN vcn-vpn и подсеть subnet-public. Отметьте Assign a public IPv4 address. Совет: Зарезервируйте публичный IP как Reserved Public IP после создания, чтобы он не менялся при перезапусках.
  6. Network Security Groups: выберите nsg-vpn.
  7. SSH keys: сгенерируйте пару ключей на своей машине (если нет): на Windows PowerShell выполните ssh-keygen, на macOS/Linux — тоже ssh-keygen. Загрузите публичный ключ в форму или вставьте содержимое файла ~/.ssh/id_rsa.pub или ~/.ssh/id_ed25519.pub.
  8. Boot volume: оставьте стандартный размер 50 GB или уменьшите до 20 GB (экономия не влияет на Free Tier, но хранение лишних данных не нужно).
  9. Нажмите Create. Дождитесь статуса Running.
  10. Скопируйте публичный IPv4 адрес инстанса из его карточки. Пример: 129.146.XX.XX.
  11. Подключитесь по SSH: на Windows откройте PowerShell: ssh ubuntu@ПУБЛИЧНЫЙ_IP. На macOS/Linux точно так же. Если вы используете нестандартный ключ, укажите путь: ssh -i ~/.ssh/id_ed25519 ubuntu@ПУБЛИЧНЫЙ_IP.

Совет: Если SSH-подключение не удается, временно разрешите порт 22 из любого источника в NSG, подключитесь, а затем сузьте правило до вашего IP.

Ожидаемый результат

Инстанс создан, запущен, у него есть публичный IPv4 и вы успешно вошли по SSH под пользователем ubuntu.

Возможные проблемы и их решения

  • Access denied (publickey) — убедитесь, что загружен верный публичный ключ, и вы используете соответствующий приватный ключ при подключении.
  • Connection timed out — проверьте, что инстанс Running, у него есть публичный IP, порт 22 разрешен в NSG/списке безопасности, и ваш провайдер не блокирует исходящие 22/TCP.
  • Нет Always Free формы — смените регион и повторите.

✅ Проверка: Команда uname -a на сервере возвращает информацию о ядре Linux, а ip a показывает интерфейсы и адреса.

Шаг 4: Базовая защита и подготовка системы

Цель этапа

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

Инструкция

  1. Обновите систему: sudo apt update && sudo apt -y upgrade. Дождитесь завершения.
  2. Создайте отдельного пользователя для администрирования (не обязательно, но полезно): sudo adduser admin, задайте пароль, затем sudo usermod -aG sudo admin.
  3. Скопируйте в новый аккаунт SSH-ключ: выполнив под ubuntusudo rsync -a ~/.ssh /home/admin/ && sudo chown -R admin:admin /home/admin/.ssh.
  4. Опционально: запретите вход по паролю, разрешив только ключи. Откройте SSH-конфиг: sudo nano /etc/ssh/sshd_config, установите PasswordAuthentication no, PermitRootLogin no, сохраните и примените: sudo systemctl reload ssh.
  5. Установите UFW (простой файервол): sudo apt -y install ufw. Разрешите SSH: sudo ufw allow 22/tcp.
  6. Пока не включайте UFW. Мы добавим правило для WireGuard позже и включим его тогда, чтобы не потерять доступ.
  7. Включите IP-переадресацию для будущего NAT: откройте sudo nano /etc/sysctl.conf, раскомментируйте или добавьте строки: net.ipv4.ip_forward=1 и при необходимости net.ipv6.conf.all.forwarding=1. Примените: sudo sysctl -p.
  8. Проверьте, что система на ARM64 (для Ampere A1) или AMD64 (для E2.micro) корректно определилась: uname -m вернет aarch64 или x86_64.

Совет: Если вы не уверены в редактировании конфигов, перед изменением делайте копию: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak.

Ожидаемый результат

Система обновлена, второй админ-пользователь создан (опционально), SSH ужесточен, IP-форвардинг включен.

Возможные проблемы и их решения

  • Потеряли доступ по SSH после правок — подключитесь через консоль серийного доступа в Oracle Compute, верните резервную копию конфига: sudo mv /etc/ssh/sshd_config.bak /etc/ssh/sshd_config && sudo systemctl restart ssh.
  • Форвардинг не включился — проверьте вывод sysctl net.ipv4.ip_forward, значение должно быть 1.

✅ Проверка: Команда sysctl net.ipv4.ip_forward выводит net.ipv4.ip_forward = 1, SSH-сессия активна.

Шаг 5: Установка и настройка WireGuard

Цель этапа

Развернуть WireGuard-сервер, открыть нужные порты, настроить NAT и подготовить базовую конфигурацию для клиентов.

Инструкция

  1. Установите WireGuard: sudo apt -y install wireguard qrencode. Пакет qrencode нужен для генерации QR-кодов конфигов.
  2. Сгенерируйте ключи сервера: sudo umask 077; wg genkey | sudo tee /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub. Посмотрите публичный ключ: sudo cat /etc/wireguard/server.pub. Сохраните его отдельно — пригодится для отладки.
  3. Выберите адресную сеть VPN. Рекомендуем 10.6.0.0/24 для IPv4 и fd42:42:42::/64 для IPv6 (опционально). Адрес сервера в туннеле: 10.6.0.1 и fd42:42:42::1.
  4. Создайте конфиг сервера: sudo nano /etc/wireguard/wg0.conf. Вставьте: [Interface] Address = 10.6.0.1/24 ListenPort = 51820 PrivateKey = ПОДСТАВЬТЕ_СОДЕРЖИМОЕ_/etc/wireguard/server.key PostUp = iptables -t nat -A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT PostDown = iptables -t nat -D POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT. Если ваш интерфейс не eth0, определите его командой ip route get 1.1.1.1 и подставьте правильное имя (например, ens3).
  5. Откройте порт в UFW: sudo ufw allow 51820/udp. Разрешите и включите файервол: sudo ufw --force enable. Проверьте статус: sudo ufw status verbose. Вы увидите правила для 22/tcp и 51820/udp.
  6. Разрешите маршрутизацию через UFW: откройте sudo nano /etc/ufw/sysctl.conf, убедитесь в строке net/ipv4/ip_forward=1. Затем добавьте правила NAT в /etc/ufw/before.rules прямо перед блоком COMMIT таблицы *nat: вставьте *nat :POSTROUTING ACCEPT [0:0] -A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE COMMIT. Замените eth0 на свой интерфейс. Примените: sudo ufw reload.
  7. Включите WireGuard: sudo systemctl enable --now wg-quick@wg0. Проверьте: sudo systemctl status wg-quick@wg0 — должен быть Active.
  8. Посмотрите состояние: sudo wg show. Интерфейс wg0 должен присутствовать, порт 51820 прослушивается.

Совет: Если предпочитаете nftables вместо iptables, используйте PostUp/PostDown с nft, но убедитесь, что UFW не конфликтует с nftables. Для начала проще оставить iptables, как показано.

⚠️ Внимание: Никогда не публикуйте приватный ключ сервера (/etc/wireguard/server.key). Он дает полный контроль над туннелем.

Ожидаемый результат

WireGuard запущен, порт 51820 открыт в UFW и в NSG, NAT настроен, интерфейс wg0 активен.

Возможные проблемы и их решения

  • Служба не стартует — проверьте права на server.key (600), формат wg0.conf и имя внешнего интерфейса в правилах NAT.
  • Порт закрыт — проверьте sudo ss -lunp | grep 51820, затем NSG и UFW статус.
  • Нет интернета через туннель — проверьте правила MASQUERADE, IP-форвардинг и таблицу маршрутов.

✅ Проверка: Команда sudo wg show выводит интерфейс wg0 с ListenPort 51820, а curl ifconfig.me на сервере возвращает внешний IP инстанса (это просто тест общей связности).

Шаг 6: Добавление клиентов, генерация конфигов и подключение

Цель этапа

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

Инструкция

  1. Определите публичный IP или доменное имя сервера. Возьмите IPv4 из карточки инстанса. Если вы резервировали адрес, он стабильный. Если нет — зарезервируйте в разделе IP Addresses и привяжите.
  2. Сгенерируйте ключи клиента №1 (например, для телефона): wg genkey | tee client1.key | wg pubkey | tee client1.pub. Скопируйте их в безопасное место.
  3. Определите адрес клиента в VPN-сети: 10.6.0.2/32. Для следующего клиента будет 10.6.0.3/32 и так далее.
  4. Добавьте клиента в конфиг сервера: sudo nano /etc/wireguard/wg0.conf и допишите в конец: [Peer] PublicKey = СОДЕРЖИМОЕ client1.pub AllowedIPs = 10.6.0.2/32. Сохраните и примените: sudo wg syncconf wg0 <(sudo wg-quick strip wg0) или просто перезапустите: sudo systemctl restart wg-quick@wg0.
  5. Создайте конфиг-файл для клиента: nano client1.conf. Вставьте: [Interface] PrivateKey = СОДЕРЖИМОЕ client1.key Address = 10.6.0.2/32 DNS = 1.1.1.1 [Peer] PublicKey = СОДЕРЖИМОЕ /etc/wireguard/server.pub AllowedIPs = 0.0.0.0/0 Endpoint = ПУБЛИЧНЫЙ_IP:51820 PersistentKeepalive = 25. Сохраните. Совет: Если вам нужен только доступ к корпоративной подсети, укажите нужный список в AllowedIPs, например 10.10.0.0/16, а не 0.0.0.0/0.
  6. Сгенерируйте QR-код для телефона: qrencode -t ansiutf8 < client1.conf и посмотрите в терминале. Или сохраните в PNG: qrencode -o client1.png < client1.conf.
  7. Установите приложение WireGuard на смартфон из магазина приложений, откройте, нажмите добавить туннель, выберите Сканировать QR-код, наведите камеру на QR из терминала или файл client1.png. Сохраните профиль.
  8. На ПК установите WireGuard-клиент, нажмите Импортировать из файла, выберите client1.conf. Активируйте туннель переключателем.
  9. Добавьте клиента №2 (например, ноутбук) аналогично: создайте пару ключей client2.key/client2.pub, адрес 10.6.0.3/32, внесите [Peer] в wg0.conf, сделайте client2.conf и импортируйте в приложение.

Совет: Для iOS и Android удобнее использовать QR. Для Windows/macOS/Linux — файл конфигурации.

Ожидаемый результат

Клиенты успешно подключаются к серверу WireGuard. На телефоне/ПК кнопка Активировать включает туннель, трафик уходит через VPN.

Возможные проблемы и их решения

  • Handshake не происходит — проверьте правильность ключей, порт 51820/UDP в NSG и UFW, адрес Endpoint, а также что у клиента есть интернет.
  • Подключается, но нет интернета — проверьте NAT MASQUERADE, форвардинг, и что AllowedIPs в клиенте равен 0.0.0.0/0 (для полного туннеля).
  • Периодические обрывы — установите PersistentKeepalive = 25 у клиента и убедитесь, что провайдер не режет UDP.

✅ Проверка: На сервере выполните sudo wg show — в разделе peer видите свой клиент с последним handshake и счетчиком transfer. На клиенте откройте любой сайт и проверьте IP — он должен совпадать с IP сервера.

Проверка результата

Чек-лист

  • Инстанс Oracle в статусе Running с публичным IP.
  • VCN и подсеть настроены, маршрут 0.0.0.0/0 на Internet Gateway.
  • NSG/список безопасности разрешает UDP 51820 и SSH 22.
  • WireGuard запущен, wg0 активен.
  • Клиенты подключаются, трафик идет через VPN.

Как протестировать

  1. На сервере: sudo wg show — есть latest handshake за последние минуты.
  2. На клиенте: откройте проверку IP. Должен отображаться IP сервера Oracle.
  3. Проверьте скорость. WireGuard обычно дает высокую пропускную способность даже на Free Tier.

Показатели успешного выполнения

  • Подключение клиента происходит за 1–2 секунды, без ошибок.
  • Счетчики трафика на сервере растут при загрузке страниц.
  • Наблюдается стабильная работа в течение 10–15 минут без обрывов.

Типичные ошибки и решения

  • Проблема: Клиент не подключается. Причина: Порт 51820 заблокирован в NSG или UFW. Решение: Проверьте правила NSG и команду sudo ufw status, откройте sudo ufw allow 51820/udp.
  • Проблема: Есть подключение, но нет интернета. Причина: Нет NAT или отключен IP-форвардинг. Решение: Проверьте sysctl net.ipv4.ip_forward и правила MASQUERADE; перезапустите wg-quick.
  • Проблема: Сервер не слушает порт. Причина: Синтаксическая ошибка в wg0.conf. Решение: Проверьте файл, исключите лишние пробелы и невалидные символы, пересоздайте через минимальный шаблон.
  • Проблема: После включения UFW пропал доступ по SSH. Причина: Не разрешили 22/tcp до enable. Решение: На консоли инстанса выполните sudo ufw allow 22/tcp && sudo ufw reload.
  • Проблема: Подключение падает через мобильную сеть. Причина: NAT у провайдера агрессивно закрывает UDP. Решение: Установите PersistentKeepalive=25, при необходимости попробуйте порт 53/udp или 443/udp (не забудьте изменить NSG и UFW).
  • Проблема: Случайная смена публичного IP. Причина: Адрес не зарезервирован. Решение: Создайте Reserved Public IP в Oracle и привяжите к инстансу.
  • Проблема: Нет доступности в конкретных странах. Причина: Геоблоки на стороне ресурсов. Решение: Поменяйте регион инстанса на нужный ближе к аудитории.
  • Проблема: Низкая скорость. Причина: Дальний регион, перегрузка канала, слабый Wi‑Fi. Решение: Выберите ближний регион, тестируйте по кабелю или 5 GHz Wi‑Fi, исключите фоновые загрузки.
  • Проблема: Ошибка прав доступа к ключам. Причина: Неверные разрешения. Решение: sudo chmod 600 /etc/wireguard/server.key, владельцем root.
  • Проблема: Клиент не видит локальную сеть. Причина: Маршруты не добавлены. Решение: В AllowedIPs клиента добавьте подсети локалки, настройте соответствующие маршруты на сервере.

Дополнительные возможности

Продвинутые настройки безопасности

  • Fail2ban для защиты SSH: sudo apt -y install fail2ban, настройте jail для sshd.
  • Ограничение SSH по IP в NSG — оставьте только ваш домашний или офисный адрес.
  • Смена порта SSH: в /etc/ssh/sshd_config установите нестандартный порт и обновите NSG/UFW.

IPv6

Если в вашем регионе Oracle есть IPv6, добавьте в [Interface] сервера Address = fd42:42:42::1/64, а в клиентах — персональные /128. В AllowedIPs добавьте ::/0 для полного IPv6-туннеля. Проверьте sysctl net.ipv6.conf.all.forwarding=1 и добавьте NAT66 только при необходимости — чаще достаточно маршрутизации без NAT.

Альтернативные протоколы

  • OpenVPN: больше совместимости со старыми устройствами, но тяжелее. Установите openvpn, сгенерируйте серверный профиль, откройте порт 1194/udp. Не забудьте NAT и форвардинг.
  • IKEv2 (strongSwan): родная поддержка в iOS/macOS/Windows, высокое качество, но сложнее выпуск сертификатов. Откройте UDP 500 и 4500, настройте strongSwan и профили клиентов.

Обфускация и обход DPI

Если в вашей сети жесткий DPI, можно перенести WireGuard на порт 443/udp или использовать UDP-обфускаторы. Некоторые клиенты поддерживают переименование порта и внешние туннели.

Собственный DNS и блокировка рекламы

Поставьте легкий DNS-релэй или Pi-hole на том же инстансе. Пропишите его адрес в DNS клиентов. Учтите потребление памяти.

Резервные копии и ключи

  • Экспортируйте /etc/wireguard и сохраните в надежном месте: sudo tar czf wg-backup.tgz /etc/wireguard.
  • Храните приватные ключи клиентов и сервера в менеджере паролей.

Автоматизация и инфраструктура как код

  • cloud-init: добавьте user-data при создании инстанса, чтобы развернуть WireGuard автоматически.
  • Terraform: опишите VCN, подсеть, NSG, инстанс и IP как код. Это ускорит восстановление и перенос между регионами.

Мониторинг

  • Установите prometheus-node-exporter или легковесный netdata для графиков нагрузки (учтите ресурсы Free Tier).
  • Периодически проверяйте systemctl status и логи journalctl -u wg-quick@wg0.

Совет: Назначьте календарную напоминалку на ежемесячную проверку обновлений: sudo apt update && sudo apt -y upgrade.

Совет: Если планируете несколько инстансов в разных регионах, используйте одинаковые правила NSG и шаблоны wg0.conf для унификации.

Альтернатива DIY, когда времени нет

Если требуется персональный VPN «здесь и сейчас», без развертывания в консоли и отладки, рассмотрите сервис vpn.how. Это не общий shared-доступ, а личный VPN-сервер с выделенным для вас IP. Поддерживаются разные протоколы — WireGuard, OpenVPN, IKEv2, L2TP, SSTP — выбираете под свою задачу. Доступна география серверов: Москва, Санкт‑Петербург, Амстердам, Франкфурт, Лондон, Нью‑Йорк, Сан‑Хосе, Чикаго, Сингапур, Сидней, Мадрид, Хельсинки, Стокгольм, Варшава, Копенгаген, Ставангер. Принимаются карты РФ (Tinkoff, Озон), СБП, USDT/BTC. Тарифы — от 490 ₽ за день и от 2490 ₽ в месяц, действуют скидки на длительные периоды. После оплаты сервер поднимается автоматически примерно за 5 минут, логов не ведется. Честно: DIY-подход дает максимальный контроль, но требует часов на настройку, мониторинг и резервирование; готовое решение оправдано, если важны скорость запуска и отсутствие возни с консолью.

FAQ

  • Какой регион Oracle выбрать для лучшей скорости? — Ближайший к вам географически. Тестируйте пинг и пропускную способность. Для Европы часто подходят Франкфурт и Амстердам, для США — Нью‑Йорк или Сан‑Хосе.
  • Можно ли сменить порт WireGuard? — Да. Измените ListenPort в wg0.conf, обновите NSG и UFW, поправьте Endpoint в конфиге клиентов.
  • Поддерживается ли подключение нескольких клиентов одновременно? — Да. Для каждого создайте отдельные ключи, выдайте уникальный адрес /32, добавьте новый [Peer] на сервер.
  • Можно ли частично направлять трафик через VPN? — Да. В AllowedIPs клиента укажите только нужные префиксы (например, корпоративные подсети). Остальное пойдет напрямую.
  • Что делать, если пропал публичный IP? — Проверьте статус инстанса. Зарезервируйте адрес и привяжите его, чтобы избежать смены после рестартов.
  • Как добавить DNS-over-HTTPS внутри туннеля? — Установите локальный резолвер, направьте его трафик через DoH/DoT. Пропишите его адрес в DNS клиентов.
  • Есть ли смысл в IPv6? — Да, если ваши клиенты и провайдеры поддерживают IPv6. Это улучшит качество связи. Но учитывайте настройку маршрутизации и брандмауэра.
  • Как удалить клиента? — Удалите его секцию [Peer] из wg0.conf и перезапустите сервис. Удалите конфиг на клиенте.
  • Сколько клиентов выдержит Free Tier? — Зависит от нагрузки. Практически 5–20 одновременных клиентов с умеренным трафиком работают стабильно.
  • Как полностью удалить WireGuard? — Остановите sudo systemctl disable --now wg-quick@wg0, удалите /etc/wireguard, снимите правила UFW и перезагрузите.

Заключение

Вы прошли полный путь — от регистрации в Oracle Cloud Free Tier до запуска быстрого и безопасного VPN на WireGuard. Мы создали виртуальную сеть и правила безопасности, подняли бесплатный инстанс, установили и настроили WireGuard, выдали конфиги и успешно подключили устройства. Теперь у вас персональный VPN с контролем на каждом уровне: от облачной сети до клиентских профилей. Дальше вы можете развивать проект: добавить IPv6, альтернативные протоколы, собственный DNS, мониторинг и резервное копирование конфигураций. Для масштабирования продумайте автоматизацию cloud-init или Terraform, чтобы быстро поднимать копии в других регионах и обеспечивать отказоустойчивость. Если иногда нужен быстрый запуск без консоли, помните про управляемые решения вроде vpn.how — они экономят время, но DIY-подход дает максимальную гибкость и самостоятельность. Удачи и безопасного интернета!

Роман Мельников

Роман Мельников

Технический писатель и системный администратор

Технический писатель и DevOps-инженер с 9-летним опытом. Создал более 50 подробных гайдов по настройке и администрированию систем. Его инструкции помогли тысячам специалистов успешно решить технические задачи. Популярный автор на Habr и YouTube.
Московский государственный технический университет имени Н.Э. Баумана. Информационные системы и технологии
Техническая документация DevOps Системное администрирование Linux Docker и Kubernetes CI/CD Автоматизация инфраструктуры Облачные технологии Мониторинг систем Bash и Python скриптинг

Поделитесь статьёй: