Os seus VPS conversando entre si, sem abrir portas para a internet
O jeito comum de um VPS usar o banco de dados de outro é abrir a porta 5432 para a internet e confiar na senha. Aqui não precisa: um VPS atua como receptor e outro como iniciador, e em poucos cliques o serviço privado do primeiro aparece no localhost do segundo. Nada fica exposto, o túnel é criptografado por SSH, se reconecta sozinho e as chaves são trocadas sem copiar e colar.
- Sem abrir portas
- Criptografia SSH
- Reconecta sozinho
Ver planos · Criar conta grátis
É assim no painel

O túnel SSH que você sempre montava à mão
Agora com assistente, status ao vivo e boas práticas por padrão.
- Receptor e iniciador: Cada VPS pode aceitar túneis, abrir túneis, ou as duas coisas ao mesmo tempo. A topologia quem monta é você.
- Nada exposto à internet: O serviço continua escutando só no localhost do receptor. Não se abre a 5432, nem a 3306, nem a 6379: o tráfego entra pelo túnel ou não entra.
- Instalação em um clique: O receptor fica pronto em segundos. O iniciador instala o autossh sozinho, sem você tocar num arquivo de configuração.
- Usuário de túnel restrito: O receptor cria um usuário dedicado sem senha, sem sudo e sem shell, que só pode fazer port forwarding. Mesmo que alguém conseguisse a chave, não teria onde pisar.
- Chaves ed25519 que se registram sozinhas: O iniciador gera o seu par de chaves e o painel o autoriza no receptor, entre VPS da mesma Empresa. Sem copiar e colar, que é por onde os erros entram.
- String de conexão pronta: O receptor te dá a string de conexão usando o DNS do VPS, assim você não sai distribuindo o IP por aí.
- Atalhos para bancos de dados: Sugestões prontas para PostgreSQL (5432), MySQL (3306) e Redis (6379), que são 90 % dos casos.
- Sempre conectado: Cada túnel roda como serviço systemd com autossh: se a rede cair, ele volta sozinho. E você pode reiniciá-lo pelo painel sem entrar por SSH.
- Status ao vivo: Se o receptor está ativo, se a porta escuta, quantos túneis existem e em que estado está cada um. Sem adivinhar.
- Qualquer porta, não só bancos: Uma API interna, um Elasticsearch, um painel de administração que você não quer publicar: se escuta numa porta, dá para tunelar.
Assistente em 5 passos
- Ative o receptor: No VPS que tem o serviço privado. Ele fica escutando na porta 2222 com o seu usuário de túnel restrito.
- Ative o iniciador: No VPS que vai consumir o serviço. Ele instala o autossh e gera o seu par de chaves ed25519.
- Registre a chave: Um clique no painel autoriza a chave pública do iniciador no receptor. Não é preciso copiar e colar nada.
- Crie o túnel: Você escolhe a porta local do iniciador e a porta de destino no receptor. Para PostgreSQL, MySQL e Redis elas já vêm sugeridas.
- Use em localhost: O seu app se conecta em localhost:5432 como se o banco estivesse na mesma máquina. Não há nada a mudar no código além do host.
Como funciona por baixo, e o que levar em conta
- É o port forwarding de SSH de sempre, só que montado e mantido pelo painel: o receptor roda um sshd com um usuário dedicado e o iniciador mantém a conexão com autossh dentro de uma unidade do systemd.
- O usuário de túnel não tem senha, nem sudo, nem shell. A única coisa que ele consegue fazer é abrir port forwardings, então uma chave vazada não dá acesso ao servidor.
- O receptor usa a porta 2222, que precisa ter o seu redirecionamento ativo. É a única porta que se abre, e ela não dá shell para ninguém.
- O iniciador precisa de saída para a internet para instalar o autossh na primeira vez. Depois funciona igual mesmo que você restrinja a saída.
- Não dá para repetir portas locais entre túneis do mesmo iniciador: se a 5432 já está ocupada por um banco, o segundo vai para outra porta local.
- Reinstalar o receptor gera um usuário de túnel novo. É preciso autorizar as chaves de novo e recriar os túneis: não é um bug, é que a identidade anterior deixa de existir.
- Precisa de systemd e de uma base Debian ou Ubuntu. Está verificado em produção no Ubuntu 22.04 e é compatível com 24.04 e 26.04.
- No Ubuntu 20.04 e anteriores não está disponível, e o motivo é concreto em cada caso: o 16.04 traz OpenSSH 7.2, que não entende a diretiva Include e nunca lê o sshd_config.d; o sshd_config do 18.04 simplesmente não inclui esse diretório; e no 20.04 a configuração base do VPS escreve KbdInteractiveAuthentication, que o OpenSSH 8.2 não conhece, então o sshd -t falha e a mudança é revertida sozinha.
- O túnel criptografa o transporte, não autentica o seu aplicativo: o banco de dados continua precisando do seu usuário e da sua senha. O que desaparece é a exposição à internet, não a autenticação.
- Root real por SSH: o painel é um atalho, não uma jaula. Tudo o que ele faz com um botão você também pode fazer à mão.
Você também pode pedir ao Claude, ChatGPT ou Cursor
Tudo o que você vê no painel o seu agente de IA pode fazer pelo servidor MCP da ArduMaker: com a sua autorização, com o alcance que você der e com cada ação auditada. Ver o que o MCP faz
Perguntas frequentes
Dá para usar o banco de dados de outro VPS sem expor ele à internet?
Dá, e é exatamente para isso que serve. O banco continua escutando só no localhost do receptor; a porta 5432 nunca é aberta. No VPS iniciador ele aparece em localhost através do túnel criptografado, e o seu app se conecta como se fosse local.
Como conecto dois servidores sem abrir portas?
A única porta que se abre é a 2222 do receptor, e ela atende um usuário sem shell que só pode fazer port forwarding. Os serviços que você quer compartilhar —o banco, o Redis, uma API interna— não são publicados: eles viajam dentro do túnel SSH.
Preciso copiar chaves SSH na mão?
Não. O iniciador gera o seu par ed25519 e o painel registra a chave pública no receptor com um clique, entre VPS da mesma Empresa. É o passo em que mais se erra quando é feito à mão.
E se a conexão cair?
Cada túnel roda com autossh dentro de uma unidade do systemd, então ele se reconecta sozinho quando a rede volta. Você também pode reiniciá-lo pelo painel sem entrar por SSH.
Um VPS pode ser receptor e iniciador ao mesmo tempo?
Pode. É o normal quando você tem três ou quatro servidores conversando entre si: cada um oferece alguma coisa e consome alguma coisa.
Serve para algo que não seja banco de dados?
Para qualquer coisa que escute numa porta. Um Elasticsearch, uma API interna, um painel de administração que você não quer publicar, um serviço de filas. Os bancos só vêm com as portas sugeridas porque são o caso mais frequente.
É a mesma coisa que uma VPN como Tailscale ou WireGuard?
Resolve um problema parecido com menos peças. Uma VPN monta uma rede entre as máquinas e tudo o que escuta fica alcançável dentro dela; um túnel SSH publica uma porta pontual em outra máquina e nada mais. Se o que você precisa é que um app chegue a um banco, o túnel é mais simples e não adiciona um daemon de rede.
O túnel deixa o meu banco seguro?
Ele criptografa o transporte e tira o banco da internet, que é a metade importante. A outra metade continua sendo sua: o banco precisa do mesmo jeito do seu usuário e da sua senha, porque o túnel não autentica o seu aplicativo.
Por que não funciona no Ubuntu 20.04?
Porque a configuração base do VPS escreve KbdInteractiveAuthentication, uma diretiva que o OpenSSH 8.2 não conhece: o sshd -t falha e a mudança é revertida. No 18.04 o problema é outro, o sshd_config não inclui o sshd_config.d, e no 16.04 o OpenSSH 7.2 não entende o Include. Está verificado no 22.04 e é compatível com 24.04 e 26.04.
Quanto custa?
Nada além do VPS. Os túneis SSH vêm no painel de todos os planos, inclusive o menor.
Serviços que costumam andar juntos
- PostgreSQL: Instale o PostgreSQL e gerencie bancos, usuários e permissões sem linha de comando.
- Redis: Instale o Redis, ajuste memória e persistência, e busque, edite e apague chaves pelo painel.
- Gerenciador de bancos de dados: Uma grade web para PostgreSQL e MySQL: editar linhas, SQL, EXPLAIN e importar e exportar CSV e Excel por túnel privado.
Arquitetura com vários servidores, sem a parte difícil Túneis SSH incluídos no painel de cada VPS, em todos os planos. Ver planos