Установка и настройка WireGuard на Ubuntu 22.04: подробное и практическое руководство.
В этом руководстве описано, как установить и настроить WireGuard на Ubuntu 22.04.

Установка и настройка WireGuard на Ubuntu 22.04: подробное и практическое руководство.

В этой статье показано, как установить и настроить WireGuard на Ubuntu 22.04.
0 Акции
0
0
0
0
  1. Почему стоит выбрать WireGuard для Ubuntu 22.04?
  2. Предпосылки
  3. Установка WireGuard на Ubuntu 22.04
  4. Генерация ключей и структуры файлов.
  5. Настройка сервера — Практический пример wg0.conf
  6. Конфигурация клиента (Linux, Windows, мобильные устройства)
  7. Включение пересылки IP-пакетов и NAT.
  8. Межсетевой экран (UFW/nftables/iptables)
  9. Настройка службы WireGuard
  10. Оптимизация MTU, Keepalive и AllowedIPs
  11. Типы туннелей и разрешенные IP-адреса
  12. Рекомендации экспертов для различных вариантов использования
    1. 1) VPS для торговли (Форекс/Криптовалюты)
    2. 2) Игровой VPS
    3. 3) Облачные вычисления на GPU, ИИ и рендеринг
    4. 4) Веб-хостинг и база данных
  13. Безопасность, передача ключей и мониторинг
  14. Многоузловая конфигурация и использование в производственной среде
  15. Быстрое устранение неполадок
  16. Практические и экспериментальные советы
  17. Подключение к услугам компании (более 85 офисов и сервисов)
  18. Заключение
  19. Просмотреть планы и поддержку
  20. Часто задаваемые вопросы

Почему стоит выбрать WireGuard для Ubuntu 22.04?

Если вы ищете VPN Современный, Стиль, Безопасный И с Высокая эффективность Для подключения облачных серверов, VPS для торговли, игр или доступа к кластерам графических процессоров, WireGuard Это один из лучших вариантов.

В этом руководстве представлены пошаговые инструкции по установке, настройке, оптимизации и советы по безопасности для установки WireGuard на Убунту 22.04 Рассматриваются практические примеры, команды Linux и настройка сервера/клиента.

Предпосылки

Перед началом работы вам потребуется:

  • Сервер Убунту 22.04 При наличии прав root или sudo.
  • Открыть UDP-порт в брандмауэре (по умолчанию) 51820).
  • Доступ к серверу по SSH.
  • Предложение: Используйте один из VPS-серверов или облачных серверов компании. Более 85 представительств по всему миру Для минимального пинга и оптимального маршрута BGP.

Установка WireGuard на Ubuntu 22.04

В Ubuntu 22.04 пакет wireguard обычно доступен в официальных репозиториях. Вы можете использовать PPA или backports, если вам нужна последняя версия, но пакета из официального дистрибутива обычно достаточно и он стабилен.

apt update && apt upgrade -y
apt install -y wireguard qrencode iptables-persistent

Генерация ключей и структуры файлов.

В следующем примере показана генерация серверных ключей и тестовый клиент. Файлы необходимо сохранять с соответствующими правами доступа для защиты закрытых ключей.

