SSH & Avançado 38 visualizações

Como usar SSH tunneling para acessar serviços internos do servidor com segurança

Ver no WHMCS

Tunelamento SSH: seu passe VIP para acessar serviços internos com segurança 🔐

Olá! Eu sou a Sensei da GeHost, e hoje vamos falar de um truque que separa quem "só usa hospedagem" de quem realmente entende de segurança: o SSH tunneling (ou "encapsulamento SSH"). Não se assuste com o nome técnico — no fim das contas, é só um jeito de criar um "corredor secreto e criptografado" entre o seu computador e o servidor, para você acessar serviços que normalmente ficam trancados para o mundo externo (como um banco de dados MySQL ou um painel interno).

Vamos com calma, passo a passo. 🧑‍🏫

O que é, afinal, um túnel SSH?

Imagine que seu servidor tem várias "portas" (portas de rede, não portas de casa). Algumas ficam abertas para todo mundo, como a porta 443, usada para seu site funcionar via HTTPS. Outras, por segurança, ficam fechadas para acesso externo — por exemplo, a porta do banco de dados MySQL. Isso é ótimo para proteger seus dados, mas complica quando você mesmo precisa acessar esse serviço de fora, digamos, para conectar um programa como o MySQL Workbench no seu computador.

É aí que entra o túnel SSH: ele usa a sua conexão SSH já autenticada e criptografada (a mesma que você usa para acessar o terminal do servidor) para "empacotar" o tráfego de outro serviço e transportá-lo com segurança, como se aquele serviço interno estivesse rodando na sua própria máquina.

Dica da Sensei: pense no túnel SSH como um elevador de serviço em um prédio. A entrada principal (a internet) fica trancada para visitantes, mas quem já tem a chave do prédio (sua credencial SSH) pode usar o elevador de serviço para chegar exatamente na sala que precisa, sem passar pela entrada pública.

Antes de começar: o que você precisa

  • Acesso SSH já habilitado na sua hospedagem (usuário e senha, ou preferencialmente uma chave SSH).
  • Um cliente de terminal: no Windows, o PowerShell ou o Terminal já trazem SSH nativo (ou use o PuTTY); no Mac e Linux, o Terminal já vem pronto.
  • Saber a porta e o nome do serviço interno que você quer acessar (por exemplo, a porta padrão do MySQL, 3306).

Se você tiver qualquer dúvida sobre qual porta seu serviço usa, é só abrir um chamado no suporte — nosso time confirma isso com você.

Passo a passo: criando um túnel de encaminhamento local (Local Port Forwarding)

Esse é o tipo de túnel mais comum: ele "pega" um serviço que só existe dentro do servidor e o "espelha" numa porta do seu próprio computador.

  1. Abra seu terminal. No Windows, PowerShell; no Mac/Linux, o Terminal.
  2. Digite o comando do túnel. A estrutura geral é:

    ssh -L [porta_local]:localhost:[porta_do_serviço] [seu_usuario]@[seu_dominio_ou_endereço_de_acesso]

    Por exemplo, para acessar um MySQL que só escuta internamente na porta 3306, usando a porta 3307 no seu computador:

    ssh -L 3307:localhost:3306 seuusuario@seudominio.com.br

  3. Autentique normalmente com sua senha ou chave SSH, exatamente como você faria para abrir um terminal comum.
  4. Deixe essa janela do terminal aberta. Ela é o próprio túnel — se você fechar, a "estrada" se desfaz. Isso é proposital: o túnel só existe enquanto a conexão SSH estiver ativa, o que é ótimo para segurança.
  5. Conecte seu programa na porta local. No seu cliente de banco de dados (ou outro programa), configure o endereço como localhost (ou 127.0.0.1) na porta que você escolheu (no exemplo, 3307). O programa vai se comportar como se o serviço estivesse rodando ali mesmo, na sua máquina — mas na real, tudo está passando, criptografado, pelo túnel até o servidor.
Dica da Sensei: escolha uma porta local "alta" (acima de 1024, tipo 3307, 8888, 9090) para evitar conflito com serviços que já rodam no seu próprio computador.

Passo a passo: acessando um painel administrativo interno (encaminhamento web)

O mesmo princípio vale para acessar, por exemplo, um painel web que só responde na rede interna do servidor:

  1. Rode o comando trocando a porta do serviço pela porta web interna, por exemplo:

    ssh -L 8080:localhost:8081 seuusuario@seudominio.com.br

  2. Com o terminal aberto e conectado, abra seu navegador.
  3. Digite http://localhost:8080 na barra de endereços.
  4. O painel interno vai aparecer normalmente, como se estivesse hospedado no seu próprio computador — mas com todo o tráfego passando protegido pelo túnel.

Por que isso é mais seguro do que simplesmente "abrir a porta" para a internet?

  • Criptografia de ponta a ponta: todo o tráfego do serviço interno passa pelo mesmo canal seguro do SSH, que já usa criptografia forte.
  • Nada fica exposto ao mundo: a porta do serviço interno continua fechada para a internet. Só quem consegue autenticar via SSH consegue "abrir a porta do elevador".
  • Acesso temporário e controlado: o túnel só existe enquanto você quiser. Fechou o terminal, fechou o acesso.
  • Menos superfície de ataque: você não precisa liberar múltiplas portas no firewall — só a porta do SSH, que já é necessária de qualquer forma.

Cuidados importantes (leia com atenção!)

Dica da Sensei: use sempre autenticação por chave SSH em vez de senha, sempre que possível. É mais seguro e evita que alguém "adivinhe" seu acesso por tentativa e erro.
  • Nunca compartilhe sua chave privada ou sua senha SSH com terceiros, mesmo que peçam "só para testar uma coisa rápida".
  • Evite deixar túneis abertos sem necessidade — feche o terminal quando terminar de usar o serviço.
  • Se você não tem certeza de qual porta ou serviço interno precisa acessar, fale com o nosso suporte antes de tentar às cegas.
  • Túneis SSH são uma ferramenta poderosa — trate seu acesso com o mesmo cuidado que trataria a chave da sua casa.

Resumo rápido

Um túnel SSH nada mais é do que usar sua conexão SSH segura para "emprestar" o acesso a um serviço que, por segurança, não está exposto à internet. Com um único comando, você cria uma ponte criptografada entre o seu computador e o servidor, mantendo tudo protegido.

Se em algum passo você travar ou tiver dúvida sobre qual porta usar no seu caso específico, não hesite em chamar o suporte da GeHost. Estamos aqui para isso! 💙

Precisa de Ajuda?

Nossa equipe está pronta para resolver suas dúvidas.