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 / 1153731
Accepted
matthieusb
matthieusb
Asked: 2024-02-17 02:13:02 +0800 CST2024-02-17 02:13:02 +0800 CST 2024-02-17 02:13:02 +0800 CST

Os serviços http dockerizados não são acessíveis no nordvpn meshnet

  • 772

Estou configurando um servidor doméstico (usando o servidor Ubuntu 22.04) com vários serviços implantados em várias portas. Por exemplo, meu servidor de página inicial está implantado na porta 3000.

Quando estiver na rede local:

  • O acesso Ssh está OK
  • Os serviços HTTP implantados diretamente no servidor estão OK
  • Os serviços HTTP implantados via docker com uma rede bridge estão OK

Quando uso o meshnet nordvpn:

  • O acesso Ssh está OK
  • Os serviços HTTP implantados diretamente no servidor estão OK
  • Os serviços HTTP implantados via docker com uma rede bridge NÃO SÃO ACESSÍVEIS

Aqui está o docker compose para o meu servidor de página inicial

version: "3.9"
services:
  homepage:
    image: ghcr.io/gethomepage/homepage:latest
    container_name: homepage
    ports:
      - "3000:3000"
    volumes:
      - /config:/app/config
      - /var/run/docker.sock:/var/run/docker.sock
    environment:
      PUID: $PUID
      PGID: $PGID
    networks:
      - homepage_net

networks:
  homepage_net:
    driver: bridge

Aqui está minha interface Ethernet principal:

enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.XXX  netmask 255.255.255.0  broadcast 192.XXX
        ether XXX  txqueuelen 1000  (Ethernet)
        RX packets 257310280  bytes 326111324526 (326.1 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 157444527  bytes 168981936261 (168.9 GB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 20  memory 0xf3a00000-f3a20000 

Aqui está a interface de rede do Nordlynx (os recursos meshnet do Nordvpn a criam):

nordlynx: flags=81<UP,POINTOPOINT,RUNNING>  mtu 1420
        inet XXX  netmask 255.255.255.255  destination XXX
        unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
        RX packets 236544852  bytes 298874606486 (298.8 GB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 52996561  bytes 13275751612 (13.2 GB)
        TX errors 0  dropped 34313 overruns 0  carrier 0  collisions 0

Aqui estão minhas rotas:

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         _gateway        0.0.0.0         UG    0      0        0 enp0s25
172.17.0.0      0.0.0.0         255.255.0.0     U     0      0        0 docker0
172.18.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-9066eab87b15
172.19.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-e7a37ce3a7bd
172.20.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-e6e5e235ac3b
172.21.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-64f3f670aea1
172.22.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-f624ee4026b8
172.23.0.0      0.0.0.0         255.255.0.0     U     0      0        0 br-90ed8d1cb5ca
192.XXX         0.0.0.0         255.255.255.0   U     0      0        0 enp0s25

EDITAR:

Aqui está minha lista de permissões nordvpn:

Allowlisted subnets:
        172.0.0.0/8
        100.0.0.0/8
        192.168.50.0/24

Como está funcionando na rede local, acho que pode ser um problema de janela de encaixe ou de roteamento. Sou praticamente um novato quando se trata de administração de sistemas e redes. Qualquer ajuda é apreciada.

vpn
  • 1 1 respostas
  • 172 Views

1 respostas

  • Voted
  1. Best Answer
    Adam Frydrych - Meshnet
    2024-02-21T23:24:56+08:002024-02-21T23:24:56+08:00

    TL;WR - Habilite a permissão de acesso à rede local no Meshnet na máquina Docker para pares que devem poder acessar os contêineres.

    nordvpn meshnet peer local allow [command options] <peer_hostname>|<peer_nickname>|<peer_ip>|<peer_pubkey>
    

    por exemplo

    nordvpn meshnet peer local allow adam.frydrych-everest.nord
    

    No momento, estamos cientes de um problema de que, se uma porta de contêiner do Docker tiver sido exposta à máquina host, ainda será necessário fornecer permissão de acesso à rede local aos pares no Meshnet para acessar serviços dentro dos contêineres do Docker.

    Isso é causado pela exposição das portas do Docker ao inserir regras de iptables na cadeia PREROUTING.

    Exemplo de tal regra:

    -A DOCKER ! -i br-72e949c2a2f0 -p tcp -m tcp --dport 8004 -j DNAT --to-destination 172.24.0.2:80
    

    Isso significa que quando um pacote entra na cadeia INPUT/FORWARD, ele será visto como tendo o endereço IP da rede definida pelo Docker dentro da sub-rede 172.16.0.0/16 (172.24.0.2 neste caso). Por causa disso, o Meshnet descartará esses pacotes de acordo com as regras predefinidas definidas para descartar o tráfego destinado a intervalos de IP privados, como:

    169.254.0.0/16
    192.168.0.0/16
    172.16.0.0/12
    10.0.0.0/8
    

    Em outras palavras, o Meshnet trata o intervalo de IP do Docker como uma rede local e é por isso que você precisa definir o acesso à rede local com o seguinte comando:

    nordvpn meshnet peer local allow [command options] <peer_hostname>|<peer_nickname>|<peer_ip>|<peer_pubkey>
    

    Observação:

    Aqui está minha lista de permissões nordvpn:

        Allowlisted subnets:
        172.0.0.0/8
        100.0.0.0/8
        192.168.50.0/24
    

    Esta lista de permissões se aplica apenas a conexões NordVPN e não altera as permissões do Meshnet.

    Se o Docker ou um registro de sub-rede local tiver sido adicionado à lista de permissões, livre-se dele com o seguinte comando:

    nordvpn allowlist remove command [command options] [arguments...]
    

    Além disso, se o NordVPN estiver conectado, certifique-se de que a descoberta de LAN esteja ativada com o seguinte:

    nordvpn set lan-discovery on
    
    • 1

relate perguntas

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