Como compartilhar uma pasta em um computador atrás de um roteador para nós fora do roteador?

0

Eu quero compartilhar uma pasta em um computador X com vários outros nós, digamos A , B , C , que estão na mesma LAN. X está atrás de um roteador, e o endereço IP do roteador pode mudar ao longo do tempo (ele é alocado para DHCP), e eu não tenho controle sobre isso. Um , B , C cada um tem um endereço IP estático e eu posso pingar A , B , C de X . Todos os nós estão executando o Linux. Qual é a prática recomendada se eu quiser compartilhar uma pasta em X para A , B e C ?

Eu sabia que uma abordagem é viável até certo ponto, que é configurar o NAT no roteador para a porta 22 de X e, em seguida, usar sshfs em > A , B , C para montar a pasta de X . No entanto, a desvantagem é que o endereço IP do roteador pode mudar.

Eu também tentei usar o ssh + ssh reverso. No entanto, parece que isso só pode compartilhar a pasta em um nó, por exemplo, X - > A , não para toda a rede ( A , B , C ).

    
por Ye Li 04.07.2018 / 06:49

1 resposta

0

A maneira mais fácil é não usar endereços IP e usar uma entrada DDNS (Dynamic DNS) para o servidor. Existem muitos serviços DDNS gratuitos disponíveis: alguns são gratuitos (por exemplo, DNSdynamic ); outros que você pode pagar se quiser recursos adicionais (por exemplo, No-IP ). Para manter a entrada do DDNS válida, você executa um programa como ddclient que verifica o endereço IP do roteador de vez em quando e envia uma solicitação de atualização para o provedor quando necessário; a maioria dos provedores permite o protocolo dyndns2 para atualizações. A maioria das distribuições do Linux carrega ddclient em seus repositórios.

Aqui está um exemplo do arquivo de configuração ddclient update (do DNSdynamic, mas será muito semelhante para outros provedores):

daemon=60                               # check every 60 seconds
syslog=yes                              # log update msgs to syslog
mail=root                               # mail all msgs to root
mail-failure=root                       # mail failed update msgs to root
pid=/var/run/ddclient.pid               # record PID in file.
ssl=yes                                 # use ssl-support.  Works with
                                        # ssl-library

use=web, web=myip.dnsdynamic.com        # get ip from server.
server=www.dnsdynamic.org               # default server
[email protected]                    # default login
password=password                       # default password
server=www.dnsdynamic.org,  \
protocol=dyndns2            \
awesome.dnsdynamic.com
    
por 04.07.2018 / 07:31