Introdução
A segurança no acesso remoto a servidores é uma prioridade para qualquer administrador de sistemas ou profissional de TI. Um dos métodos mais seguros para autenticar conexões SSH é utilizando chaves públicas e chaves privadas. Se você está buscando aprender como configurar o acesso SSH com chave pública, este artigo traz um guia prático e detalhado para você aplicar em seus servidores Linux, como Oracle Linux, RHEL, CentOS, Ubuntu, entre outros.
Neste tutorial, vamos abordar a geração da chave pública, a cópia para o servidor remoto e a validação do acesso seguro, sem a necessidade de senha. Siga o passo a passo abaixo para aumentar a segurança e praticidade do seu ambiente de trabalho.
O que é Acesso SSH com Chave Pública?
O método de acesso SSH com chave pública funciona com um par de chaves criptográficas: uma chave privada (que fica no seu computador local) e uma chave pública (que é colocada no servidor remoto). Quando a autenticação é realizada, o servidor usa a chave pública para validar a chave privada do cliente. Isso elimina a necessidade de senha e dificulta ataques de força bruta.
1. Gerando a Chave Pública no Servidor de Origem
O primeiro passo para configurar o acesso SSH com chave pública é gerar o par de chaves no dispositivo que fará a conexão. Execute o comando:
ssh-keygen -t rsa
Durante a execução, o sistema solicitará alguns prompts, como o local para salvar o arquivo e a criação de uma passphrase (senha). Você pode apenas pressionar Enter para aceitar os padrões e criar a chave sem senha.
A saída será semelhante a:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/usuario/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Your identification has been saved in /home/usuario/.ssh/id_rsa
Your public key has been saved in /home/usuario/.ssh/id_rsa.pub
O arquivo id_rsa é a chave privada (nunca compartilhe!) e o id_rsa.pub é a chave pública.
2. Copiando a Chave Pública para o Servidor de Destino
Agora que sua chave foi criada, o próximo passo para configurar o acesso SSH com chave pública é enviá-la para o servidor de destino. Para isso, use o comando:
ssh-copy-id -i ~/.ssh/id_rsa.pub usuario@servidor_destino
Você precisará informar a senha do usuário remoto nesta primeira conexão. Caso o usuário remoto não tenha senha definida, será necessário fazer a configuração manual, conforme veremos a seguir.
3. Configuração Manual da Chave Pública
Se o método automático falhar ou se você preferir fazer manualmente, siga estes passos:
- Acesse o servidor remoto via SSH:
ssh usuario@servidor_destino
- Mude para o usuário desejado (se necessário):
su - nome_do_usuario
- Crie o diretório
.ssh
(caso não exista):
mkdir -p ~/.ssh
- Edite (ou crie) o arquivo authorized_keys:
vi ~/.ssh/authorized_keys
- Cole o conteúdo do seu arquivo local id_rsa.pub dentro do authorized_keys no servidor remoto. Salve e feche o arquivo.
- Ajuste as permissões corretas:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Essas permissões são importantes para o SSH funcionar corretamente.
4. Testando o Acesso SSH com Chave Pública
Com tudo configurado, agora é hora de testar! No seu terminal, execute:
ssh usuario@servidor_destino
Se tudo estiver correto, você será conectado sem que o sistema solicite a senha.
Benefícios do Acesso SSH com Chave Pública
Optar por configurar o acesso SSH com chave pública traz diversos benefícios:
- Segurança reforçada: evita o uso de senhas simples ou vulneráveis.
- Automação: facilita scripts e operações automáticas que exigem login.
- Praticidade: elimina a necessidade de digitar senha a cada conexão.
- Compatibilidade: funciona em praticamente todos os sistemas Unix/Linux modernos.
Considerações Finais
O acesso SSH com chave pública é uma prática recomendada para qualquer ambiente que preze pela segurança e eficiência. Apesar de envolver alguns passos de configuração inicial, o ganho em praticidade e proteção é enorme. Em ambientes corporativos, o uso de chaves SSH é praticamente obrigatório para reduzir os riscos de invasões e perdas de dados.
Se você trabalha com servidores, redes, ou simplesmente quer acessar seus sistemas de forma mais segura, investir na configuração de acesso SSH com chave pública é essencial.
Referências:
Caso tenha alguma dúvida a respeito deste tópico sinta-se à vontade para entrar em contato