O Reverse “SSH Tunneling” é uma técnica que permite aceder a sistemas que se encontram bloqueados, por exemplo com uma firewall.
Por vezes é necessário aceder a partir de um sistema sem acesso à internet aos repositórios da distribuição ou a outros recursos expostos na internet.
No nosso exemplo este acesso faz-se com o privoxy, sendo que a maquina que vai servir de proxy é um servidor debian.
Para instalar o privoxy deve executar-se o seguinte comando:
$ sudo apt-get install privoxy
Uma vez instalado deve fazer-se start ao serviço com o seguinte comando:
$ sudo systemctl start privoxy
Para configurar o serviço para arrancar durante o boot executa-se o seguinte:
$ sudo systemctl enable privoxy
As configurações por defeito são suficientes para o nosso objetivo, deverá ter-se em conta que este servidor que irá servir de proxy tem de ter acesso à internet.
Uma vez instalado e feito o arranque do privoxy procedemos à criação do reverse tunel, com recurso ao seguinte comando:
$ ssh -R 8118:localhost:8118 username@REMOTEIP
Neste momento o servidor remoto que não tinha acesso à internet já tem neste momento ligação ao nosso servidor privoxy.
Para concluirmos a operação devemos configurar o proxy no servidor remoto, para tal executam-se os seguintes comandos no servidor remoto:
# export http_proxy="http://localhost:8118"
# export https_proxy="https://localhost:8118"
# export ftp_proxy="ftp://localhost:8118"