mkdir -p /etc/wireguard
cd /etc/wireguard
umask 077
wg genkey | tee server_private.key | wg pubkey > server_public.key
wg genkey | tee client_private.key | wg pubkey > client_public.key
chmod 600 /etc/wireguard/*key

Настройка сервера — Практический пример wg0.conf

Пример файла конфигурации сервера находится по указанному пути. /etc/wireguard/wg0.conf Это выглядит так. Замените значения в скобках фактическими значениями ключа и шлюза. Обратите внимание, что в облачных средах имя сетевого интерфейса может быть таким: eth0 Не (например) ens3 Или ens5).

[Interface]
Address = 10.10.0.1/24
ListenPort = 51820
PrivateKey = <محتوای سرور_private.key>
SaveConfig = true

# NAT هنگام بالا آمدن اینترفیس
PostUp = ip -4 rule add from 10.10.0.0/24 table 51820 || true
PostUp = ip -4 route add default via <SERIAL_IF_GATEWAY> dev eth0 table 51820 || true
PostUp = iptables -t nat -A POSTROUTING -s 10.10.0.0/24 -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -s 10.10.0.0/24 -o eth0 -j MASQUERADE

Конфигурация клиента (Linux, Windows, мобильные устройства)

Пример конфигурации для клиента под управлением Linux или мобильного устройства, создающего полнотуннельный интерфейс:

[Interface]
PrivateKey = <محتوای client_private.key>
Address = 10.10.0.2/32
DNS = 1.1.1.1

[Peer]
PublicKey = <محتوای server_public.key>
Endpoint = your.server.ip.or.hostname:51820
AllowedIPs = 0.0.0.0/0, ::/0
PersistentKeepalive = 25
MTU = 1420

Для генерации QR-кода для мобильного устройства:

qrencode -t ansiutf8 < client.conf

Включение пересылки IP-пакетов и NAT.

Для прохождения трафика через сервер необходимо включить переадресацию IP-пакетов и установить соответствующие правила NAT.

sysctl -w net.ipv4.ip_forward=1
# برای دائمی کردن:
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/99-wg-forward.conf

Межсетевой экран (UFW/nftables/iptables)

Вот пример конфигурации для UFW и nftables. Если вы используете UFW, вам также следует включить ip_forward и добавить правила NAT.

ufw allow 51820/udp
ufw allow OpenSSH
echo "net/ipv4/ip_forward=1" > /etc/ufw/sysctl.conf
# اضافه کردن قوانین NAT ممکن است در /etc/ufw/before.rules یا با iptables-persistent انجام شود

Пример использования nftables (альтернатива iptables):

nft add table ip wg
nft 'add chain ip wg postrouting { type nat hook postroute priority 100; }'
nft add rule ip wg postrouting oifname "eth0" ip saddr 10.10.0.0/24 masquerade

Настройка службы WireGuard

После настройки вы можете включить и запустить службу, а также проверить ее состояние.

systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
wg show
ip a show wg0

Оптимизация MTU, Keepalive и AllowedIPs

МТУ: Значение по умолчанию 1420 Часто это целесообразно; в случаях с высокими накладными расходами может потребоваться сокращение до 1380 Быть.

PersistentKeepalive: Количество 25 Подходит для предотвращения таймаутов NAT у клиентов.

Разрешенные IP-адреса: В WireGuard он выступает одновременно и в роли маршрутизатора, и в роли фильтра — настраивайте его внимательно.

Типы туннелей и разрешенные IP-адреса

Два распространённых варианта:

  • Полный туннель: AllowedIPs = 0.0.0.0/0, ::/0
  • Разделенный туннельВ поле AllowedIPs содержатся только сети, которые должны проходить через VPN (например, 10.10.0.0/24 или 192.168.1.0/24).

Рекомендации экспертов для различных вариантов использования

1) VPS для торговли (Форекс/Криптовалюты)

Для осуществления торговых операций важно выбрать местоположение, расположенное как можно ближе к серверам биржи. Из более чем 85 местоположений выберите ближайший центр обработки данных с маршрутом BGP с низкой задержкой, чтобы уменьшить задержку.

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

Безопасность: Ограничьте доступ по SSH внутренним IP-адресом VPN и используйте выделенный сервер или VPS с защитой от DDoS-атак.

2) Игровой VPS

Для игр выбирайте местоположение, близкое к игровым серверам или интернет-провайдеру игрока. Раздельное туннелирование, при котором через VPN проходит только игровой трафик, может обеспечить лучший пинг.

Снизьте пинг: Рекомендуется использовать протокол UDP, соответствующий MTU и сервер с сетевым интерфейсом 10 Гбит/с.

3) Облачные вычисления на GPU, ИИ и рендеринг

WireGuard подходит для безопасного и быстрого доступа к серверам с графическими процессорами или кластерам рендеринга. Выбор местоположения с прямым подключением к центрам обработки данных ИИ или магистральным сетям важен для передачи больших объемов данных.

Конфигурация: Разрешенные IP-адреса ограничены подсетью кластера и используют параметры QoS на сетевом уровне.

4) Веб-хостинг и база данных

WireGuard можно использовать в качестве изолированной частной сети для безопасной связи между веб-серверами и базами данных. Управляющий трафик проходит через общедоступную сеть по VPN и через публичный интернет.

Безопасность, передача ключей и мониторинг

Основные рекомендации по техническому обслуживанию и технике безопасности:

  • Основные работы по техническому обслуживанию: Закрытый ключ ни в коем случае нельзя публиковать; для серверов, содержащих конфиденциальную информацию, рекомендуется использовать зашифрованную файловую систему.
  • Ключевая ротация: Составьте график обновления ключей; добавляйте новых участников сети перед удалением старых ключей, чтобы избежать сбоев.
  • Ведение журналов и мониторинг: С помощью таких инструментов, как вигДля мониторинга используйте iptables, fail2ban и журналы Prometheus/Grafana.
  • Ограничить доступ: Ограничьте доступ каждого узла к определенному IP-адресу/сервису и избегайте использования глобальных разрешенных IP-адресов без веских причин.

Многоузловая конфигурация и использование в производственной среде

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

[Peer]
PublicKey = <client1_pubkey>
AllowedIPs = 10.10.0.2/32

[Peer]
PublicKey = <client2_pubkey>
AllowedIPs = 10.10.0.3/32

Быстрое устранение неполадок

Советы и инструкции по устранению неполадок:

  • шоу wgПроверка статуса, статистики приема/передачи и последнего подтверждения соединения.
  • journalctl -u wg-quick@wg0 -e: Просмотр журналов обслуживания.
  • tcpdump -i wg0Проверка посылок внутри туннеля.
  • Если рукопожатие не срабатывает, убедитесь, что UDP-порт открыт на вашем брандмауэре и у вашего NAT-провайдера (для некоторых домашних NAT-сетей требуется переадресация портов).

Практические и экспериментальные советы

Практический опыт для устойчивых стартапов:

  • В сетях с Carrier NAT может потребоваться использование нестандартных портов или ретранслятора/моста.
  • Для мобильных клиентов и клиентов с динамическим IP-адресом полезно использовать PersistentKeepalive.
  • Размещение шлюза WireGuard в месте с прямым подключением к CDN может оптимизировать нагрузку и снизить задержку.

Подключение к услугам компании (более 85 офисов и сервисов)

Если вы хотите внедрить WireGuard в глобальной инфраструктуре, рассмотрите следующие варианты. Более 85 филиалов Вы можете выбрать ближайшее к центру обработки данных компании местоположение, чтобы уменьшить пинг и улучшить маршрут. Предоставляемые услуги включают:

  • VPS для торговли с низким пингом и защитой от DDoS-атак.
  • Игровой VPS с сетевым интерфейсом с низкой задержкой.
  • Графический сервер (облачная платформа GPU) для ИИ и рендеринга с защищенным доступом через WireGuard.
  • Выделенные и облачные серверы с возможностью подключения по протоколам BGP/Direct Connect и CDN для веб-трафика.
  • Размещение GitLab и базы данных осуществляется во внутренней сети WireGuard для повышения безопасности.

Заключение

WireGuard — это быстрый, простой и безопасный VPN, который легко установить и настроить на Ubuntu 22.04. Следуя приведенным выше советам, вы можете создать безопасный, с низкой задержкой и надежный туннель для торговли, игр, искусственного интеллекта или внутренних сетей.

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

Просмотреть планы и поддержку

Вы можете выбрать один из тарифных планов компании: VPS, выделенный сервер или облачный сервер с поддержкой GPU, чтобы запустить свой проект на глобально доступной инфраструктуре. Техническая команда компании готова оказать поддержку в профессиональной настройке, выборе оптимального местоположения и настройке сети WireGuard, если это необходимо.

Часто задаваемые вопросы

Вам также может понравиться