Conceder acesso à Internet a um servidor acessível por SSH, mas onde a Internet está bloqueada

8

Eu posso usar meu computador doméstico A para conectar por SSH a um servidor B onde o acesso à rede externa é bloqueado. Em outras palavras, todas as solicitações para a Internet de B lançam um erro: A rede está inacessível . Posso redirecionar todos esses pedidos para passar pelo computador A que tem acesso irrestrito à Internet?

Servidor B é um servidor que hospeda um dos meus sites. Eu quero baixar arquivos para instalar algum software. Mas a conexão está bloqueada. Consegui transferir arquivos, mas foi complicado porque as versões do software são diferentes em A e B , portanto as dependências eram diferentes e exigiam arquivos diferentes em A e B .

Eu procurei na Internet e parece que eu preciso de um túnel reverso. Mas eu só encontrei soluções onde uma porta é redirecionada . Mas não é o que preciso, pois não quero que B acesse A , mas à Internet.

    
por A.L 21.02.2014 / 00:39

2 respostas

6

Você pode executar um proxy no Computador A ao qual o computador B se conectaria para acessar a Internet através do Computador A.

Algo parecido com isto

             +----------+            +-----------+
             |          |+----SSH+-->|           |
             |     A    |            |    B      |
             |+--------+|            |           |
  Internet <-++-+PROXY<++<SSH Tunnel--+          |
             |+--------+|            |           |
             +----------+            +-----------+

Instale um proxy como o squid em A, que escuta na porta 3128, e então você pode ssh para o servidor com isso -
ssh -L 3128:127.0.0.1:3128 user@B

Isso permitirá que B acesse a internet através de A

    
por 21.02.2014 / 03:33
4

A resposta de @Lawrence foi boa o suficiente para eu baixar tudo. Mas aqui estão os passos mais detalhados que usei.

Eu usei isso para usar meu dongle 4g laptops para rotear a internet para um pi framboesa com uma conexão de linha fixa para um roteador wifi.

Se o seu host é um mac: instalar o squidman link

(não apenas squid genérico, eu tive muita dificuldade em criá-lo) As configurações padrão pareciam boas o suficiente para mim.

conecte-se a 4g conectar-se a wi-fi - configure um ip estático no seu wifi e remova o endereço do gateway (a menos que você esteja fazendo coisas avançadas) senão você tem duas rotas padrão e é muito chato. - verifique se o seu roteador wifi não está usando o mesmo intervalo 192.168.x.y (configure um "x" diferente neste caso)

ssh -R 8080:localhost:8080 pi@<ip address of the pi or target machine>

No PI

export http_proxy=http://localhost:8080

com visudo, adicione o texto:

Defaults env_keep = "http_proxy https_proxy ftp_proxy"

Agora o wget irá funcionar e assim irá sudo apt-get para que você possa instalar pacotes.

Se você quiser git também está aqui: link

    
por 13.09.2015 / 15:38