Imaginemos que existe um servidor protegido na Intranet de um sistema. Esse servidor só aceita conexões de dentro da mesma rede. Você pode se conectar a uma máquina da intranet através de uma conexão SSH, e, a partir de lá, você pode se conectar aos serviços internos do sistema em questão. A pergunta é: como você pode redirecionar o fluxo de requests da conexão SSH para o seu computador?. E você pode resolver isso através de um túnel SSH.
O túnel SSH redireciona todos os requests que você realizar ao localhost
para o servidor SSH, que redirecionará o request a host que você estabeleceu o túnel e que, de maneira semelhante, irá redirecionar a resposta ao servidor SSH e o servidor SSH redirecionará a resposta até você.
Assim, é possível passar por firewalls e conseguir uma conexão estável com um serviço de dentro de um sistema.
Comandos para realizar um túnel SSH
Para realizar um túnel SSH é simples, basta utilizar o seguinte comando:
ssh -L [local port]:[service]:[service port] [user]@[ssh ip] -p [port]
-L
→ A flag-L
indica que o serviço será redirecionado para a porta local (no servidorlocalhost
)
Para se conectar ao servidor do túnel SSH, basta entrar na URL ou se conectar a:
localhost:[local port]/
Lembrando que:
443 -> Conexão HTTPS
80 -> Conexão HTTP