LINUX.ORG.RU
ФорумAdmin

Сервер Wireguard. Не работает маршрутизация

 , ,


0

1

Здравствуйте.

Начал экспериментировать со следующей схемой для VPN соединения нескольких объектов:

1. VPS. Ubuntu Server 18.04, Wireguard Server, IP: 10.7.0.1. 2. ЦЕНТР, Wireguard-клиент на роутере (Mikrotik). 3. ОФИС 1, Wireguard-клиент на роутере (Mikrotik). 4. ОФИС 2, Wireguard-клиент на компьютере (Windows) находящегося за NAT (роутера Mikrotik).

Задача: Обеспечить возможность доступа с компьютеров ЦЕНТРа к локальным ресурсам сетей ОФИС 1 И ОФИС 2. Исключить доступ к локальным ресурсам ЦЕНТРа.

Что получилось: клиент ЦЕНТРа, клиент ОФИС 1, клиент ОФИС 2 подключились к серверу, ping между всеми узлами 10.7.0.0/24 есть.

Что не получается: 1. Не проходит ping c VPS к локальным ресурсам ЦЕНТРа и ОФИСов (192.168.X.0/24) 2. Соответсвенно не проходит ping c ЦЕНТРа к локальным сети ОФИСов (192.168.X.0/24) .

Маршруты, содержимое файлов конфигурации сервера и клиентов: VPS, маршруты:

root@vpn:~# ip route
default via 10.0.0.1 dev ens3 onlink 
10.7.0.0/24 dev wg0 proto kernel scope link src 10.7.0.1 
192.168.1.0/24 via 10.7.0.10 dev wg0 
192.168.10.0/24 via 10.7.0.11 dev wg0 
VPS, конфигурация
[Interface]
Address = 10.7.0.1/24
SaveConfig = true
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
ListenPort = 51820
PrivateKey = UM0XLDyi2Oe3K2dBnwcvKHOp5iy3RXIP5cpN65tt1Hc=
Table = off

#ЦЕНТР
[Peer] 
PublicKey = 99Gq490S+qJggS33m4SMMT7kgKpL/CjxloH5CC4C6Q8=
PresharedKey = 4kpzbgDo2M+NTs63c6KP44lA4skCpzeA6jadY3e6f3c=
AllowedIPs = 10.7.0.10/32, 192.168.1.0/24
Endpoint = AA.AA.AA.AA.AA:60662

#ОФИС 1
[Peer]
PublicKey = FH6lYKKFmvnjxbby4KovxM+5iTUV6VEroYUx9v8OVFA=
PresharedKey = 2De40vxZNqKip2rQfCL7XEzymSoj3eL9j6Wws/wF7sA=
AllowedIPs = 10.7.0.11/32, 192.168.10.0/24
Endpoint = BB.BB.BB.BB:13231[/spoiler]
PersistentKeepalive = 25

ЦЕНТР, конфигурация

[Interface]
Address = 10.7.0.10/24
DNS = 8.8.8.8, 8.8.4.4
PrivateKey = SMAuLJkpmj64HNZ2ucgRDpCYV+8SmM5fqvldBlVJj20=

[Peer]
PublicKey = Am0UBpq8+RdrUKy/8do4ZUjOunRz2hrwb56CRTzm41M=
PresharedKey = 4kpzbgDo2M+NTs63c6KP44lA4skCpzeA6jadY3e6f3c=
AllowedIPs = 10.7.0.10/32,  192.68.1.0/24
Endpoint = 11.11.11.11:15280

ОФИС 1, конфигурация

[Interface]
Address = 10.7.0.11/24
DNS = 8.8.8.8, 8.8.4.4
PrivateKey = IJ7daMD7GY+2uuwwExVHtdtkkWa6ookbGFmZeXlHnkE=

[Peer]
PublicKey = Am0UBpq8+RdrUKy/8do4ZUjOunRz2hrwb56CRTzm41M=
PresharedKey = 2De40vxZNqKip2rQfCL7XEzymSoj3eL9j6Wws/wF7sA=
AllowedIPs = 10.7.0.11/32,  192.68.10.0/24
Endpoint = 11.11.11.11:15280
PersistentKeepalive = 25

Кто силен в этой магии, просьба помочь. Спасибо.



