0Pricing
Linux Server Deployment & SSH Mastery · Aula

Protegendo o Servidor SSH

Proteja seu servidor SSH editando sshd_config: desative logins de root e por senha, altere padrões arriscados, restrinja usuários e aplique proteções em camadas para que apenas clientes confiáveis possam se conectar.

Protegendo o Servidor SSH é uma aula grátis de Linux Server Deployment & SSH Mastery no CoddyKit. Esta é a aula 4 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.

Por que reforçar a segurança do SSH?

Um servidor SSH exposto à internet é um alvo constante de ataques automatizados. As configurações padrão deixam várias portas abertas que os bots sondam sem parar.

Reforçar a segurança significa ajustar a configuração do servidor para que, mesmo que os invasores encontrem seu servidor, não consigam entrar por força bruta.

O arquivo sshd_config

O comportamento do SSH no servidor é controlado por /etc/ssh/sshd_config. Esse arquivo é diferente da configuração do cliente que você configurou anteriormente (~/.ssh/config).

Sempre edite-o como root e mantenha um backup antes de fazer alterações.

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
sudo nano /etc/ssh/sshd_config

Desativar o login do root

A conta root é a primeira coisa que os invasores tentam acessar. Desativar o login direto do root obriga-os também a descobrir um nome de usuário válido.

Defina PermitRootLogin como no. Os administradores devem fazer login como um usuário normal e usar o sudo.

PermitRootLogin no

Desativar a autenticação por senha

Depois que a autenticação por chave estiver funcionando, desative completamente as senhas. Isso elimina totalmente os ataques de força bruta — não há senha para adivinhar.

Atenção: confirme que o login por chave funciona antes de aplicar essa alteração, caso contrário você poderá perder o acesso.

PasswordAuthentication no
ChallengeResponseAuthentication no
PubkeyAuthentication yes

Restringir quem pode fazer login

Você pode criar uma lista de permissões especificando exatamente quais contas podem usar SSH com AllowUsers ou AllowGroups. Qualquer pessoa que não esteja listada terá o acesso recusado, mesmo com chaves válidas.

Esse é um controle simples e eficaz em servidores com vários usuários.

AllowUsers deploy admin
# or by group:
AllowGroups sshusers

Alterar a porta padrão (opcional)

Mudar o SSH da porta 22 não acrescenta segurança real, mas reduz drasticamente o ruído causado por analisadores automatizados nos seus registros.

Escolha uma porta não padrão e lembre-se de liberá-la no firewall e informar os clientes sobre ela.

Port 2222

Limitar tentativas de login e sessões

Várias diretivas reduzem o intervalo de oportunidade dos invasores:

  • MaxAuthTries — tentativas malsucedidas antes da desconexão
  • LoginGraceTime — segundos permitidos para autenticação
  • MaxSessions — sessões simultâneas por conexão
MaxAuthTries 3
LoginGraceTime 30
MaxSessions 2

Aplicar alterações com segurança

Depois de editar, valide a sintaxe com sshd -t antes de reiniciar — um erro de digitação pode impedir o serviço de iniciar e bloquear seu acesso.

Em seguida, recarregue o serviço. Mantenha a sessão atual aberta e teste uma nova conexão antes de encerrá-la.

sudo sshd -t
sudo systemctl restart ssh

Proteção contra força bruta com Fail2ban

Fail2ban monitora seus registros de autenticação e bane temporariamente os IPs que falham vezes demais. Ele adiciona uma camada de firewall dinâmica sobre as configurações do sshd.

Instale-o e ative a prisão do SSH; os padrões são adequados para a maioria dos servidores.

sudo apt install fail2ban
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd

Verifique o reforço de segurança

Confirme que o servidor agora rejeita aquilo que foi desativado. Tente se conectar com uma saída detalhada para ver quais métodos de autenticação o servidor oferece.

Um servidor protegido deve anunciar apenas publickey e recusar logins por senha e como root.

ssh -v deploy@server
# Look for: 'Authentications that can continue: publickey'

Boas práticas

Mantenha seu servidor SSH seguro ao longo do tempo:

  • Nunca aplique PasswordAuthentication no antes de testar o login por chave
  • Mantenha uma sessão aberta enquanto altera a configuração
  • Use sshd -t a cada edição
  • Combine o reforço de segurança do sshd com um firewall e o Fail2ban

Verificação rápida

Teste seus conhecimentos sobre o reforço de segurança do SSH.

Recapitulação

Você reforçou a segurança do seu servidor SSH por meio de /etc/ssh/sshd_config:

  • Desativou logins como root e por senha
  • Incluiu usuários em uma lista permitida com AllowUsers
  • Ajustou MaxAuthTries e LoginGraceTime
  • Adicionou o Fail2ban para proteção dinâmica contra força bruta

Valide com sshd -t e sempre teste antes de fechar sua sessão.

Perguntas Frequentes

A aula “Protegendo o Servidor SSH” é grátis?

Sim — o texto completo de “Protegendo o Servidor SSH” é 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 “Protegendo o Servidor SSH”?

Proteja seu servidor SSH editando sshd_config: desative logins de root e por senha, altere padrões arriscados, restrinja usuários e aplique proteções em camadas para que apenas clientes confiáveis po… 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 4 de 4.

Quanto tempo leva a aula “Protegendo o Servidor SSH”?

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

  1. Compreendendo o Protocolo SSH
  2. Configurando seu Cliente SSH
  3. Autenticação SSH por Chaves
  4. Protegendo o Servidor SSH
← Voltar para Linux Server Deployment & SSH Mastery