Wireguard de túnel (ou qualquer tráfego UDP) dentro de HTTPS

Wireguard de túnel (ou qualquer tráfego UDP) dentro de HTTPS

Wireguard está muito quente hoje em dia, merecidamente. Também estou ansioso para substituir o OpenVPN pelo Wireguard.

No entanto, ao contrário do OpenVPN, o Wireguard suporta apenas UDP. Gosto de usar a porta TCP 443 porque essa porta provavelmente não está bloqueada por um firewall. O OpenVPN ainda tem a opção de usar um proxy HTTP. Isso é muito legal, porque me permite obter acesso total e irrestrito à Internet em redes que não têm rota para a Internet e exigem que os usuários usem um proxy da Web.

Como posso conseguir o mesmo com wireguard? Um túnel HTTPS que funciona para UDP?

Vamos supor que ambos os endpoints estejam executando Linux, tenho acesso root total a ambos e, claro, tenho permissão de todos os envolvidos para fazer isso.

Responder1

Esseparece fazer exatamente o que eu quero, mesmo que você precise cntlmde um proxy adicional se o proxy exigir autenticação NTLM.

Responder2

A documentação oficial diz porque eles não suportam TCP e DPI [1]

O WireGuard explicitamente não oferece suporte ao tunelamento sobre TCP, devido ao desempenho de rede classicamente terrível do tunelamento TCP sobre TCP. Em vez disso, transformar os pacotes UDP do WireGuard em TCP é tarefa de uma camada superior de ofuscação

Para tunelamento TCP eles sugerem usar udp2raw[2] ou udptunnel[3].

Observe que isso cobre apenas o túnel TCP, ele não o mascarará sobre HTTP (S), portanto não será protegido se o seu firewall realizar inspeção profunda de pacotes ou análise de cabeçalho, etc. Você precisaria de uma configuração mais avançada para isso.

  1. https://www.wireguard.com/known-limitations/
  2. https://github.com/wangyu-/udp2raw
  3. https://github.com/rfc1036/udptunnel

Responder3

HTTPS não é algo que você usaria para encapsular o tráfego, mas os websockets são adequados para isso.

Eu acho que você está procurandoWStúnel. Também é capaz de encapsular via TLS.

Responder4

Poderia executar umVPN SSH(usando ssh na porta 443) e execute o Wireguard nas interfaces criadas.

Provavelmente também poderia executar o Wireguard no seu OpenVPN existente.

A premissa do Wireguard parece não ter conexão por design, então duvido que um recurso TCP ou HTTP esteja disponível em breve (desculpe).

informação relacionada