Chain Wireguard Использование локальных виртуальных машин - PullRequest
0 голосов
/ 08 октября 2019

Я действительно новичок в Wiregaurd, но я хочу настроить цепную настройку, используя локальные сети Wiregaurd в Ubuntu 18.04 с двумя виртуальными машинами, работающими под Ubuntu 16.04. Мой локальный компьютер называется клиентом, первая виртуальная машина называет его сервером, а вторая виртуальная машина называет его шлюзом.

IP-адрес моего компьютера: 192.168.100.72

IP-адресМой Сервер - 192.168.100.79

, а IP-адрес моего шлюза - 192.168.100.80

Моя цель - создать туннель, в котором я могу Пинговать шлюз от клиента, проходящего через Сервер. то есть

Клиент -> Сервер -> Gate

На этом этапе я могу пропинговать Gate с сервера, а также могу пропинговать сервер с клиента.

Server-> Gateи Клиент-> Сервер

Мой файл wg0.conf для клиента выглядит следующим образом

[Interface]

Address = 10.0.2.2/32

Address = fd86:ea04:1111::2/128

SaveConfig = true

PrivateKey =< Private key of client>

DNS = 10.0.0.1

[Peer]

PublicKey =< Public key of Gate >

AllowedIPs = 0.0.0.0/0

PersistentKeepalive =5

[Peer]

PublicKey = < Public key of server>

Endpoint = <server IP:2222>

AllowedIPs = 10.0.0.1/24

Мой wg0.conf для шлюза выглядит

[Interface]

Address = 10.0.3.3/32

Address = fd86:ea04:1111::3/128

SaveConfig = true

PrivateKey = <gate's private key>

DNS = 10.0.0.1

[Peer]

PublicKey = < server's public key>

Endpoint = <servers IP address:2222>

PersistentKeepalive =5

AllowedIPs = 10.0.0.1/24

[Peer]

PublicKey = < Client public key>

Endpoint = <Client IP address:2222>

PersistentKeepalive =5

AllowedIPs = 0.0.0.0/0

Мой wg0.confфайл для сервера выглядит так:

[Interface]

Address = 10.0.0.1/32

Address = fd86:ea04:1111::1/128

SaveConfig = true

PrivateKey = < server's private key>

DNS = 10.0.0.1

[Peer]

PublicKey = < client's public key>

Endpoint = < Client Public IP:2222>

PersistentKeepalive =5

AllowedIPs = 10.0.2.2/24

[Peer]

PublicKey = < gates public key>

Endpoint = 192.168.100.80:2222

Persistent

Keepalive =5

AllowedIPs = 0.0.0.0/0

Я выполнил следующие команды на сервере

echo "1 middleman" >> /etc/iproute2/rt_tables

ip route add 0.0.0.0/0 dev wg0 table middleman

ip rule add from <IP of the Client> lookup middleman

wg set gate0 peer < publickey of the gate > allowed-ips 0.0.0.0/0

Пинг между моим клиентом и шлюзом напрямую не работает, но пинг между моимсервер и гейт работают, пока пинг между моим клиентом и сервером работает. Я хочу проверить связь с клиентом, проходящим через сервер.

Мне не хватает чего-то очень важного, но я не знаю, что это такое. Я занимался этим конкретным заданием в течение нескольких дней, и любая помощь будет принята с благодарностью

...