Vamos ligar para a máquina que tem acesso à Internet hasinet
e a que não noinet
.
Se você puder fazer uma conexão SSH de noinet
para hasinet
Você pode fazer isso facilmente com o proxy SOCKS interno do OpenSSH. Este comando irá configurar um proxy SOCKS em noinet
ouvindo na porta 1080
:
noinet$ ssh -D 1080 hasinet
Se você só pode fazer conexões SSH para noinet
de hasinet
Você pode executar o proxy SOCKS do OpenSSH em hasinet
e depois encaminhar uma porta de noinet
para hasinet
. Isso pode ser feito com um comando assim (obrigado @Patrick):
hasinet$ ssh -D 1080 localhost -t ssh -R 1080:localhost:1080 noinet
Como usar o proxy SOCKS
Como você usa este proxy dependerá do aplicativo. Alguns aplicativos têm suporte para os proxies SOCKS integrados. Se esse for o caso, você precisará configurar seu aplicativo para usar o proxy em localhost:1080
. Se não, você pode usar proxychains ou redsocks, como sugere o @sciurus. tsocks é uma solução mais leve, se você precisa apenas fornecer acesso à rede para alguns comandos.