Последнее исправление: Pereirro (всего исправлений: 4)

Ох…

  1. Добавляешь везде Table = off
  2. Тебе нужна маршрутизация:
192.168.1.0     10.7.0.10         255.255.255.0   U     0      0        0 wg0
192.168.10.0    10.7.0.11         255.255.255.0   U     0      0        0 wg0

Дополню: после указания 0/0 все остальные записи бессмысленны, где-то /32 где-то /24 это вот все зачем? Ну и совсем по издалека: лучше разведи на разные интерфейсы, потом меньше путаницы будет.

Anoxemian ★★★★★
()
Последнее исправление: Anoxemian (всего исправлений: 1)
Ответ на: комментарий от Anoxemian

Подправил конфиги, но все равно не выходит каменный цветок ((( А с самого VPS должны пинговаться локальные подсети клиентов? upd: просьба сильно не пинать, ибо первый опыт с линуксами и сетями.

Pereirro
() автор топика
Ответ на: комментарий от Pereirro

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

[Interface]
Address = 10.7.0.1/29
Table = off
SaveConfig = true
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostUp = ip r a 192.168.1.0/24  via 10.7.0.2 dev %i
PostUp = ip r a 192.168.10.0/24 via 10.7.0.3 dev %i
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
ListenPort = 51820
PrivateKey = UM0XLDyi2Oe3K2dBnwcvKHOp5iy3RXIP5cpN65tt1Hc=

#ЦЕНТР
[Peer] 
PublicKey = 99Gq490S+qJggS33m4SMMT7kgKpL/CjxloH5CC4C6Q8=
PresharedKey = 4kpzbgDo2M+NTs63c6KP44lA4skCpzeA6jadY3e6f3c=
AllowedIPs = 10.7.0.2/29, 192.168.1.0/24
Endpoint = AA.AA.AA.AA.AA:60662
PersistentKeepalive = 5

#ОФИС 1
[Peer]
PublicKey = FH6lYKKFmvnjxbby4KovxM+5iTUV6VEroYUx9v8OVFA=
PresharedKey = 2De40vxZNqKip2rQfCL7XEzymSoj3eL9j6Wws/wF7sA=
AllowedIPs = 10.7.0.3/29, 192.168.10.0/24
Endpoint = BB.BB.BB.BB:13231[/spoiler]
PersistentKeepalive = 5

ЦЕНТР, конфигурация

[Interface]
Address = 10.7.0.2/29
DNS = 8.8.8.8, 8.8.4.4
PrivateKey = SMAuLJkpmj64HNZ2ucgRDpCYV+8SmM5fqvldBlVJj20=
Table = off
PostUp = ip r a 192.168.10.0/24 via 10.7.0.1 dev %i

[Peer]
PublicKey = Am0UBpq8+RdrUKy/8do4ZUjOunRz2hrwb56CRTzm41M=
PresharedKey = 4kpzbgDo2M+NTs63c6KP44lA4skCpzeA6jadY3e6f3c=
AllowedIPs = 0/0
Endpoint = 11.11.11.11:15280
PersistentKeepalive = 5

ОФИС 1, конфигурация

[Interface]
Address = 10.7.0.3/29
DNS = 8.8.8.8, 8.8.4.4
PrivateKey = IJ7daMD7GY+2uuwwExVHtdtkkWa6ookbGFmZeXlHnkE=
Table = off
PostUp = ip r a 192.168.1.0/24 via 10.7.0.1 dev %i

[Peer]
PublicKey = Am0UBpq8+RdrUKy/8do4ZUjOunRz2hrwb56CRTzm41M=
PresharedKey = 2De40vxZNqKip2rQfCL7XEzymSoj3eL9j6Wws/wF7sA=
AllowedIPs = 0/0
Endpoint = 11.11.11.11:15280
PersistentKeepalive = 5
Anoxemian ★★★★★
()
Ответ на: комментарий от Anoxemian

Спасибо, Anoxemian! Знаний в этой области действительно не так много. Довелось только напрямую офисы связывать через VPN L2TP.

Не сочти за наглость, подскажи еще каким образом протолкнуть директивы через микротик? Клиенты WG ведь с него к серверу подключаются «Table = off PostUp = ip r a 192.168.1.0/24 via 10.7.0.1 dev %i»

Pereirro
() автор топика