Túneis SSH e Proxy SOCKS
Crie túneis SSH seguros para comunicação criptografada e configure um proxy SOCKS para navegação anônima ou para contornar restrições de rede.
Túneis SSH e Proxy SOCKS é uma aula grátis de Linux Server Deployment & SSH Mastery no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Linux Server Deployment & SSH Mastery, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
Introdução aos túneis SSH
Boas-vindas aos túneis SSH! Eles não são túneis físicos, mas conexões seguras que permitem encaminhar tráfego de rede por meio de um servidor SSH.
Pense nisso como a criação de um caminho secreto e criptografado através de uma rede pública. Esse caminho permite acessar serviços que, de outra forma, poderiam estar bloqueados ou ser inseguros.
Por que usar túneis SSH?
Os túneis SSH são extremamente versáteis para desenvolvedores e administradores de sistemas. Eles ajudam você a:
- Contornar firewalls: acessar serviços internos que não estão expostos à internet pública.
- Proteger tráfego não criptografado: criptografar dados que normalmente trafegariam de forma insegura (como em protocolos antigos).
- Acessar recursos restritos: alcançar serviços em uma rede privada a partir de uma rede pública, ou vice-versa.
Encaminhamento de portas local explicado
O encaminhamento de portas local ocorre quando você conecta uma porta da sua máquina local a uma porta de uma máquina remota (por meio do servidor SSH).
O servidor SSH atua como intermediário. Seu aplicativo local se conecta a uma porta local, e o SSH encaminha esse tráfego com segurança para o host e a porta remotos especificados.
Encaminhamento local: o comando
A sintaxe do encaminhamento de portas local é simples:
ssh -L [local_port]:[remote_host]:[remote_port] [user]@[ssh_server]
Veja um exemplo de acesso a um banco de dados em execução em db-server (porta 3306) por meio do seu servidor ssh-gateway:
ssh -L 8080:db-server:3306 user@ssh-gateway.comEncaminhamento local: uso prático
Depois de executar o comando da cena anterior, você já pode conectar seu cliente de banco de dados local a localhost:8080.
Todo o tráfego enviado para localhost:8080 será encaminhado com segurança por meio de ssh-gateway.com até db-server:3306. Isso é excelente para acessar bancos de dados ou serviços web privados.
Encaminhamento de portas remoto explicado
O encaminhamento de portas remoto é o oposto do encaminhamento local. Ele permite expor um serviço em execução na sua máquina local por meio de uma porta no servidor SSH remoto.
Isso significa que outras pessoas podem se conectar a uma porta no servidor SSH remoto, e o tráfego delas será encaminhado com segurança para o seu serviço local.
Encaminhamento remoto: o comando
A sintaxe do encaminhamento de portas remoto usa a opção -R:
ssh -R [remote_port]:[local_host]:[local_port] [user]@[ssh_server]
Suponha que você tenha um servidor web em execução localmente na porta 8000 e queira torná-lo acessível a outras pessoas por meio do seu ssh-gateway, na porta 8888:
ssh -R 8888:localhost:8000 user@ssh-gateway.comEncaminhamento remoto: uso prático
Depois que o túnel remoto for estabelecido, qualquer pessoa que consiga alcançar ssh-gateway.com poderá acessar seu servidor web local conectando-se a ssh-gateway.com:8888.
Isso é útil para compartilhar um servidor de desenvolvimento local com colegas de equipe ou para webhooks que precisam alcançar sua máquina local.
Proxy SOCKS por meio do SSH
Um proxy SOCKS permite encaminhar todo o tráfego do seu aplicativo (por exemplo, navegador web ou cliente de bate-papo) pelo servidor SSH. Isso é usado frequentemente para tornar a navegação anônima ou contornar restrições de rede.
A opção -D cria um proxy SOCKS em uma porta local:
ssh -D 9999 user@ssh-gateway.comConfigurando seu cliente para SOCKS
Depois de executar ssh -D 9999 user@ssh-gateway.com, você terá um proxy SOCKS em execução em localhost:9999.
Em seguida, configure seu navegador web (ou outro aplicativo) para usar localhost como proxy SOCKS5 na porta 9999. Todo o tráfego de internet desse aplicativo será então roteado com segurança pelo seu ssh-gateway.
Verificação sobre túneis
Você está tentando acessar um serviço web interno privado em execução em internal-app.local:80 a partir da sua máquina local (localhost). Você tem acesso SSH a jump-host.com.
Qual comando SSH você usaria para encaminhar a porta local 8080 para o serviço web interno?
Resumo de túneis e proxies
Você dominou os túneis SSH! Nós abordamos:
- Encaminhamento de portas local (
-L): acessar serviços remotos a partir da sua máquina local. - Encaminhamento de portas remoto (
-R): expor serviços locais ao servidor SSH remoto. - Proxy SOCKS (
-D): encaminhar todo o tráfego dos aplicativos pelo servidor SSH para garantir privacidade ou contornar restrições.
Essas técnicas são ferramentas poderosas para obter acesso seguro e flexível à rede durante o desenvolvimento e a administração.
Perguntas Frequentes
A aula “Túneis SSH e Proxy SOCKS” é grátis?
Sim — o texto completo de “Túneis SSH e Proxy SOCKS” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Linux Server Deployment & SSH Mastery, atualize para CoddyKit PRO. O curso de Linux Server Deployment & SSH Mastery inclui 4 aulas no total.
O que vou aprender em “Túneis SSH e Proxy SOCKS”?
Crie túneis SSH seguros para comunicação criptografada e configure um proxy SOCKS para navegação anônima ou para contornar restrições de rede. Você pratica Linux Server Deployment & SSH Mastery com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Linux Server Deployment & SSH Mastery?
Nenhuma experiência prévia é necessária. Linux Server Deployment & SSH Mastery no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Túneis SSH e Proxy SOCKS”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Linux Server Deployment & SSH Mastery?
Sim. Cada aula de Linux Server Deployment & SSH Mastery inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Encaminhamento de Portas SSH (Local/Remoto)
- Túneis SSH e Proxy SOCKS
- Agente SSH e Conexões com Vários Saltos
- Transferência Segura de Arquivos com SCP, SFTP e rsync