AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1073018
Accepted
TRW
TRW
Asked: 2021-07-30 08:53:20 +0800 CST2021-07-30 08:53:20 +0800 CST 2021-07-30 08:53:20 +0800 CST

Wireguard Site2Site com escritório móvel

  • 772

Tenho redes conectadas com Wireguard.

Lan1:
  10.240.0.0/24
  via 10.100.1.1/32 on public static ip A.B.C.D/32

Lan2:
  192.168.0.0/24
  via 10.100.1.6/32 on dynamic ip from provider

A rede 10.240.0.0 é uma rede wireguard (wg0) em vários servidores públicos e um servidor é um "gateway" com uma interface wg1 especial com 10.100.1.1. Assim, posso acessar do gateway todos os nós da rede 192.168.0.0. Na Lan2 é uma rede local clássica com alguns servidores. Também nesse peer eu posso alcançar todos os nós atrás de Lan1.

Agora eu quero adicionar um novo par em algum lugar "selvagem" - um escritório móvel. O usuário deve ter acesso a Lan1 e Lan2 ao mesmo tempo, por exemplo, chegar a 10.240.0.0/24 e 192.168.0.0/24. O peer em si é um telefone celular com cliente Wireguard como exemplo.

Gateway Lan1 wg1.conf

[Interface]
Address = 10.100.1.1/32
...

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;

# road-warrior
[Peer]
PublicKey = ...
AllowedIps = 10.100.1.2/32

# Lan2 gateway
[Peer]
PublicKey = ...
AllowedIps = 10.100.1.6/32, 192.168.0.0/24

E o host Lan2

[Interface]
Address = 10.100.1.6/32
...

PostUp   = iptables  -A FORWARD -i %i -j ACCEPT; iptables  -A FORWARD -o %i -j ACCEPT; iptables  -t nat -A POSTROUTING -o ens18 -j MASQUERADE
PostDown = iptables  -D FORWARD -i %i -j ACCEPT; iptables  -D FORWARD -o %i -j ACCEPT; iptables  -t nat -D POSTROUTING -o ens18 -j MASQUERADE

# lan1_gate
[Peer]
PublicKey = ...
EndPoint = fqdn:port
AllowedIPs = 10.100.1.1/32, 10.240.0.0/24

Só consigo definir (no meu entendimento) nesse celular o peer do gateway lan1, pois não tenho acesso ao lan2_gateway mas quero rotear todo o tráfego von 192.168.0.0 sobre lan1_gateway para lan2_gateway

[Interface]
Address = 10.100.1.2/32
...

[Peer]
PublicKey = ...
EndPoint = fqdn:port
AllowedIPs = 10.100.1.1/32, 192.168.0.0/24, 10.240.0.0/24

Quando conecto o road warrior com lan1, consigo chegar a 10.240.0.0/24 mas não a 192.168.0.0. O que está errado? Preciso de outra regra de encaminhamento em lan1_gate para encaminhar o tráfego de 192.168.0.0 para 10.100.1.6? Isso já deveria estar feito.

#> ip r s
default via 172.31.1.1 dev eth0 onlink
...
10.100.1.2 dev wg1 scope link 
10.100.1.6 dev wg1 scope link 
...
10.240.0.4 dev wg0 scope link 
10.240.0.5 dev wg0 scope link 
...
172.31.1.1 dev eth0 proto kernel scope link src A.B.C.D 
192.168.10.0/24 dev wg1 scope link 

Alguma ideia?

wireguard
  • 1 1 respostas
  • 64 Views

1 respostas

  • Voted
  1. Best Answer
    Justin Ludwig
    2021-07-31T11:24:11+08:002021-07-31T11:24:11+08:00

    A menos que você tenha algumas regras de firewall adicionais configuradas no host do gateway Lan1, o tráfego do seu telefone celular "guerreiro da estrada" será encaminhado do gateway Lan1 para o gateway Lan2 usando o endereço de origem WireGuard original do telefone de 10.100.1.2. Portanto, você precisa adicionar o endereço do telefone à AllowedIPsconfiguração na configuração do WireGuard para o host do gateway Lan2:

    AllowedIPs = 10.100.1.1/32, 10.100.1.2/32, 10.240.0.0/24
    

    O gateway Lan2 descartará todos os pacotes que receber de sua conexão WireGuard com o gateway Lan1 quando o endereço de origem do pacote não estiver incluído nessa AllowedIPsconfiguração.

    • 1

relate perguntas

  • Falha ao configurar o dispositivo Wireguard via systemd-networkd na VM do Google Compute Engine

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve