Wireguard VPN de entrada e saída

0

Estou tentando configurar um túnel Wireguard para que A use o IP de B para tráfego de entrada e saída (como um proxy, não uma configuração std VPN). Ambas as caixas são Ubuntu 16.04.

A é eth0, atrás de um roteador com NAT e na DMZ, com IP A

B tem dois IPs públicos: um principal (ens3 aka B1) e um secundário (ens3: 0 aka B2). O secundário deve ser dedicado ao túnel do WG.

WG on A:

Interface Address = 10.200.1.2/24 SaveConfig = true ListenPort = 50614 FwMark = 0xca6c PrivateKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx [Peer] PublicKey = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy AllowedIPs = 0.0.0.0/0 Endpoint = <B2>:51820 PersistentKeepalive = 10

WG em B:

[Interface] Address = 10.200.1.1/24 SaveConfig = true ListenPort = 51820 PrivateKey = wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww [Peer] PublicKey = zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz AllowedIPs = 10.200.1.0/24 Endpoint = A:50614

Rota em A:

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

Rota em B:

Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 B1.B1.B1.1 0.0.0.0 UG 0 0 0 ens3 B2.B2.B2.0 0.0.0.0 255.255.255.0 U 0 0 0 ens3 B1.B1.B1.0 0.0.0.0 255.255.254.0 U 0 0 0 ens3 169.254.169.254 B1.B1.B1.1 255.255.255.255 UGH 0 0 0 ens3

Qual rota eu preciso adicionar para que todo pacote de saída de A seja enviado via B2 e cada pacote de entrada para B2 seja enviado para A?

    
por Gaia 20.06.2018 / 06:52

1 resposta

1

Eu recebi muita ajuda da comunidade Wireguard, e aqui está o que funciona.

A (cliente)

[Interface]
Address = B2/32
PrivateKey = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AllowedIPs = 0.0.0.0/0
Endpoint = B2:51820
PersistentKeepalive = 10

B (servidor)

[Interface]
ListenPort = 51820
PrivateKey = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy

[Peer]
PublicKey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AllowedIPs = B2/32

Não se esqueça dos passos habituais (em B)

  • abra o 51820 / udp no firewall
  • definir net.ipv4.ip_forward = 1

Se a interface wg0 em B estiver mostrando uma crescente contagem de erros, você pode querer desabilitar a DMZ para A ou restringir a entrada nas portas que estão em uso na B2, que também podem ter tráfego via A para a interface WG. Este pode ser o caso se você estiver executando serviços baseados em pares.

    
por 28.06.2018 / 22:50