Como usar o SSH-Agent no Ubuntu

Como usar o SSH-Agent no Ubuntu
ssh-agent está configurado para executar o Ubuntu automaticamente. Se não for iniciado no login automaticamente, poderá ser iniciado manualmente pelo comando 'avaliar'. A senha da chave privada ssh pode ser criada manualmente pelo identificador do usuário por ssh-agent. É chamado de agente de autenticação. O SSH-AGENT usa a variável SSH_AUTH_SOCK para autenticação. Se esta variável for definida corretamente, então o ssh-agent funcionará corretamente. Os usos de ssh-agent no Ubuntu para diferentes propósitos foram explicados neste tutorial.

Pré -requisitos:

Antes de iniciar as etapas deste tutorial, as etapas a seguir serão necessárias para concluir.

Ative o serviço SSH no Ubuntu se não estiver ativado antes.

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

Execute o seguinte comando para abrir o sshd_config Arquivo usando o Nano Editor para adicionar algumas configurações necessárias.

$ sudo nano/etc/ssh/sshd_config

Adicione as seguintes linhas no arquivo para ativar o login root e a autenticação baseada em senha.

PasswordAuthentication Sim
Permitrootlogina sim

Execute o seguinte comando para reiniciar o serviço SSH.

$ sudo serviço ssh reinicialização

Sintaxe:

Duas sintaxes diferentes do ssh-agent deram. O significado das opções usadas com este comando é descrito na próxima parte deste tutorial.

ssh-agent [-c | -s] [-dd] [-a bind_address] [-e impressão digital_hash] [-t vida] [comando [arg…]]
ssh-agent [-c | -s] -k

Diferentes opções de ssh-agent:

O comando ssh-agent tem muitas opções. Os usos das opções são fornecidos abaixo.

Opção Propósito
-um bind_address É usado para vincular o soquete do domínio UNIX ao caminho do arquivo fornecido com força em vez de usar o soquete padrão.
-c É usado para gerar os comandos C-shell no stdout. O shell é detectado automaticamente por padrão.
-d É usado para ativar o modo de depuração.
-E impressão digital_hash É usado para definir o algoritmo usado para gerar as principais impressões digitais do SSH. MD5 e SHA256 são os valores válidos.
-k É usado para matar o agente atualmente em execução.
-s É usado para gerar os comandos de shell bourne (/bin/sh) no stdout com força. O shell é detectado automaticamente por padrão.
-t vida É usado para definir o número máximo de segundos usados ​​para manter a identidade do agente. O valor desta opção define em segundos, mas pode ser definido por diferentes sufixos, como M por minutos, H por horas, D por dias e W por semanas. Se essa opção não for usada, o agente manterá as chaves na memória enquanto executar. Este valor será substituído quando o comando ssh-add for executado.

O uso da opção -t foi mostrado aqui. Execute o seguinte comando para manter a identidade dos agentes por 60 segundos.

$ ssh -agent -t 60

A saída a seguir será apareceu após a execução do comando acima.

Usando o comando ssh-agente para autenticação não interativa:

Execute o seguinte comando da máquina do servidor para iniciar o ssh-agente para autenticação não interativa.

$ EVAL $ (SSH-AGENT)

A saída a seguir será apareceu após a execução do comando acima. ssh-agent está funcionando agora. Aqui, o nome de usuário da máquina do servidor é 'Fahmida.'

Use ssh-add para adicionar a senha de chave privada ao ssh-agent:

o ssh-add O comando exigirá o fornecimento da senha para as chaves privadas ssh. Agora, faça login na máquina cliente e execute o ssh-add comando do terminal.

$ ssh-add

Depois de adicionar a chave privada ao SSH-Agent, diferentes tipos de comandos SSH, como SCP, SFTP, SSH, etc., pode ser executado a partir da máquina cliente.

Copie o arquivo do cliente para o servidor:

O SCP comando para copiar o arquivo do cliente para o servidor e ssh O comando para se conectar com o servidor para verificar o arquivo é copiado ou não é mostrado nesta parte do tutorial. Crie um arquivo de texto chamado TestFile.TXT com o seguinte conteúdo.

TestFile.TXT

É um arquivo de teste criado na máquina cliente.

Execute o seguinte comando para verificar o conteúdo do TestFile.TXT arquivo antes de executar o 'SCP' comando.

$ CAT TestFile.TXT

A saída a seguir será apareceu após a execução do comando acima.

Execute o seguinte comando para copiar o TestFile.TXT arquivo da máquina cliente para o Documentos Pasta da máquina do servidor.

$ scp testfile.txt fahmida@fahmida-virtualbox: ~/documents/

A saída a seguir será exibida após a execução do comando acima se o arquivo for copiado com sucesso para o local do servidor. Aqui, o nome de usuário da máquina do servidor é 'Fahmida,' e o nome de usuário da máquina cliente é 'Yasmin.

Execute o seguinte comando para estabelecer uma conexão com o servidor usando ssh comando.

$ ssh fahmida@fahmida-virtualbox

Execute o seguinte comando para ir para o Documentos Pasta da máquina do servidor para verificar se o arquivo de texto foi copiado aqui ou não.

$ CD documentos

Execute o seguinte comando para verificar a lista dos arquivos e pastas do Documentos pasta.

$ ls
[[

A saída a seguir mostra que o arquivo de texto existe no Documentos Pasta da máquina do servidor.

Agora, execute o seguinte comando para verificar o conteúdo do arquivo de testes.Arquivo TXT da máquina do servidor.

$ CAT TestFile.TXT

A saída a seguir mostra que o conteúdo do arquivo de testes.txt da máquina do servidor é o mesmo que o conteúdo do arquivo de texto.txt da máquina cliente.

Remova todas as chaves privadas do SSH-Agent em cache:

Execute o seguinte comando ssh-add com a opção -d para remover todas as teclas privadas do ssh-agent em cache.

$ ssh -add -d

A saída a seguir será apareceu após a execução do comando acima.

Conclusão:

Usando ssh-agent é uma maneira de se conectar com a máquina remota da máquina cliente para realizar tarefas diferentes. Qualquer arquivo pode ser copiado da máquina cliente para a máquina do servidor executando um agente SSH mostrado neste tutorial para ajudar o leitor a saber o uso deste comando.