Android

Como configurar chaves ssh no centos 7

Como configurar Chave PÚBLICA e Chave PRIVADA no SSH | LPIC-1

Como configurar Chave PÚBLICA e Chave PRIVADA no SSH | LPIC-1

Índice:

Anonim

Secure Shell (SSH) é um protocolo de rede criptográfico projetado para uma conexão segura entre um cliente e um servidor.

Os dois mecanismos de autenticação SSH mais populares são autenticação baseada em senha e autenticação baseada em chave pública. O uso de chaves SSH geralmente é mais seguro e conveniente do que a autenticação de senha tradicional.

Este tutorial explica como gerar chaves SSH nos sistemas CentOS 7. Também mostraremos como configurar uma autenticação baseada em chave SSH e conectar-se aos servidores Linux remotos sem inserir uma senha.

Criando chaves SSH no CentOS

Antes de gerar um novo par de chaves SSH, é uma boa ideia verificar as chaves SSH existentes na máquina do cliente CentOS.

Para fazer isso, execute o seguinte comando ls que lista todas as chaves públicas, se houver alguma:

ls -l ~/.ssh/id_*.pub

Se a saída do comando retornar algo como No such file or directory ou no matches found , significa que você não possui chaves SSH em sua máquina cliente e poderá prosseguir com a próxima etapa e gerar o par de chaves SSH.

Se houver chaves existentes, você poderá usá-las e pular a próxima etapa ou fazer backup das chaves antigas e gerar novas.

Comece gerando um novo par de chaves SSH de 4096 bits com o seu endereço de email como um comentário:

ssh-keygen -t rsa -b 4096 -C "[email protected]"

Você será solicitado a especificar o nome do arquivo:

Enter file in which to save the key (/home/yourusername/.ssh/id_rsa):

Pressione Enter para aceitar o local e o nome do arquivo padrão.

Em seguida, você será solicitado a digitar uma senha segura. Se você deseja usar a senha, é com você. Se você optar por usar a senha, obterá uma camada extra de segurança.

Enter passphrase (empty for no passphrase):

Toda a interação é assim:

Para verificar se seu novo par de chaves SSH é gerado, digite:

ls ~/.ssh/id_*

/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub

Copie a chave pública para o servidor CentOS

Agora que o par de chaves SSH é gerado, a próxima etapa é copiar a chave pública no servidor que você deseja gerenciar.

A maneira mais fácil e recomendada de copiar a chave pública para o servidor remoto é usando um utilitário chamado ssh-copy-id . No terminal da sua máquina local, digite:

ssh-copy-id remote_username@server_ip_address

Você será solicitado a digitar a senha remote_username :

remote_username@server_ip_address's password:

Digite a senha e, assim que o usuário for autenticado, a chave pública ~/.ssh/id_rsa.pub será anexada ao arquivo do usuário remoto ~/.ssh/authorized_keys . A conexão será fechada.

Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@server_ip_address'" and check to make sure that only the key(s) you wanted were added.

Se o utilitário ssh-copy-id não estiver disponível no seu computador local, use o seguinte comando para copiar a chave pública:

cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

Entre no seu servidor usando chaves SSH

Após concluir as etapas acima, você poderá fazer login no servidor remoto sem ser solicitada uma senha.

Para verificar, tente fazer login no seu servidor via SSH:

ssh remote_username@server_ip_address

Desabilitando a autenticação de senha SSH

Para adicionar uma camada adicional de segurança ao seu servidor remoto, você pode desativar a autenticação de senha SSH.

Antes de continuar, verifique se você pode efetuar login no servidor sem uma senha como usuário com privilégios sudo.

Siga as etapas abaixo para desativar a autenticação de senha SSH:

  1. Faça login no seu servidor remoto:

    ssh sudo_user@server_ip_address

    Abra o arquivo de configuração SSH /etc/ssh/sshd_config com seu editor de texto:

    sudo nano /etc/ssh/sshd_config

    Procure as seguintes diretivas e modifique-as da seguinte maneira:

    / etc / ssh / sshd_config

    PasswordAuthentication no ChallengeResponseAuthentication no UsePAM no

    Quando terminar, salve o arquivo e reinicie o serviço SSH digitando:

    sudo systemctl restart ssh

Neste ponto, a autenticação baseada em senha está desabilitada.

Conclusão

Neste tutorial, você aprendeu como gerar um novo par de chaves SSH e configurar uma autenticação baseada em chave SSH. Você pode adicionar a mesma chave a vários servidores remotos.

Também mostramos como desativar a autenticação de senha SSH e adicionar uma camada adicional de segurança ao seu servidor.

Por padrão, o SSH escuta na porta 22. Alterar a porta SSH padrão reduz o risco de ataques automatizados.

centos ssh security