SSH & Avançado 44 visualizações

Como configurar um bastion host (jump server) pra centralizar o acesso SSH aos servidores

Ver no WHMCS
Vou escrever o guia diretamente em HTML, sem preâmbulo, focado em bastion host/jump server, evitando expor dados internos e sem atribuir "acesso root/VPS" aos planos GeHost.

O que é um Bastion Host (Jump Server) e por que usar um

Oi! Aqui é a Sensei de novo, e hoje vamos falar de um assunto para quem já tem alguns servidores rodando e está cansado de decorar senha (ou chave) diferente para cada máquina. Se você administra vários servidores (VPS, servidores dedicados, ambientes de desenvolvimento), provavelmente já se pegou pensando: "por que cada servidor tem uma porta SSH aberta pro mundo inteiro?"

Um bastion host — também chamado de jump server — é um único servidor que centraliza o acesso SSH a todos os outros. Em vez de cada máquina da sua rede aceitar conexões SSH diretamente da internet, só o bastion aceita. Todo o resto fica "escondido" atrás dele, e só é acessível a partir do bastion.

Pense nele como a portaria de um prédio: em vez de cada apartamento ter uma porta que dá direto pra rua, todo mundo entra pela portaria, assina o livro de visitantes e só então sobe. Menos portas na rua = menos risco.

Por que isso é importante

  • Superfície de ataque menor: só um servidor precisa estar exposto na internet; os demais ficam só acessíveis pela rede interna.
  • Auditoria centralizada: como todo acesso passa pelo bastion, fica muito mais fácil registrar "quem entrou, quando e em qual servidor".
  • Gestão de acesso simplificada: revogar o acesso de alguém vira uma tarefa só (no bastion), em vez de mexer em cada servidor.

Antes de começar: o que você precisa ter em mãos

  1. Um servidor dedicado só para ser o bastion (pode ser o menor da sua infraestrutura — ele não roda aplicação, só recebe conexões SSH).
  2. Acesso administrativo aos demais servidores que você quer proteger.
  3. Um par de chaves SSH (pública/privada) por pessoa que vai acessar — nunca compartilhe a mesma chave entre pessoas diferentes, isso quebra toda a rastreabilidade que estamos construindo aqui.

Um detalhe importante: se a sua hospedagem é um plano GeHost em cPanel, ela não tem acesso root/SSH avançado como um VPS — este guia é voltado para ambientes de servidor próprio (VPS, dedicado ou cloud) onde você já administra o SSH diretamente. Em caso de dúvida sobre o que o seu plano oferece, dá uma olhada no painel.gehost.com.br ou fala com o nosso suporte.

Passo a passo: montando o seu bastion host

1. Isole o bastion na sua topologia de rede

A ideia central é: os servidores "de trás" (os que rodam sua aplicação, banco de dados etc.) devem parar de aceitar SSH vindo de qualquer lugar da internet e passar a aceitar somente conexões vindas do IP do bastion.

  • No firewall de cada servidor interno, libere a porta SSH apenas para o IP interno (ou público, se não houver rede privada) do bastion.
  • Bloqueie a porta SSH desses servidores para qualquer outra origem.

2. Blinde o bastion (ele é a porta de entrada, então precisa ser a parte mais forte)

  1. Desative login por senha. Só autenticação por chave SSH. Edite o arquivo de configuração do SSH e defina PasswordAuthentication no.
  2. Desative login direto do usuário root. Use PermitRootLogin no e acesse sempre com um usuário comum + sudo.
  3. Troque a porta padrão (22) por outra de sua escolha — isso não é segurança de verdade, mas reduz muito o "ruído" de robôs varrendo a internet.
  4. Ative um firewall (como ufw ou firewalld) permitindo só a porta SSH escolhida e mais nada.
  5. Instale um bloqueador de tentativas repetidas, como o fail2ban, para banir automaticamente IPs que ficam tentando adivinhar senha/chave.
Dica da Sensei: se puder, ative também autenticação em duas etapas (MFA) no bastion, além da chave SSH. É uma camada extra de tranquilidade sem custo nenhum.

3. Configure o acesso "em salto" (ProxyJump) na sua máquina

Aqui está a parte que faz a mágica acontecer para quem usa o dia a dia: você não precisa entrar manualmente no bastion e depois pular pro outro servidor. O próprio SSH faz isso por você, de forma transparente.

No arquivo ~/.ssh/config da sua máquina, adicione algo parecido com:

  1. Um bloco descrevendo o bastion (apelido, endereço, usuário e porta que você configurou).
  2. Um bloco para cada servidor interno, apontando o parâmetro ProxyJump (ou ProxyCommand, em versões mais antigas do SSH) para o apelido do bastion.

Depois disso, basta digitar ssh nome-do-servidor-interno normalmente — o SSH salta pelo bastion sozinho, sem você precisar fazer dois logins manuais.

4. Crie um usuário e uma chave por pessoa

  • Cada membro da equipe deve ter seu próprio usuário no bastion e sua própria chave SSH.
  • Isso garante que os logs mostrem exatamente quem fez o quê — fundamental se um dia você precisar investigar algum incidente.
  • Quando alguém sair da equipe, basta remover a chave pública dela do bastion: o acesso a todos os servidores internos é cortado de uma vez só.

5. Ative e centralize os logs

Configure o bastion para registrar todas as conexões (log do próprio SSH já ajuda bastante) e, se possível, envie esses logs para um local externo ou um serviço de monitoramento. Assim, mesmo que alguém consiga comprometer o bastion, os registros de acesso não somem junto com ele.

6. Teste tudo antes de "fechar a porta" nos servidores internos

Antes de bloquear de vez o SSH direto dos servidores internos, teste o caminho completo pelo bastion com um usuário de teste. Só depois de confirmar que o acesso "em salto" está funcionando é que você deve remover o acesso SSH direto (vindo da internet) desses servidores.

Dica da Sensei: guarde um acesso de emergência (por exemplo, via console do provedor de VPS) antes de fechar tudo. Assim, se algo sair errado na configuração do bastion, você não fica trancado do lado de fora da própria casa.

Manutenção: um bastion não é "configura e esquece"

  • Revise periodicamente quem ainda tem chave cadastrada no bastion.
  • Mantenha o sistema operacional e o serviço SSH sempre atualizados — é o servidor mais exposto da sua infraestrutura.
  • Revise os logs de acesso de tempos em tempos, especialmente tentativas de login que falharam.

E é isso! Com o bastion host no ar, sua infraestrutura ganha uma camada real de organização e segurança, sem perder a comodidade do dia a dia. Se tiver dúvidas na hora de configurar o seu servidor, nosso suporte está por aqui para ajudar. 🌱

Precisa de Ajuda?

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