Resposta rápida
Como uso o SSH como proxy SOCKS pela minha VPS?
Execute ssh -D 127.0.0.1:1080 -N user@your-vps no seu computador e depois aponte um aplicativo para o proxy SOCKS5 127.0.0.1:1080. O tráfego sai pelo endereço da VPS. Um plano Ember da Gloamport, 1 vCPU, 1 GB RAM, 20 GB NVMe, 1 TB traffic a $3.74 por mês no período de 12 meses, o suporta, porque o OpenSSH já está no servidor.
Quais opções do SSH um proxy SOCKS usa?
| Opção | Onde | O que faz |
|---|---|---|
| -D [bind_address:]port | Linha de comando do ssh | Encaminhamento dinâmico local: o ssh atua como servidor SOCKS4/SOCKS5 nessa porta |
| -N | Linha de comando do ssh | Não executa comando remoto; apenas encaminha |
| -f | Linha de comando do ssh | Vai para o segundo plano após a autenticação |
| -o ExitOnForwardFailure=yes | Linha de comando do ssh | Encerra a conexão se o encaminhamento não puder ser configurado |
| DynamicForward | ~/.ssh/config | Igual a -D, guardado no arquivo de configuração |
| ServerAliveInterval | ~/.ssh/config | Pede uma resposta ao servidor após este número de segundos em silêncio; o padrão 0 o desativa |
Significados das opções segundo as páginas de manual do OpenSSH ssh e ssh_config.
O que um proxy SOCKS por SSH faz, e o que não faz?
Um proxy SOCKS por SSH envia o tráfego dos aplicativos que você aponta para ele por uma conexão SSH criptografada até a sua VPS, que então abre as conexões reais. O manual do ssh descreve -D como encaminhamento dinâmico local em que o ssh atua como servidor SOCKS4 ou SOCKS5, e a máquina remota lê o destino a partir do protocolo do aplicativo.
Os sites que você visita passam a ver o endereço da VPS, não o seu endereço residencial. Três coisas continuam iguais. Somente os aplicativos configurados para o proxy o usam; o restante do sistema sai da forma usual. O provedor da sua VPS pode ver a conexão do seu endereço até a VPS. E os sites em que você entra ainda sabem quem você é. Um proxy SOCKS muda a origem das requisições; ele não esconde sua identidade dos serviços em que você entra. Se você precisar que todos os aplicativos de um dispositivo passem pela rota, use um túnel: Como configuro o WireGuard em uma VPS?.
Como usar o SSH como proxy SOCKS
Você precisa de uma VPS na qual já consiga entrar por SSH. Se ainda não tem uma chave, comece pelo guia de chaves.
Entre uma vez para confirmar o acesso
Conecte com ssh root@YOUR_VPS_IP ou com o usuário que você criou. A Gloamport entrega o root por SSH: a chave que você colou na finalização da compra, ou uma senha root temporária se você deixou o campo vazio. Troque essa senha no primeiro login.
Abra o encaminhamento dinâmico
No seu próprio computador, execute o primeiro comando do bloco de código abaixo. O terminal fica ocupado e não imprime nada: o proxy fica aberto enquanto estiver rodando. Vincular a 127.0.0.1 mantém a porta acessível somente a partir do seu computador.
Teste com curl
Em um segundo terminal, execute o comando curl do bloco de código. --socks5-hostname faz com que o proxy resolva o nome, então as consultas DNS também passam pela VPS. Substitua example.org por uma página de verificação de endereço de sua escolha para ver o endereço da VPS.
Aponte seu navegador para o proxy
Nas configurações de rede do navegador, escolha um proxy manual: host SOCKS 127.0.0.1, porta 1080, SOCKS v5. Ative a opção do navegador para resolver DNS pelo proxy (o Firefox a chama de “Proxy DNS ao usar SOCKS v5”), para que as consultas não vazem para o seu resolvedor local.
Execute em segundo plano, se quiser
Acrescente -f e -o ExitOnForwardFailure=yes ao comando. O ssh então vai para o segundo plano quando o encaminhamento estiver ativo, e para com um erro se a porta já estiver em uso. Pare-o depois com o comando kill do bloco de código.
Salve no ~/.ssh/config
Coloque uma entrada Host com DynamicForward e ServerAliveInterval na sua configuração SSH, depois inicie o proxy com ssh -N gloam-proxy. As mensagens de atividade evitam que uma conexão ociosa seja derrubada em silêncio.
# Foreground: the proxy lives as long as this command runs
ssh -D 127.0.0.1:1080 -N root@YOUR_VPS_IP
# Test from a second terminal; the proxy resolves the name too
curl --socks5-hostname 127.0.0.1:1080 https://example.org/
# Background version
ssh -f -N -o ExitOnForwardFailure=yes -D 127.0.0.1:1080 root@YOUR_VPS_IP
# Stop the background proxy
pkill -f "ssh -f -N -o ExitOnForwardFailure=yes -D 127.0.0.1:1080"Host gloam-proxy
HostName YOUR_VPS_IP
User root
DynamicForward 127.0.0.1:1080
ServerAliveInterval 30
ExitOnForwardFailure yesQual plano da Gloamport basta para um proxy SSH?
O plano menor basta, já que o servidor apenas repassa bytes. O Ember oferece 1 vCPU, 1 GB RAM, 20 GB NVMe, 1 TB traffic por $3.74 por mês no prazo de 12 meses, e $22.44 por 3 meses. O volume de tráfego importa mais que a CPU: tudo o que você navega conta na franquia mensal do plano. Um endereço IPv4 e um /64 de IPv6 por VPS, em porta de 1 Gbit/s. O tráfego de um plano conta apenas dados de saída, e passar esse tráfego nunca gera uma cobrança por si só.
Um uso mais pesado, como várias pessoas compartilhando um proxy, é motivo para subir ao Dusk a $5.25 por mês, dimensionado para Uma VPN mais um relay Tor ou um site onion. Os planos vêm em prazos de 1, 3, 6 e 12 meses, com 3 meses no mínimo para Ember e Dusk; veja os planos e prazos.
Como deixo o lado SSH seguro antes de passar o tráfego por ele?
Use uma chave, não uma senha, e desative o login por senha assim que a chave funcionar. Isso impede que a única porta aberta da sua VPS vire um alvo de tentativas de adivinhação. Os passos estão em Como gero uma chave SSH para minha VPS? e Como reforço o SSH em uma VPS nova?.
Um segundo ponto é o endereço de vinculação. O manual do ssh diz que uma porta -D segue a configuração GatewayPorts, a menos que você informe um endereço, e que um endereço vazio ou * expõe a porta em todas as interfaces. Sempre escreva 127.0.0.1 antes da porta, como nos comandos acima, para que ninguém mais na sua rede consiga usar o seu proxy.
Um proxy SOCKS por SSH é melhor que uma VPN?
Um proxy SSH é mais rápido de configurar, e uma VPN cobre mais. O proxy precisa de um único comando e nenhum software de servidor, mas trata somente os aplicativos que falam SOCKS. Um túnel VPN carrega todo o tráfego do dispositivo. Segundo o levantamento da Gloamport sobre 10 de novembro de 2026, 28 dos 49 provedores listados não pedem documento de identidade no cadastro; então um servidor para rodar um proxy não precisa custar seus documentos. Para uma comparação mais longa, leia Uma VPN própria em uma VPS é melhor que um serviço de VPN?.
Resumo
- ssh -D 127.0.0.1:1080 -N user@vps cria um proxy SOCKS5 local que sai pela VPS.
- Nada extra é instalado no servidor; o OpenSSH basta.
- Use curl --socks5-hostname para que o DNS também seja resolvido pelo proxy.
- Vincule a 127.0.0.1; um endereço de vinculação vazio expõe a porta em todas as interfaces.
- Somente os aplicativos configurados para usar o proxy passam por ele; uma VPN carrega tudo.
- O Ember, $3.74 por mês no período de 12 meses, o executa.
- Entre com uma chave e depois desative os logins por senha.
Proxy SOCKS por SSH: perguntas frequentes
O ssh -D funciona com SOCKS4 e SOCKS5?
Sim. O manual do ssh diz que o ssh atua como servidor SOCKS4 ou SOCKS5 para -D. Use SOCKS5 quando o aplicativo oferecer, porque ele pode passar nomes de host ao proxy.
Por que meu navegador ainda usa meu DNS local?
O navegador resolve os nomes por conta própria, a menos que você diga para enviar as consultas pelo proxy. Ative a opção de DNS remoto para SOCKS v5, e use curl --socks5-hostname nos testes.
Como impeço que o proxy feche quando ocioso?
Defina ServerAliveInterval em ~/.ssh/config, por exemplo 30. O padrão é 0, que não envia mensagens de atividade.
Posso compartilhar o proxy com outros dispositivos da minha rede?
Você pode, mudando o endereço de vinculação, mas isso expõe o proxy a todo dispositivo que alcance essa porta. Mantenha 127.0.0.1, a menos que proteja a porta com um firewall.
Posso encadeá-lo por outro host?
Sim. ssh -J (ProxyJump) conecta primeiro por um ou mais hosts de salto; configure os hosts de salto em ~/.ssh/config, porque as opções da linha de comando valem somente para o destino.
Fontes (3)
- Página do manual ssh(1): -D, -N, -f, -J — OpenBSD / OpenSSH (checked 2026-11-10)
- Página do manual ssh_config(5): DynamicForward, ExitOnForwardFailure, ServerAliveInterval — OpenBSD / OpenSSH (checked 2026-11-10)
- Manual do curl: --socks5-hostname — curl project (checked 2026-11-10)