Servidor

Como configurar o login SSH sem senha no Linux

Como configurar o login SSH sem senha no Linux

Secure Shell ou SSH é um protocolo de rede de código aberto bem conhecido. O protocolo é usado para fazer o login em outras máquinas remotamente. Portanto, seria fácil executar vários comandos e iniciar qualquer aplicativo no dispositivo remoto sem problemas, sem a necessidade de estar perto da máquina remota.  Além disso, o protocolo SSH é muito confiável e seguro. Os usuários sempre dependem do protocolo SSH para copiar arquivos entre dois dispositivos diferentes.

Geralmente, para estabelecer uma conexão SSH com a máquina remota, você precisa inserir o nome de usuário e a senha da máquina remota. Mas e se você precisar de um método mais seguro do que usar o nome de usuário e a senha em cada login? Isso pode ser feito usando uma chave SSH gerada a partir da máquina do cliente e, em seguida, copiada para a máquina remota. Com pequenas configurações extras, você será capaz de fazer o login com segurança na máquina remota sem usar um nome de usuário e senha todas as vezes. Usar uma chave SSH em vez de usar o nome de usuário e senha em cada login é muito mais seguro; apenas a máquina que contém a chave SSH certa pode fazer login rapidamente.

Hoje vamos mostrar como estabelecer uma conexão SSH sem a necessidade de digitar a senha da máquina remota. Normalmente, o uso de um login sem senha pode ser usado para transferir arquivos entre várias máquinas rapidamente. Mas antes de começar nosso tutorial, vamos dar uma olhada em nosso ambiente.

Preparação do Ambiente

Seria melhor se você tivesse duas máquinas, o cliente e as máquinas remotas. Quase todo o trabalho será feito a partir da máquina cliente que será usada para se conectar ao dispositivo remoto. Ambos os dispositivos são Ubuntu com os seguintes IPs

Mais uma coisa antes de começar, certifique-se de que ambas as máquinas estejam atualizadas usando os seguintes comandos:

sudo apt update sudo apt upgrade

Agora vamos começar nosso guia.

Configurando o login SSH sem senha

Passo 1. Na máquina cliente, certifique-se de que haja uma chave SSH gerada antes de usar o próximo comando.

ls -al ~ /.ssh / id_ *.bar

Na máquina cliente, verifique as chaves SSH existentes

Como você pode notar, se você não gerou uma chave SSH anteriormente, receberá a mensagem "Nenhum arquivo ou diretório". Caso contrário, você obterá rapidamente as chaves disponíveis, caso existam.

Passo 2. Como você não gerou chaves SSH anteriormente, é hora de gerar uma nova chave SSH usando o seguinte comando:

ssh-keygen -t rsa -b 4096

Da máquina cliente, gerar SSH

Normalmente, o comando anterior irá gerar novas duas chaves SSH em dois arquivos diferentes. Ambos os arquivos são armazenados em um diretório oculto chamado “.ssh ”no diretório inicial do usuário atual. Você pode encontrar uma chave privada armazenada em um arquivo chamado id_dsa e outra chave pública em um arquivo chamado id_dsa.bar. Além disso, será solicitado que você adicione uma senha que é usada para proteger as chaves geradas e você pode usá-la enquanto se conecta via SSH. Mas você pode pressionar o botão “Entrar”Botão para não usar um.

etapa 3. Agora você pode listar o conteúdo do .diretório ssh para garantir que ambas as chaves sejam criadas.

ls -l / home / tuts /.ssh /

Na máquina cliente, verifique se as duas chaves foram criadas

Passo 4. Além disso, você pode certificar-se de que o arquivo contém uma chave usando o seguinte comando:

ssh-keygen -lv

Da impressão digital da tela da máquina do cliente

Etapa 5. Para visualizar o conteúdo do arquivo de chave pública.

gato .ssh / id_rsa.bar

Da máquina cliente Exibir conteúdo do arquivo de chave SSH

Etapa 6. Agora, da máquina remota, certifique-se de ter SSH instalado. Se não estiver instalado, você pode usar o seguinte comando.

sudo apt install ssh

Da máquina remota, instale o pacote SSH

Etapa 7. De volta à máquina cliente, conecte-se à máquina remota e crie um novo diretório chamado .ssh.

sudo ssh remote_machine_username @ remote_machine_IP mkdir -p .ssh

Certifique-se de substituir o remote_machine_username pelo nome de usuário real e o remote_machine_IP pelo IP remoto.

Da Máquina Cliente Criar Diretório na Máquina Remota

Etapa 8. A seguir, vamos copiar da máquina cliente a chave SSH pública gerada anteriormente para a máquina remota. Ajudaria se você colasse a chave pública em um arquivo chamado “Chaves_Autorizadas”. É altamente recomendável não alterar o nome do arquivo porque, quando você for estabelecer uma conexão SSH, o primeiro arquivo que o sistema operacional verificará é o “Chaves_Autorizadas” Arquivo. Se o sistema não encontrou o arquivo, será solicitado que você insira um nome de usuário e uma senha para poder fazer o login na máquina remota.

gato sudo .ssh / id_rsa.pub | ssh remote_machine_username @ remote_machine_IP 'cat >> .ssh / authorized_keys '

Da máquina cliente Copie a chave SSH para a máquina remota

Etapa 9. Da máquina remota, certifique-se de que a chave pública foi copiada com sucesso com o nome authorized_keys.

ls .ssh / cat .ssh / authorized_keys

Da máquina remota, verifique o arquivo de chave SSH copiado com sucesso

Etapa 10. Agora, da máquina cliente, vamos tentar estabelecer uma conexão SSH sem um nome de usuário e senha.

ssh remote_machine_username @ remote_machine_IP

Da máquina cliente, conecte-se à máquina remota

Como você pode notar, não será solicitado que você insira um nome de usuário nem uma senha.

Desativar autenticação por senha

Para desabilitar a autenticação de senha usando a chave pública, primeiro você precisa editar o arquivo de configuração SSH da máquina remota e desabilitar a opção de autenticação de senha. Abaixo estão as etapas para fazer isso.

Passo 1. Na máquina remota, abra o arquivo de configuração ssh usando seu editor favorito.

vi / etc / ssh / sshd_config

Na máquina remota, abra o arquivo de configuração SSH

Passo 2. Role até o final do arquivo de configuração SSH e adicione as próximas linhas para desativar a autenticação de senha:

RSAAuthentication sim PubkeyAuthentication sim PasswordAuthentication não UsePAM não ChallengeResponseAuthentication não

Da Máquina Remota Editar Arquivo de Configuração SSH

etapa 3. Salve e saia do seu arquivo.

Passo 4. Por fim, reinicie o serviço SSH e tente estabelecer uma nova conexão da máquina cliente para a máquina remota novamente.

A partir da máquina remota, reinicie o serviço SSH

É isso! Você acabou de aprender como estabelecer uma conexão SSH sem senha. Espero que você tenha gostado.

Como alterar o ponteiro do mouse e tamanho do cursor, cor e esquema no Windows 10
O ponteiro do mouse e o cursor no Windows 10 são aspectos muito importantes do sistema operacional. Isso também pode ser dito para outros sistemas ope...
Mecanismos de jogos gratuitos e de código aberto para o desenvolvimento de jogos Linux
Este artigo cobrirá uma lista de mecanismos de jogo gratuitos e de código aberto que podem ser usados ​​para desenvolver jogos 2D e 3D no Linux. Exist...
Tutorial de Shadow of the Tomb Raider para Linux
Shadow of the Tomb Raider é a décima segunda adição à série Tomb Raider - uma franquia de jogos de ação e aventura criada pela Eidos Montreal. O jogo ...