Skip to content

Como usar autenticação de chave SSH

16 de abril de 2021

Normalmente, ao fazer login em um servidor remoto com SSH, você o faz usando uma combinação de nome de usuário e senha. No entanto, o uso de uma senha é limitado ao comprimento da senha que você pode lembrar ou deseja digitar. Com a autenticação de chave SSH, uma senha criptografada oferece credenciais mais seguras do que as práticas com uma senha padrão. A força criptográfica na autenticação de chave SSH vai além do que uma senha padrão pode corresponder.

Gere sua chave SSH

Abra uma janela de terminal na máquina cliente que você planeja usar para fazer login em seu servidor e, em seguida, emita o comando: ssh-keygen

type = “code”> Em seguida, você será solicitado a inserir um nome de arquivo para sua nova chave. É recomendado que você aceite o padrão (~ / .ssh / id_rsa). Em seguida, selecione e verifique uma frase secreta. Faça com que esta senha seja forte. Quando o comando for concluído, sua chave estará pronta para uso.

Copie sua chave para o servidor

Use SSH para copiar sua chave para o servidor remoto. Emita o comando: ssh-copy-id USER @ SERVER_IP

type = “code”> Onde USER é o nome de usuário e SERVER_IP é o endereço IP do servidor no qual você deseja fazer login. Será solicitada a senha de USUÁRIO. Depois de autenticar com êxito, a chave SSH é copiada e você pode fazer login no servidor da maneira normal. Como o cliente a partir do qual você está se conectando tem a chave correspondente que agora está no servidor, você fará o login. Repita esse processo em cada máquina cliente que precisa fazer o SSH no servidor.

Bloqueie-o

É considerada uma prática recomendada de segurança desabilitar a autenticação de senha em servidores, dependendo apenas da autenticação de chave SSH. Modifique a configuração do daemon SSH de acordo. Abra o arquivo de configuração executando: sudo nano / etc / ssh / sshd_config

type = “code”> Nesse arquivo, procure a linha: #PasswordAuthentication yes

type = “code”> Descomente a linha removendo a hashtag e, em seguida, altere sim para não. Em seguida, procure a linha: #PubkeyAuthentication yes

type = “code”> Descomente essa linha também.

Captura de tela do arquivo sshd_config encontrado no Linux.

Salve e feche o arquivo. Reinicie o daemon SSH com o comando: sudo systemctl restart sshd

type = “code”> Agora, se você tentar fazer o SSH nesse servidor a partir de qualquer cliente que não contenha uma chave SSH correspondente, o acesso será negado.

Onde a chave SSH é armazenada?

Faça logon no servidor para o qual você copiou suas chaves. Emita o comando: less ~ / .ssh / authorized_keys

type = “code”> Você verá todas as chaves enviadas de clientes (usando o ssh-copy-id comando). Para revogar a autenticação de chave SSH de um cliente específico, exclua as linhas que correspondem ao nome do host do cliente (o nome do host é o último bit de informação na chave).

Captura de tela do arquivo authorized_keys encontrado no Linux.