Рукопожатие Wireguard работает, но нет доступа к Интернету

Во-первых: это не дубликат. Все перепробовал, кроме OpenVPN или IPSec. Я получаю рукопожатие между клиентом и сервером, а SSH и Ping работают между клиентами, но я не могу получить доступ к глобальному Интернету или даже получить доступ к общедоступному IP-адресу сервера. Моя конфигурация обычная, ключи, конечные точки, я точно следовал руководству Linode. Мой клиент - openSUSE, но мой сервер - ubuntu, который, как я предполагаю, является узким местом.

0
задан 23 November 2020 в 06:16

1 ответ

У меня была именно такая ситуация. У вашего сервера есть общедоступный IP-адрес или он находится за NAT? Если он находится за NAT, команды iptables PostUp и PostDown из руководства Linode не применяются.

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

PreUp = iptables -t nat -A POSTROUTING -j MASQUERADE -o eth0
PreDown = iptables -t nat -D POSTROUTING -j MASQUERADE -o eth0

Источник: https://unix.stackexchange.com/questions/530790/ wireguard-не-маршрутизирует-трафик-от-клиента-на-другие-серверы-в-сети

Пример конфигурации

Вот пример конфигурации, где маршрутизатор находится в 10.0.1.1 (обычная сеть) и 10.0.0. 0.x — это новая сеть WireGuard, в которой сервер настроен на 10.0.0.1, а клиент — на 10.0.0.2. Используемый порт — 51820, а сетевой интерфейс по умолчанию — eth0.Весь трафик проходит через WireGuard, но не остается в подсети WireGuard. Клиент имеет доступ к локальной сети сервера (10.0.1.x) и общему интернету. Не забудьте пробросить порт 51820 с роутера на сервер и включить переадресацию ipv4 на сервере (# sysctl -w net.ipv4.ip_forward=1)

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

[Interface]
Address = 10.0.0.1/24
PrivateKey = YOUR_SEVER_PRIVATE_KEY
ListenPort = 51820
PreUp = iptables --table nat --append POSTROUTING --jump MASQUERADE --out-interface eth0
PreDown = iptables --table nat --delete POSTROUTING --jump MASQUERADE --out-interface eth0

[Peer]
PublicKey = YOUR_CLIENT_PUBLIC_KEY
AllowedIPs = 10.0.0.2/32

Конфигурация клиента

[Interface]
Address = 10.0.0.2/24
DNS = 10.0.1.1
PrivateKey = YOUR_CLIENT_PRIVATE_KEY
ListenPort = 51820

[Peer]
PublicKey = YOUR_SERVER_PUBLIC_KEY
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = YOUR.DYNAMIC_DNS.COM:51820
3
ответ дан 25 November 2020 в 04:35

Другие вопросы по тегам:

Похожие вопросы: