Como configurar Autorizado_keys de SSH no Ubuntu

Como configurar Autorizado_keys de SSH no Ubuntu
Shell ssh ou seguro foi projetado para acessar o conteúdo do host remoto para realizar diferentes tipos de tarefas remotamente. SSH não está instalado no Ubuntu por padrão. O SSH pode fornecer acesso criptografado protegido por senha ao sistema remoto após a instalação. O servidor SSH é executado no host remoto e o cliente SSH é executado no sistema que estabelecerá a conexão remota. O Autorizado_keys O arquivo é a parte mais importante da conexão SSH. Ele especifica as chaves usadas para autenticar os usuários permitidos para fazer login no host remoto usando autenticação de chave pública. Os usos deste arquivo para a conexão SSH explicaram neste tutorial.

Pré -requisitos

O servidor SSH não está instalado no Ubuntu por padrão. Você precisa instalar o pacote OpenSSH que funcionará como um servidor SSH antes de iniciar este tutorial. Execute o seguinte comando para instalar o servidor OpenSsh, se ele não estiver instalado no sistema antes.

$ sudo apt install OpenSsh-Server

Gerar uma chave SSH

Gere os pares de chaves ssh para executar os comandos no servidor remoto. Execute o seguinte comando para criar a chave pública e a chave privada. A chave privada será armazenada no servidor remoto e as chaves públicas serão armazenadas no cliente com segurança.

$ ssh -keygen -t rsa

Depois de executar o comando acima, ele perguntará o nome do arquivo onde a chave será armazenada. aperte o Digitar chave para manter o nome do arquivo padrão da chave pública que é id_rsa.bar. Em seguida, ele solicitará que a senha faça login. Novamente, pressione o Digitar Chave duas vezes se você quiser manter a senha vazia. A seguinte saída semelhante aparecerá após gerar as chaves.

Crie o arquivo Autorizado_keys

id_rsa.O arquivo pub contém a chave pública da conexão SSH armazenada no ~//.SSH/ pasta do host remoto. A máquina cliente também exigirá que a chave pública se conecte com o host remoto copiado na próxima parte do tutorial. Você precisa criar o arquivo chamado Autorizado_keys dentro do ~/.pasta ssh do host remoto que conterá a chave pública. Execute o seguinte comando para mover o id_rsa.arquivo de pub para o ~/.arquivo ssh/autorizado_keys.

$ mv ~//.ssh/id_rsa.pub ~//.ssh/autorizado_keys

Nenhum erro aparecerá se o arquivo for movido corretamente, como a seguinte imagem.

Modifique o arquivo de configuração

Você precisa definir alguns parâmetros de configuração na máquina do servidor para fazer a conexão SSH sem senha. Execute o seguinte comando para abrir o arquivo SSHD_CONFIG usando o Nano Editor para definir os valores de parâmetros necessários.

$ sudo nano/etc/ssh/sshd_config

Defina o valor da senha da autenticação para não para desativar a opção de senha de texto para a conexão SSH.

PasswordAuthentication no

Salve e feche o arquivo. Execute o seguinte comando para reiniciar o serviço SSH.

$ sudo systemctl reiniciar ssh

Execute o seguinte comando para definir os bits de permissão do arquivo Authorized_Keys para evitar o acesso não autorizado deste arquivo.

$ chmod 600 ~//.ssh/autorizado_keys

Copie a chave pública na máquina cliente

Agora, faça login na máquina cliente de onde você executará o comando ssh para fazer uma conexão SSH com o host remoto. Aqui, duas contas de usuário do Ubuntu foram usadas para verificar a conexão SSH no servidor local. Uma conta de usuário foi usada como cliente e outra conta de usuário foi usada como servidor neste tutorial.

Execute o seguinte comando para criar uma pasta chamada ~/.ssh na máquina cliente se não existir.

$ mkdir ~/.ssh

Execute o seguinte comando para copiar a chave pública do host remoto para o ~//.pasta ssh do cliente.

$ scp fahmida@fahmida-virtualbox:/home/fahmida/.ssh/id_rsa ~//.ssh/

Você precisa fornecer a senha do nome de usuário do host remoto para copiar a chave pública para a máquina cliente. Você obterá a seguinte saída se o arquivo for copiado corretamente. A máquina cliente agora está pronta para fazer a conexão com a máquina do servidor usando o serviço SSH.

Logon na máquina servidor usando ssh sem senha

Agora, a chave pública existe nas máquinas de clientes e servidores. Quando a máquina cliente envia a solicitação de conexão para a máquina do servidor usando o comando ssh, o servidor corresponde à chave pública do cliente com a chave pública do servidor. Se as correspondências forem encontradas, a conexão será estabelecida do cliente ao servidor. Você pode se conectar ao servidor ou ao host remoto usando o nome do host ou o endereço IP. O servidor local usou este tutorial para mostrar o uso dos Autorizados_keys para estabelecer a conexão SSH da máquina cliente para a máquina do servidor. Uma conta foi usada como uma máquina de servidor onde o servidor OpenSsh está instalado e outra conta foi usada como uma máquina cliente aqui. Execute o seguinte comando da máquina cliente para estabelecer uma conexão com a máquina do servidor.

$ ssh fahmida@fahmida-virtualbox

A saída a seguir aparecerá após a execução do comando acima. A saída mostra que o nome de usuário da máquina cliente é 'simmin.'O nome de usuário da máquina do servidor é' Fahmida.'A conexão SSH foi estabelecida corretamente porque o nome de usuário mudou para' Fahmida 'do' Yesmin.'Agora, o conteúdo da máquina do servidor pode ser acessado facilmente. Se o usuário executar qualquer comando agora, a saída será gerada com base na máquina do servidor.

Conclusão

O uso dos Autorizado_Keys para estabelecer a conexão SSH foi explicado neste tutorial usando o host localizador. Você pode seguir o mesmo processo para fazer a conexão SSH para o host remoto. Você também pode usar o comando ssh-copy-id para fazer uma conexão SSH com o servidor mostrado em outro tutorial.