Ubuntu 24.04 e 26.04 LTS • Tutorial de autenticação por chave SSH

Como configurar chaves SSH no Ubuntu

Siga este guia passo a passo para configurar a autenticação baseada em chave SSH no seu servidor Ubuntu. Faça login com segurança sem senha e, opcionalmente, desative completamente a autenticação por senha.

Guia de 4 etapas Ubuntu 24.04 e 26.04 LTS Suporte ao vivo 24 horas por dia, 7 dias por semana

Guia passo a passo

Siga cada passo cuidadosamente para configurar a autenticação baseada em chave SSH no seu servidor Ubuntu.

1

Crie o par de chaves RSA.

Execute o seguinte comando em sua máquina local para gerar um par de chaves RSA (as versões atuais do ssh-keygen usam 3072 bits por padrão — use -b 4096 para uma chave mais forte):

 $ ssh-keygen

Quando solicitado o caminho do arquivo, pressione Enter para aceitar o padrão ( ~/.ssh/id_rsa ). Opcionalmente, defina uma senha para uma camada extra de segurança.

Dois arquivos são criados: ~/.ssh/id_rsa (chave privada — mantenha-a em segredo) e ~/.ssh/id_rsa.pub (chave pública — esta deve ser armazenada no servidor).

2

Copie a chave pública para o seu servidor Ubuntu.

Método 1 — ssh-copy-id (recomendado):

 $ ssh-copy-id username@remote_host

Digite sua senha quando solicitado. A chave pública será adicionada ao arquivo ~/.ssh/authorized_keys no servidor.

Método 2 — via pipe SSH:

 cat ~/.ssh/id_rsa.pub | ssh username@remote_host "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Método 3 — manualmente: Exiba sua chave pública com o cat ~/.ssh/id_rsa.pub , e então adicione a saída ao arquivo ~/.ssh/authorized_keys no servidor remoto.

3

Autentique usando chaves SSH.

Teste se a autenticação baseada em chave funciona conectando-se ao seu servidor:

 $ ssh username@remote_host

Se você definiu uma senha na etapa 1, será solicitado que a insira. Caso contrário, o login será iniciado imediatamente, sem qualquer solicitação de senha.

4

Desativar autenticação por senha (opcional)

Após confirmar que o login baseado em chave funciona, você pode desativar a autenticação por senha para proteger o servidor contra ataques de força bruta. Abra o arquivo de configuração do daemon SSH:

 sudo nano /etc/ssh/sshd_config

Localize a linha PasswordAuthentication , remova o comentário se necessário e defina-a como no :

 PasswordAuthentication no

Nas versões atuais do Ubuntu, sshd_config termina com uma linha ` Include /etc/ssh/sshd_config.d/*.conf , e um arquivo nesse diretório pode sobrescrever a configuração que você acabou de definir. Se a sua alteração não surtir efeito, verifique se existe a linha PasswordAuthentication yes em /etc/ssh/sshd_config.d/ e edite-a lá.

Salve o arquivo ( Ctrl+X , depois Y e, em seguida, Enter ) e reinicie o SSH:

 $ sudo systemctl restart ssh

Abra um novo terminal e verifique se ainda consegue conectar-se antes de fechar a sessão atual.

Perguntas frequentes

Perguntas frequentes sobre como configurar a autenticação por chave SSH no Ubuntu.

Qual a diferença entre uma chave pública e uma chave privada?

A chave pública ( id_rsa.pub ) é armazenada nos servidores aos quais você deseja ter acesso — é seguro compartilhá-la. A chave privada ( id_rsa ) permanece em sua máquina local e nunca deve ser compartilhada. As duas chaves funcionam em conjunto para autenticá-lo sem a necessidade de senha.

Devo definir uma senha para minha chave privada?

Sim, o uso de uma senha é altamente recomendável. Ela adiciona uma camada extra de proteção, de forma que, caso seu arquivo de chave privada seja roubado, ele não poderá ser usado sem a senha. Utilize ssh-agent para armazenar a senha em cache, assim você não precisará digitá-la sempre.

O que acontece se eu me bloquear desativando a autenticação por senha?

Se você desativar a autenticação por senha antes de confirmar se sua chave funciona, poderá perder o acesso. Sempre abra um novo terminal e teste o login com sua chave SSH antes de fechar a sessão atual. Se você for bloqueado, precisará de acesso ao console (por exemplo, através do painel web do seu provedor de servidor) para reativar a autenticação por senha.

Quais versões do Ubuntu este guia abrange?

Todos eles. Os passos são os mesmos no Ubuntu 24.04 e 26.04 LTS e em versões mais antigas como 20.04 e 22.04. A única diferença pode ser o nome do serviço SSH — use sudo systemctl restart sshd se ssh não funcionar. Os mesmos comandos também funcionam no Debian, AlmaLinux e Rocky Linux.

Precisa de um servidor para fazer o deploy?

Nossos planos de servidor dedicado incluem acesso root completo, armazenamento SSD e suporte especializado 24 horas por dia, 7 dias por semana, para que você possa começar a usar rapidamente.